diff --git a/.github/workflows/dispatch_pull.yml b/.github/workflows/dispatch_pull.yml new file mode 100644 index 00000000..a02eb483 --- /dev/null +++ b/.github/workflows/dispatch_pull.yml @@ -0,0 +1,20 @@ +name: Dispatch Pull request +run-name: ${{ github.actor }} dispatching presubmit +on: + pull_request: + paths: + - 'src/**' + - '.github/**' + +permissions: + contents: write + packages: read + +jobs: + generate_all: + uses: ./.github/workflows/generate_all.yml + with: + html: true + epub: true + pdf: true + release: false \ No newline at end of file diff --git a/.github/workflows/generate_all.yml b/.github/workflows/generate_all.yml new file mode 100644 index 00000000..96a6d550 --- /dev/null +++ b/.github/workflows/generate_all.yml @@ -0,0 +1,175 @@ +name: Generate Songbook Artifacts +run-name: ${{ github.actor }} is generating artifacts +on: + workflow_dispatch: + inputs: + epub: + description: 'Generate epub' + required: false + type: boolean + default: true + pdf: + description: 'Generate pdf' + required: false + type: boolean + default: true + html: + description: 'Generate htmls' + required: false + type: boolean + default: true + release: + description: 'Create release' + required: false + type: boolean + default: true + workflow_call: + inputs: + epub: + description: 'Generate epub' + required: false + type: boolean + default: true + pdf: + description: 'Generate pdf' + required: false + type: boolean + default: true + html: + description: 'Generate htmls' + required: false + type: boolean + default: true + release: + description: 'Create release' + required: false + type: boolean + default: true + +permissions: + contents: write + packages: read + +jobs: + generate-artifacts: + runs-on: ubuntu-latest + container: + image: ghcr.io/spiewaj/github-latex-worker:latest + credentials: + username: ${{ github.actor }} + password: ${{ secrets.github_token }} + volumes: + - ${{ github.workspace }}:/workspace + steps: + - run: export TZ="Europe/Warsaw" + - run: echo "release_name=$(date +'%Y-%m-%dT%H-%M-%S')" >> $GITHUB_ENV + - if: ${{ inputs.pdf }} + run: echo "Generating a songbook PDF triggered by ${{ github.event_name }} release:${{ env.release_name }}" + - if: ${{ inputs.epub }} + run: echo "Generating a songbook EPUB triggered by ${{ github.event_name }} release:${{ env.release_name }}" + - if: ${{ inputs.html }} + run: echo "Generating a ZIP with songs in html triggered by ${{ github.event_name }} release:${{ env.release_name }}" + - name: Check out repository code + uses: actions/checkout@v4 + - if: ${{ inputs.pdf }} + run: | + cd /workspace && ./render_pdfs.sh + - name: Upload PDFs + if: ${{ inputs.pdf }} + uses: actions/upload-artifact@v4 + with: + name: songbooks_pdfs + path: /workspace/build/songs_tex/*.pdf + + - name: Create Release + id: create_release + if: ${{ inputs.release }} + uses: actions/create-release@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + tag_name: ${{ github.ref }} + release_name: ${{ env.release_name }} + draft: true + prerelease: true + - name: Upload PDF_A4 to release + if: ${{ inputs.pdf && inputs.release }} + id: upload-release-asset_pdf_a4 + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps + asset_path: /workspace/build/songbook_${{ env.release_name }}_a4.pdf + asset_name: songbook_${{ env.release_name }}_a4.pdf + asset_content_type: application/pdf + - name: Upload PDF_A5 to release + if: ${{ inputs.pdf && inputs.release }} + id: upload-release-asset_pdf_a5 + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} + asset_path: /workspace/build/songbook_${{ env.release_name }}_a5.pdf + asset_name: songbook_${{ env.release_name }}_a5.pdf + asset_content_type: application/pdf + + #generating epub from here + + + - if: ${{ inputs.epub }} + run: cd /workspace && ./render_epubs.sh + + - name: Upload EPUBs + if: ${{ inputs.epub }} + uses: actions/upload-artifact@v4 + with: + name: songbooks_epub + overwrite: true + path: /workspace/build/*.epub + + + - name: Upload epub to release + if: ${{ inputs.epub && inputs.release }} + id: upload-release-asset_epub + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps + asset_path: /workspace/build/songbook_${{ env.release_name }}.epub + asset_name: songbook_${{ env.release_name }}.epub + asset_content_type: application/epub+zip + + + - if: ${{ inputs.html }} + run: cd /workspace && chmod 755 ./render_htmls.sh && ./render_htmls.sh + - if: ${{ inputs.html }} + run: mv /workspace/build/songs_html.zip /workspace/build/songs_html_${{ env.release_name }}.zip + + + - name: Upload HTMLs + if: ${{ inputs.html }} + uses: actions/upload-artifact@v4 + with: + name: songbooks_htmls + path: | + /workspace/build/*.zip + /workspace/build/index.xhtml + + + - name: Upload htmls to release + if: ${{ inputs.html && inputs.release }} + id: upload-release-asset_htmls + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ steps.create_release.outputs.upload_url }} # This pulls from the CREATE RELEASE step above, referencing it's ID to get its outputs object, which include a `upload_url`. See this blog post for more info: https://jasonet.co/posts/new-features-of-github-actions/#passing-data-to-future-steps + asset_path: /workspace/build/songs_html_${{ env.release_name }}.zip + asset_name: songbook_${{ env.release_name }}.zip + asset_content_type: application/zip + + + - run: echo "DONE" diff --git a/.github/workflows/generate_changed_pdf.yml b/.github/workflows/generate_changed_pdf.yml new file mode 100644 index 00000000..d3a8b98d --- /dev/null +++ b/.github/workflows/generate_changed_pdf.yml @@ -0,0 +1,74 @@ +name: Generate Song Artifact on Push +run-name: Generating song +on: + pull_request: + paths: + - '**.xml' +permissions: read-all +jobs: + Generate-artifacts: + runs-on: ubuntu-latest + container: + image: ghcr.io/spiewaj/github-latex-worker:latest + credentials: + username: ${{ github.actor }} + password: ${{ secrets.github_token }} + volumes: + - ${{ github.workspace }}:/workspace + steps: + - run: echo "release_name=$(date +'%Y-%m-%dT%H_%M_%S')" >> $GITHUB_ENV + - run: echo "Generating a songbook PDF triggered by ${{ github.event_name }} release:${{ env.release_name }}" + - name: Check out repository code + uses: actions/checkout@v4 + - name: Get changed files + id: changed-xml-files + uses: tj-actions/changed-files@v44.5.4 + with: + fetch_depth: 500 + files: | + songs/**/*.xml + - name: Generate PDFs + if: steps.changed-xml-files.outputs.any_changed == 'true' + env: + SRC_FILES: ${{ steps.changed-xml-files.outputs.all_changed_files }} + shell: bash + # For support of spaces in file-names, we would need to go for json / jq processing. + run: | + FILES=() + for file in ${SRC_FILES}; do + echo "$file was changed" + FILES+=("${file}") + done + + chmod 755 ./render_pdf.sh + cd /workspace && ./render_pdf.sh single a4 "$(date +'%Y-%m-%d')" "${FILES[@]}" + mv /workspace/build/songs_tex/output.pdf /workspace/build/songs_tex/a4.pdf + cd /workspace && ./render_pdf.sh single a5 "$(date +'%Y-%m-%d')" "${FILES[@]}" + mv /workspace/build/songs_tex/output.pdf /workspace/build/songs_tex/a5.pdf + - name: Save artifact + if: steps.changed-xml-files.outputs.any_changed == 'true' + uses: actions/upload-artifact@v4 + with: + name: songbooks_pdf + path: /workspace/build/songs_tex/*.pdf + + - name: Upload artifacts + if: steps.changed-xml-files.outputs.any_changed == 'true' + run: | + for format in "a4" "a5"; do + FILENAME=$(echo "workspace/${{github.sha}}_${format}.pdf" | sed 's|/|%2F|g' ) + LINK="https://firebasestorage.googleapis.com/v0/b/wdw-21.appspot.com/o/${FILENAME}" + echo "link_${format}=${LINK}" >> $GITHUB_ENV + curl -v --data-binary "@/workspace/build/songs_tex/${format}.pdf" "${LINK}" -H 'Content-Type: application/pdf' + done + + - name: Comment PR proxy + uses: mshick/add-pr-comment@v2 + if: steps.changed-xml-files.outputs.any_changed == 'true' + with: + message: | + New PDFs [A4](${{ env.link_a4 }}?alt=media), [A5](${{ env.link_a5 }}?alt=media) is ready, my lord (available for ~14 days). + + Cieplutkie PDFy [A4](${{ env.link_a4 }}?alt=media), [A5](${{ env.link_a5 }}?alt=media) podano. + proxy-url: https://editor-github-pr-proxy-2tnk3uvmqq-ey.a.run.app + - run: echo "DONE" diff --git a/.github/workflows/publish_page.yml b/.github/workflows/publish_page.yml new file mode 100644 index 00000000..2d910f66 --- /dev/null +++ b/.github/workflows/publish_page.yml @@ -0,0 +1,78 @@ +# Simple workflow for deploying static content to GitHub Pages +name: Deploy static content to Pages + +on: + # Runs on pushes targeting the default branch + push: + branches: ["main"] + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages +permissions: + contents: write # If generate workload would not perform a 'release' by default, the read permission would be sufficient. + pages: write + packages: read + id-token: write + +# Allow one concurrent deployment +concurrency: + group: "pages" + cancel-in-progress: true + +jobs: + generate: + uses: ./.github/workflows/generate_all.yml + with: + html: true + epub: true + pdf: true + release: false + # Single deploy job since we're just deploying + deploy: + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + runs-on: ubuntu-latest + needs: generate + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Setup Pages + uses: actions/configure-pages@v5 + + - name: Download generated songbook artifacts (pdfs) + uses: actions/download-artifact@v4 + with: + name: songbooks_pdfs + path: _generated + - name: Download generated songbook artifacts (epub) + uses: actions/download-artifact@v4 + with: + name: songbooks_epub + path: _generated + - name: Download generated songbook artifacts (htmls) + uses: actions/download-artifact@v4 + with: + name: songbooks_htmls + path: _generated + - name: Prepare _site + run: | + mkdir -p _site/songs_html _site/songs_tex + unzip -o _generated/*.zip -d _site + mv _generated/index.xhtml _site/index.xhtml + mv _generated/*.pdf _site/songs_tex + mv _generated/*.epub _site/ + cp -R editor _site/ + ls -la _site/ + + - name: Upload artifact for pages + uses: actions/upload-pages-artifact@v3 + with: + # Upload entire repository + path: '_site' + + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..7b5a5d53 --- /dev/null +++ b/.gitignore @@ -0,0 +1,10 @@ +build/ +npmtmp/ +._* +.DS_Store +.idea/ +*.epub +__pycache__/ +node_modules/ +*-download +.secrets diff --git a/INSTALL b/INSTALL new file mode 100644 index 00000000..6fb658bd --- /dev/null +++ b/INSTALL @@ -0,0 +1,42 @@ +installing on OSX: + +# Also see 'prepare_context.sh' for configuration of python environment. + + brew install pkg-config icu4c python-build epubcheck pyyaml + + +Install mactex: https://www.tug.org/mactex/mactex-download.html + + sudo tlmgr update --self + sudo tlmgr install ucs + sudo tlmgr install polski xstring pbox varwidth ec qrcode helvetic + + +# +mktextfm ecssdc10 +mktexpk --mfmode / --bdpi 600 --mag 0+420/600 --dpi 420 ecssdc10 +mktexpk --mfmode / --bdpi 600 --mag 0+540/600 --dpi 540 ecssdc10 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecrm0900 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecbx0900 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecbx1728 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecrm1728 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecrm1000 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecrm1200 +mktexpk --mfmode / --bdpi 600 --mag 0+480/600 --dpi 480 ecssdc10 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecbx1000 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecrm1095 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ectt2488 + +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ectt3583 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ectt1728 + + +installing on Linux: + + sudo apt-get install python3-lxml + pip3 install -r requirements.txt + + pip uninstall pyicu + pip install --no-binary=:pyicu: pyicu + + sudo apt-get install texlive texlive-latex-extra texlive-lang-polish diff --git a/README b/README deleted file mode 100644 index b1ced82a..00000000 --- a/README +++ /dev/null @@ -1,3 +0,0 @@ -Running the render script requires: -1) a python environment with dependencies listed in requirements.txt -2) a pdflatex compiler with ucs, extsizes, and Polish localization support diff --git a/README.md b/README.md new file mode 100644 index 00000000..a5d1fa08 --- /dev/null +++ b/README.md @@ -0,0 +1,33 @@ +### Recent generated artifacts: + Generated artifacts are auto-published (post-commit on) https://spiewaj.com. + You can also check the latest release: https://github.com/spiewaj/songbook/releases/latest. +# About + +This project contains: + - [songs](./songs) (in XML format) + - tools to generate PDFs, EPUBs and HTMLs out of this songs + - [web editor](./editor) to enable easy edits of the songs and [github-integration](./editor-github) + - [web editor](./editor) to enable easy edits of the songs and [github-integration](./editor-github) +# Songs + +Currently the songs are hosted in the [./songs](./songs) directory. +They are mostly Polish scouting and tourists songs. If the set growths, we will organize it into language specific directories. +The XML format is pretty well self-describing. + +# Editing of the songs + +To reduce the friction when working with git/github and XML format we provide a [graphical editor](https://spiewaj.com/editor) and (github-integration https://spiewaj.com/editor/] to make the songs editing as smooth as possible. +The changes you will make can be easily published for review and added to this repository. + +# Generating PDF songbooks + +The songs can be converted to a PDF songbook. We use LaTeX for this. +You can [download a ready PDF]( https://github.com/spiewaj/songbook/releases/latest) or generate it yourself. + +Running the render script requires: +1) a python environment with dependencies listed in requirements.txt +2) a pdflatex compiler with ucs, extsizes, and Polish localization support + +# Generating EPUBs songbooks +You can run `./render_epub.sh`. +You can download recent generated EPUB from here: [spiewnik.epub]( https://github.com//songbook/releases/latest). diff --git a/TODO b/TODO index c77ae5a4..160c3adb 100644 --- a/TODO +++ b/TODO @@ -1 +1,6 @@ -- tabulatury (tabbs) ++ Support for multiple chords one after another ++ Full support for undo/redo functionality. ++ Adding chord and 'verse' as a buttons ++ Automatic sanitization of space-separated chords into multiple chords. +- Automatic transpositions ? +- Improving estetics. diff --git a/_site/index.js b/_site/index.js new file mode 100644 index 00000000..73b06e8b --- /dev/null +++ b/_site/index.js @@ -0,0 +1,37 @@ +function edit(file) { + let d = document.createElement('form'); + d.setAttribute("action", "https://ghe.spiewaj.com/users/me/changes:new") + d.setAttribute("method", "post") + let i = document.createElement("input") + i.setAttribute("type", "hidden") + i.setAttribute("name", "file") + i.setAttribute("value", file) + d.appendChild(i); + + document.body.appendChild(d); + d.submit(); +} +function filterSongs() { + // 1. Get references to the input and the list + const input = document.getElementById('songSearch'); + const filter = input.value.toUpperCase(); + const ul = document.getElementById('songs'); + const li = ul.getElementsByTagName('li'); + + // 2. Loop through all list items + for (let i = 0; i < li.length; i++) { + // 3. Find the link (a) inside the list item + const a = li[i].getElementsByTagName("a")[0]; + if (a) { + // 4. Get the text content of the link + const txtValue = a.textContent || a.innerText; + + // 5. Check if the song title includes the filter text + if (txtValue.toUpperCase().indexOf(filter) > -1) { + li[i].style.display = ""; // Show the list item + } else { + li[i].style.display = "none"; // Hide the list item + } + } + } +} \ No newline at end of file diff --git a/_site/index.xhtml b/_site/index.xhtml new file mode 100644 index 00000000..7da116f5 --- /dev/null +++ b/_site/index.xhtml @@ -0,0 +1,11 @@ + + + + Śpiewnik + + + + +Powinieś zostać przeniesiony tutaja. + + diff --git a/_site/song.xsd b/_site/song.xsd new file mode 100644 index 00000000..eb5eacbc --- /dev/null +++ b/_site/song.xsd @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build/.gitignore b/build/.gitignore deleted file mode 100644 index d6b7ef32..00000000 --- a/build/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -* -!.gitignore diff --git a/calibre_convert.sh b/calibre_convert.sh new file mode 100644 index 00000000..2995d334 --- /dev/null +++ b/calibre_convert.sh @@ -0,0 +1,7 @@ +# Examplar conversions using calibre. +# As sometimes upload from epub does not work directly, it seems that conversion epub->epub works. + +/Applications/calibre.app/Contents/MacOS/ebook-convert ./build/spiewnik.epub ./build/spiewnika.azw3 +/Applications/calibre.app/Contents/MacOS/ebook-convert ./build/spiewnik.epub ./build/spiewnik2.epub --epub-version=3 +/Applications/calibre.app/Contents/MacOS/ebook-convert ./build/spiewnika.azw3 ./build/spiewnika3.epub + diff --git a/containers/Dockerfile b/containers/Dockerfile new file mode 100644 index 00000000..394d1be8 --- /dev/null +++ b/containers/Dockerfile @@ -0,0 +1,9 @@ +FROM ubuntu +WORKDIR /app +ENV TZ=Europe/Warsaw +RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone +RUN apt-get update && apt-get -yq install texlive texlive-latex-extra texlive-lang-polish pip pkg-config libicu-dev epubcheck python3-markupsafe python3-icu python3-lxml python3-jinja2 python3-yaml git curl xindy && apt-get clean +#RUN tlmgr install truncate +#COPY ../requirements.txt /tmp/requirements.txt +#RUN pip3 install -r /tmp/requirements.txt +CMD ["/bin/bash"] diff --git a/containers/apko/Dockerfile b/containers/apko/Dockerfile new file mode 100644 index 00000000..0e0a1fa3 --- /dev/null +++ b/containers/apko/Dockerfile @@ -0,0 +1,9 @@ +FROM --platform=linux/amd64 latex-alpine-base:latest-amd64 + +#USER 0 +#COPY ./post_livetex_install.sh /tmp/post_livetex_install.sh +#RUN /tmp/post_livetex_install.sh +# +#USER latex +#COPY ./initialize_fonts.sh /tmp/initialize_fonts.sh +#RUN /tmp/initialize_fonts.sh \ No newline at end of file diff --git a/containers/apko/build_apko.sh b/containers/apko/build_apko.sh new file mode 100755 index 00000000..7d14e2f0 --- /dev/null +++ b/containers/apko/build_apko.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +set -e -x + +CONTAINER="europe-docker.pkg.dev/wdw-21/songbook/github-latex-worker-alpine" + +# Not yet finished nor tested. +docker run -v "$PWD":/work cgr.dev/chainguard/apko build /work/latex.apko.yaml latex-alpine-base:latest /work/latex.tar +docker load -i latex.tar +docker build -t ${CONTAINER} . + + +docker run --rm -v "${PWD}/../..:/work" -w /work -it ${CONTAINER} /bin/bash + +#docker run --rm -v "${PWD}/../..:/work" -w /work -it ${CONTAINER} ./render_pdf.sh songbook a4 test ./songs/alpuhara.xml + + +#docker push "${CONTAINER}" + + +# europe-docker.pkg.dev +#gcloud auth login piotr.tabor@gmail.com +#gcloud config set project wdw-21 +#gcloud auth configure-docker europe-docker.pkg.dev \ No newline at end of file diff --git a/containers/apko/initialize_fonts.sh b/containers/apko/initialize_fonts.sh new file mode 100755 index 00000000..7bbef49f --- /dev/null +++ b/containers/apko/initialize_fonts.sh @@ -0,0 +1,22 @@ +#!/bin/bash + +# When building the Alpine image (Apko) with Livetex, +# For unknown reason the fonts cannot be generated ad-hoc as part +# of just rendering tex. They land in the output directory and cannot be found there. +# We here precompute the fonts (based on generated `build/songs_tex/missfont.log` output for different page-sizes, +# To enable the rendering. + +mktextfm ecssdc10 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecrm1000 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecbx1000 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecbx1728 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecrm1095 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecrm1728 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecrm1200 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ectt2488 +mktexpk --mfmode / --bdpi 600 --mag 0+540/600 --dpi 540 ecssdc10 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecrm0900 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ecbx0900 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ectt1728 +mktexpk --mfmode / --bdpi 600 --mag 1+0/600 --dpi 600 ectt1000 + diff --git a/containers/apko/latex.apko.yaml b/containers/apko/latex.apko.yaml new file mode 100644 index 00000000..ea0a9699 --- /dev/null +++ b/containers/apko/latex.apko.yaml @@ -0,0 +1,46 @@ +contents: + repositories: + - https://dl-cdn.alpinelinux.org/alpine/edge/main + - https://dl-cdn.alpinelinux.org/alpine/edge/community + packages: + - icu-data-full + - texlive + - bash + - py3-pip + - py3-lxml + - py3-markupsafe + - py3-icu + - py3-jinja2 + - py3-yaml + - curl + - ca-certificates + - xz +# - texmf-dist +# Unfortunetelly all languages are needed... as otherwise it fails with errors like:/usr/share/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-af.tex +# - texmf-dist-langpolish +# - texmf-dist-langother +# - texmf-dist-langgerman +# - texmf-dist-lang +# - texmf-dist-latexrecommended +# - texmf-dist-latexextra + +cmd: /bin/sh -l + +# optional environment configuration +environment: + PATH: /usr/sbin:/sbin:/usr/bin:/bin + +accounts: + users: + - username: latex + uid: 10000 + shell: /bin/sh + groups: + - groupname: latex + gid: 10000 + run-as: 0 + + +archs: + - x86_64 + # - arm64 diff --git a/containers/apko/post_livetex_install.sh b/containers/apko/post_livetex_install.sh new file mode 100755 index 00000000..b5cc6633 --- /dev/null +++ b/containers/apko/post_livetex_install.sh @@ -0,0 +1,16 @@ +#!/bin/sh + +# This is trigger from post-tex installation (unpacked from the .apk file). + +echo " --> mktexlsr" +mktexlsr > /dev/null 2>&1 > /dev/null +if [ -f /usr/share/texmf-config/web2c/updmap.cfg ]; then + mv -f /usr/share/texmf-config/web2c/updmap.cfg /usr/share/texmf-config/web2c/updmap.cfg.bak + echo "updmap.cfg backed up as /usr/share/texmf-config/web2c/updmap.cfg.bak" +fi +echo " --> updmap-sys --syncwithtrees" +yes 2> /dev/null | updmap-sys --syncwithtrees > /dev/null 2>&1 > /dev/null +echo " --> updmap-sys" +updmap-sys > /dev/null 2>&1 > /dev/null +echo " --> fmtutil-sys --all" +fmtutil-sys --all || true diff --git a/containers/apko/tex_install.sh b/containers/apko/tex_install.sh new file mode 100644 index 00000000..9b5e844a --- /dev/null +++ b/containers/apko/tex_install.sh @@ -0,0 +1,5 @@ +update-ca-certificates +cd /tmp +curl -L -o install-tl-unx.tar.gz https://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz +zcat < install-tl-unx.tar.gz | tar xf - +cd install-tl-20240629 \ No newline at end of file diff --git a/containers/build_push_images.sh b/containers/build_push_images.sh new file mode 100755 index 00000000..40b068f3 --- /dev/null +++ b/containers/build_push_images.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +ORG="spiewaj" + +set -e -x + +# Authorization using: +# - https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens +# - https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry +# The token is configured here: https://github.com/settings/tokens for scopes: delete:packages, repo, write:packages +#echo "{PERSONAL_ACCESS_TOKEN}" | docker login ghcr.io -u ptabor --password-stdin +# If you forget - you need to regenerate. + + +cd "${SCRIPT_DIR}/.." +docker build -f "${SCRIPT_DIR}/Dockerfile" -t europe-docker.pkg.dev/$ORG/songbook/github-latex-worker:latest --platform linux/amd64 . + +docker image tag europe-docker.pkg.dev/$ORG/songbook/github-latex-worker ghcr.io/$ORG/github-latex-worker:latest + +# docker push europe-docker.pkg.dev/$ORG/songbook/github-latex-worker:latest + +docker push ghcr.io/$ORG/github-latex-worker:latest diff --git a/containers/login.sh b/containers/login.sh new file mode 100644 index 00000000..8d38c4f2 --- /dev/null +++ b/containers/login.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +gcloud auth login piotr.tabor@gmail.com +gcloud config set project wdw-21 +gcloud auth configure-docker europe-docker.pkg.dev + +# Authorization using: +# - https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens +# - https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry + +#echo "{PERSONAL_ACCESS_TOKEN}" | docker login ghcr.io -u ptabor --password-stdin diff --git a/containers/test.sh b/containers/test.sh new file mode 100755 index 00000000..c9414557 --- /dev/null +++ b/containers/test.sh @@ -0,0 +1,2 @@ +docker run -v "${PWD}/..:/work" -w /work -it europe-docker.pkg.dev/wdw-21/songbook/github-latex-worker:latest /bin/bash +#docker run -v "${PWD}/..:/work" -w /work -it europe-docker.pkg.dev/wdw-21/songbook/github-latex-worker:latest ./render_pdf.sh songbook a4 test ./songs/alpuhara.xml diff --git a/editor-github-pr-proxy/.gcloudignore b/editor-github-pr-proxy/.gcloudignore new file mode 100644 index 00000000..5a616cba --- /dev/null +++ b/editor-github-pr-proxy/.gcloudignore @@ -0,0 +1,17 @@ +# This file specifies files that are *not* uploaded to Google Cloud +# using gcloud. It follows the same syntax as .gitignore, with the addition of +# "#!include" directives (which insert the entries of the given .gitignore-style +# file at that point). +# +# For more information, run: +# $ gcloud topic gcloudignore +# +.gcloudignore +# If you would like to upload your .git directory, .gitignore file or files +# from your .gitignore file, remove the corresponding line +# below: +.git +.gitignore + +node_modules +#!include:.gitignore diff --git a/editor-github-pr-proxy/.gitignore b/editor-github-pr-proxy/.gitignore new file mode 100644 index 00000000..4d3dca5f --- /dev/null +++ b/editor-github-pr-proxy/.gitignore @@ -0,0 +1,3 @@ +node_modules/ +google-cloud-functions-env.txt +local-env-secret.txt \ No newline at end of file diff --git a/editor-github-pr-proxy/LICENSE b/editor-github-pr-proxy/LICENSE new file mode 100644 index 00000000..6802bc4b --- /dev/null +++ b/editor-github-pr-proxy/LICENSE @@ -0,0 +1,19 @@ +MIT License + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. \ No newline at end of file diff --git a/editor-github-pr-proxy/deploy.sh b/editor-github-pr-proxy/deploy.sh new file mode 100755 index 00000000..652662df --- /dev/null +++ b/editor-github-pr-proxy/deploy.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +gcloud functions deploy editor-github-pr-proxy \ + --allow-unauthenticated \ + --project wdw-21 \ + --region=europe-west3 --runtime nodejs16 --trigger-http --max-instances=3 --source . --memory=128Mi --gen2 \ + --entry-point=app \ + --set-secrets=GITHUB_TOKEN=projects/wdw-21/secrets/github-comments-token:latest \ No newline at end of file diff --git a/editor-github-pr-proxy/index.js b/editor-github-pr-proxy/index.js new file mode 100644 index 00000000..8584187d --- /dev/null +++ b/editor-github-pr-proxy/index.js @@ -0,0 +1,82 @@ +// The code is mostly clone of https://github.com/mshick/add-pr-comment-proxy by Michael Shick. +// The main modification is the ability to deploy it as a Cloud function. + +import express from 'express' +import bodyParser from 'body-parser' +import {HttpClient} from '@actions/http-client' +import {ErrorHandler, BadRequestError} from 'express-json-api-error-handler' +import { http } from '@google-cloud/functions-framework'; + +const createComment = async (http, params) => { + const {repoToken, owner, repo, issueNumber, body} = params + + return http.postJson( + `https://api.github.com/repos/${owner}/${repo}/issues/${issueNumber}/comments`, + {body}, + { + accept: 'application/vnd.github.v3+json', + authorization: `token ${repoToken}`, + } + ) +} + +const checkToken = async (http, token) => { + if (!token) { + return false + } + + if (token === process.env.GITHUB_TOKEN) { + // Assume the use of this token is intentional + return true + } + + try { + await http.getJson(`https://api.github.com/user/repos`, { + accept: 'application/vnd.github.v3+json', + authorization: `token ${token}`, + }) + return false + } catch (err) { + // Far from perfect, temporary tokens are difficult to identify + // A bad token returns 401, and a personal token returns 200 + return ( + err.statusCode === 403 && + err.result.message && + err.result.message.startsWith('Resource not accessible by integration') + ) + } +} + +const app = express() + +app.use((req, res, next) => { + req.httpClient = new HttpClient('http-client-add-pr-comment-bot') + next() +}) +app.use(bodyParser.json()) + +app.post('/repos/:owner/:repo/issues/:issueNumber/comments', async (req, res, next) => { + try { + const isTokenValid = await checkToken(req.httpClient, req.header('temporary-github-token')) + if (!isTokenValid) { + throw new BadRequestError('must provide a valid temporary github token') + } + + const response = await createComment(req.httpClient, { + ...req.params, + ...req.body, + repoToken: process.env.GITHUB_TOKEN, + }) + + res.status(200).send(response).end() + } catch (err) { + next(err) + } +}) + +// Must use last +const errorHandler = new ErrorHandler() +errorHandler.setErrorEventHandler(err => console.log(JSON.stringify(err))) +app.use(errorHandler.handle) + +http('app', app); \ No newline at end of file diff --git a/editor-github-pr-proxy/local-env.txt b/editor-github-pr-proxy/local-env.txt new file mode 100644 index 00000000..0e11fd33 --- /dev/null +++ b/editor-github-pr-proxy/local-env.txt @@ -0,0 +1,5 @@ +export OAUTH_CLIENT_ID="c54f626adaeab3b0e0b6" +export BASE_URL="http://localhost:8080" +export EDITOR_DOMAIN="http://localhost:63342" +export EDITOR_PATH="/editor/index.html?" + diff --git a/editor-github-pr-proxy/package-lock.json b/editor-github-pr-proxy/package-lock.json new file mode 100644 index 00000000..e7da03bd --- /dev/null +++ b/editor-github-pr-proxy/package-lock.json @@ -0,0 +1,2496 @@ +{ + "name": "editor-github-pr-proxy", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "editor-github-pr-proxy", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "@actions/http-client": "^1.0.8", + "@google-cloud/functions-framework": "^3.1.2", + "body-parser": "^1.19.0", + "express": "^4.17.1", + "express-json-api-error-handler": "^6.0.0" + }, + "devDependencies": { + "eslint": "^7.4.0", + "eslint-config-prettier": "^6.11.0", + "eslint-plugin-prettier": "^3.1.4", + "prettier": "^2.0.5" + } + }, + "node_modules/@actions/http-client": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-1.0.11.tgz", + "integrity": "sha512-VRYHGQV1rqnROJqdMvGUbY/Kn8vriQe/F9HR2AlYHzmKuM/p3kjNuXhmdBfcVgsvRWTz5C5XW5xvndZrVBuAYg==", + "dependencies": { + "tunnel": "0.0.6" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", + "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", + "dependencies": { + "@babel/highlight": "^7.10.4" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", + "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", + "dev": true, + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.1.1", + "espree": "^7.3.0", + "globals": "^13.9.0", + "ignore": "^4.0.6", + "import-fresh": "^3.2.1", + "js-yaml": "^3.13.1", + "minimatch": "^3.0.4", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/@eslint/eslintrc/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/@eslint/eslintrc/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@eslint/eslintrc/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/@eslint/eslintrc/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@google-cloud/functions-framework": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@google-cloud/functions-framework/-/functions-framework-3.1.3.tgz", + "integrity": "sha512-gNKEkbud/+QkS5+vn+UEvBX6L522OpyTOjM83/cR1JRhSsBTNn3kPe4L17ZQMjJHFvO9xIxF3FaPDTfOx1Umpw==", + "dependencies": { + "@types/express": "4.17.13", + "body-parser": "^1.18.3", + "cloudevents": "^6.0.0", + "express": "^4.16.4", + "minimist": "^1.2.7", + "on-finished": "^2.3.0", + "read-pkg-up": "^7.0.1", + "semver": "^7.3.5" + }, + "bin": { + "functions-framework": "build/src/main.js", + "functions-framework-nodejs": "build/src/main.js" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", + "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", + "dev": true, + "dependencies": { + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@humanwhocodes/config-array/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "node_modules/@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/express": { + "version": "4.17.13", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", + "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.18", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.31", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz", + "integrity": "sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "node_modules/@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==" + }, + "node_modules/@types/node": { + "version": "10.17.60", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.60.tgz", + "integrity": "sha512-F0KIgDJfy2nA3zMLmWGKxcH2ZVEtCZXHHdOQs2gSaQ27+lNeEfGxzkIw90aXswATX7AZ33tahPbzy6KAfUreVw==" + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "node_modules/@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" + }, + "node_modules/@types/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", + "dependencies": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/ajv": { + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.2.tgz", + "integrity": "sha512-E4bfmKAhGiSTvMfL1Myyycaub+cUEU2/IvpylXkUu7CHBkBj1f/ikdzbD7YQ6FKUbixDxeYvB/xY4fvyroDlQg==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ansi-colors": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "node_modules/astral-regex": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true + }, + "node_modules/body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/cloudevents": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/cloudevents/-/cloudevents-6.0.3.tgz", + "integrity": "sha512-ADEHAv2KShH/cDIy2GP+npFz3R6Fu/UCsUO/j4kYA9VqN4yhGdF+Zg6wmjeq6qlUvlaKdrVBwgZuH/w57IsyGQ==", + "dependencies": { + "ajv": "^8.11.0", + "ajv-formats": "^2.1.1", + "util": "^0.12.4", + "uuid": "^8.3.2" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/deep-is": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", + "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", + "dev": true + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", + "dev": true, + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/enquirer": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", + "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", + "dev": true, + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint": { + "version": "7.32.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", + "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "7.12.11", + "@eslint/eslintrc": "^0.4.3", + "@humanwhocodes/config-array": "^0.5.0", + "ajv": "^6.10.0", + "chalk": "^4.0.0", + "cross-spawn": "^7.0.2", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "enquirer": "^2.3.5", + "escape-string-regexp": "^4.0.0", + "eslint-scope": "^5.1.1", + "eslint-utils": "^2.1.0", + "eslint-visitor-keys": "^2.0.0", + "espree": "^7.3.1", + "esquery": "^1.4.0", + "esutils": "^2.0.2", + "fast-deep-equal": "^3.1.3", + "file-entry-cache": "^6.0.1", + "functional-red-black-tree": "^1.0.1", + "glob-parent": "^5.1.2", + "globals": "^13.6.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", + "imurmurhash": "^0.1.4", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", + "json-stable-stringify-without-jsonify": "^1.0.1", + "levn": "^0.4.1", + "lodash.merge": "^4.6.2", + "minimatch": "^3.0.4", + "natural-compare": "^1.4.0", + "optionator": "^0.9.1", + "progress": "^2.0.0", + "regexpp": "^3.1.0", + "semver": "^7.2.1", + "strip-ansi": "^6.0.0", + "strip-json-comments": "^3.1.0", + "table": "^6.0.9", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-config-prettier": { + "version": "6.15.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz", + "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==", + "dev": true, + "dependencies": { + "get-stdin": "^6.0.0" + }, + "bin": { + "eslint-config-prettier-check": "bin/cli.js" + }, + "peerDependencies": { + "eslint": ">=3.14.1" + } + }, + "node_modules/eslint-plugin-prettier": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz", + "integrity": "sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g==", + "dev": true, + "dependencies": { + "prettier-linter-helpers": "^1.0.0" + }, + "engines": { + "node": ">=6.0.0" + }, + "peerDependencies": { + "eslint": ">=5.0.0", + "prettier": ">=1.13.0" + }, + "peerDependenciesMeta": { + "eslint-config-prettier": { + "optional": true + } + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint/node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/eslint/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/eslint/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "node_modules/eslint/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", + "dev": true + }, + "node_modules/espree": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", + "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", + "dev": true, + "dependencies": { + "acorn": "^7.4.0", + "acorn-jsx": "^5.3.1", + "eslint-visitor-keys": "^1.3.0" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express-json-api-error-handler": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/express-json-api-error-handler/-/express-json-api-error-handler-6.0.1.tgz", + "integrity": "sha512-UfU+nMcyuADbzTKRlWdnJmvtzgG+DILwrW3CekLmOhSPOuTYQpjfqTGBrkoGE++Xt5DS5bO3Jk0tXFfaV9HmNA==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", + "dependencies": { + "@types/node": "^10.14.12" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/fast-diff": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz", + "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", + "dev": true + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true + }, + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==", + "dev": true + }, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "dev": true, + "dependencies": { + "flat-cache": "^3.0.4" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/flat-cache": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", + "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "dev": true, + "dependencies": { + "flatted": "^3.1.0", + "rimraf": "^3.0.2" + }, + "engines": { + "node": "^10.12.0 || >=12.0.0" + } + }, + "node_modules/flatted": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.7.tgz", + "integrity": "sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ==", + "dev": true + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", + "dev": true + }, + "node_modules/get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dev": true, + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globals": { + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, + "engines": { + "node": ">= 4" + } + }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dev": true, + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dev": true, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.10.tgz", + "integrity": "sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "dev": true, + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/json-stable-stringify-without-jsonify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", + "dev": true + }, + "node_modules/levn": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", + "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1", + "type-check": "~0.4.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", + "dev": true + }, + "node_modules/lodash.truncate": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", + "integrity": "sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==", + "dev": true + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dev": true, + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "dependencies": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "node_modules/prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/prettier": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.1.tgz", + "integrity": "sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, + "node_modules/prettier-linter-helpers": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "dev": true, + "dependencies": { + "fast-diff": "^1.1.2" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/progress": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg-up/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/mysticatea" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/slice-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", + "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.0.0", + "astral-regex": "^2.0.0", + "is-fullwidth-code-point": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==" + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/table": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/table/-/table-6.8.1.tgz", + "integrity": "sha512-Y4X9zqrCftUhMeH2EptSSERdVKt/nEdijTOacGD/97EKjhQ/Qs8RTlEGABSJNNN8lac9kheH+af7yAkEWlgneA==", + "dev": true, + "dependencies": { + "ajv": "^8.0.1", + "lodash.truncate": "^4.4.2", + "slice-ansi": "^4.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", + "dev": true + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tunnel": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", + "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", + "engines": { + "node": ">=0.6.11 <=0.7.0 || >=0.7.3" + } + }, + "node_modules/type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", + "dev": true, + "dependencies": { + "prelude-ls": "^1.2.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", + "dependencies": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "which-typed-array": "^1.1.2" + } + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } +} diff --git a/editor-github-pr-proxy/package.json b/editor-github-pr-proxy/package.json new file mode 100644 index 00000000..b4b0023f --- /dev/null +++ b/editor-github-pr-proxy/package.json @@ -0,0 +1,27 @@ +{ + "name": "editor-github-pr-proxy", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "start": "source ./local-env.txt && source ./local-env-secret.txt && npx functions-framework --target=songbook" + }, + "keywords": [], + "author": "", + "license": "ISC", + "type": "module", + "dependencies": { + "@google-cloud/functions-framework": "^3.1.2", + "@actions/http-client": "^1.0.8", + "body-parser": "^1.19.0", + "express": "^4.17.1", + "express-json-api-error-handler": "^6.0.0" + }, + "devDependencies": { + "eslint": "^7.4.0", + "eslint-config-prettier": "^6.11.0", + "eslint-plugin-prettier": "^3.1.4", + "prettier": "^2.0.5" + } +} diff --git a/editor-github/.gcloudignore b/editor-github/.gcloudignore new file mode 100644 index 00000000..536573b4 --- /dev/null +++ b/editor-github/.gcloudignore @@ -0,0 +1,5 @@ +.idea/ +node_modules/ +.gitignore/ +exp.js +deploy.sh \ No newline at end of file diff --git a/editor-github/.gitignore b/editor-github/.gitignore new file mode 100644 index 00000000..4d3dca5f --- /dev/null +++ b/editor-github/.gitignore @@ -0,0 +1,3 @@ +node_modules/ +google-cloud-functions-env.txt +local-env-secret.txt \ No newline at end of file diff --git a/editor-github/common.js b/editor-github/common.js new file mode 100644 index 00000000..6088eb7a --- /dev/null +++ b/editor-github/common.js @@ -0,0 +1,286 @@ +import {createOAuthUserAuth} from "@octokit/auth-app"; +import {Octokit} from "@octokit/rest"; +import {RequestError} from "@octokit/request-error"; +import util from "util"; +import {graphql} from "@octokit/graphql"; +import crypto from "crypto"; +import {oauthAuthorizationUrl} from "@octokit/oauth-authorization-url"; + +const USER_AGENT="songbook/0.1.0"; + +const OAUTH_APP_SECRET = process.env.OAUTH_APP_SECRET; + +export const OAUTH_CLIENT_ID = process.env.OAUTH_CLIENT_ID; + +export const BASE_URL = process.env.BASE_URL; +export const EDITOR_DOMAIN = process.env.EDITOR_DOMAIN; +export const EDITOR_PATH = process.env.EDITOR_PATH; +export const PARENT_DOMAIN = process.env.PARENT_DOMAIN; + + +export const EDITOR_BASE_URL = EDITOR_DOMAIN + EDITOR_PATH + +export const CHANGES_BASE_URL = BASE_URL + "/changes"; +export const REDIRECT_BASE_URL = BASE_URL + "/redirect"; +export const CONFIG_BASE_URL = BASE_URL + "/config"; +export const AUTH_URL = BASE_URL + "/auth"; + +export const GITHUB_OWNER='spiewaj'; +export const MAIN_BRANCH_NAME="songeditor-main"; + +export async function getFileFromBranch(octokit, user, branchName) { + let diff = await octokit.rest.repos.compareCommitsWithBasehead({ + owner: GITHUB_OWNER, + repo: 'songbook', + basehead: `main...${user}:songbook:${branchName}` + }); + return diff.data.files.length>0 ? diff.data.files[0].filename : null; +} + +export function htmlPrefix(res) { + res.write(` + + + + Edytor piosenek + + + + + +
+ [Piosenki] + [Nowa] + [Inne rozpoczęte edycje] +
+`); +} + +export function htmlSuffix(res) { + if (!res.headersSent) { + res.write(` + +`); + res.end(); + } else { + console.log("Headers already sent") + } +} + +function fullUrl(req) { + return new URL(`${req.protocol}://${req.get('host')}${req.originalUrl}`); +} + +export function stripProtocol(s) { + return s.replace("http://", "").replace("https://",""); +} + +function getBackUrl(req, backUrl) { + if (backUrl) { + console.log("Using back URL", backUrl); + return backUrl; + } + const u = fullUrl(req); + if (req.method=='GET' && !stripProtocol(u.href).startsWith(stripProtocol(REDIRECT_BASE_URL))) { + console.log("Using back URL based on req: ", u.href); + return u.href; + } + console.log("Using the default back URL:" + CHANGES_BASE_URL); + return CHANGES_BASE_URL; +} + +export function clearCookiesAndAuthRedirect(res, backUrl) { + console.log("clearCookiesAndAuthRedirect: backUrl", backUrl); + if (res.headersSent) { + console.log("clearCookiesAndAuthRedirect: Headers already sent") + } else { + console.log("clearCookiesAndAuthRedirect: Headers not yet sent") + } + const state = crypto.randomUUID(); + res.clearCookie("session", {domain: PARENT_DOMAIN}); + res.cookie("state", state); + res.cookie("redirectUrl", backUrl); + + const {url} = + oauthAuthorizationUrl({ + clientType: "oauth-app", + clientId: OAUTH_CLIENT_ID, + redirectUrl: REDIRECT_BASE_URL, + scopes: ["public_repo", "workflow"], + state: state, + }); + res.redirect(url); + if (res.headersSent) { + console.log("clearCookiesAndAuthRedirect: Headers finally sent - AFTER redirect to:", url) + } else { + console.log("clearCookiesAndAuthRedirect: Headers not yet sent !!! ???") + } +} + +export async function newUserOctokit(req,res, backUrl) { + let access_token = req.cookies.session ? req.cookies.session.access_token + : null; + let authuser = req.cookies.session ? req.cookies.session.user : null; + // console.log("access token from cookie: ", access_token) + if (!access_token || !authuser) { + //TODO(ptab): Compare secret with the cookie. + const authData = { + clientId: OAUTH_CLIENT_ID, + clientSecret: OAUTH_APP_SECRET, + code: req.query.code, + state: req.query.state, + redirectUrl: REDIRECT_BASE_URL, + log: console, + }; + + const auth = await createOAuthUserAuth(authData); + try { + const {token} = await auth(); + access_token = token; + } catch (e) { + console.log("Catched error(1):", e); + console.log("Catched error(2):", e.status, e instanceof RequestError); + + clearCookiesAndAuthRedirect(res, getBackUrl(req, backUrl)); + + return {octkokit: null,authuser:null,user:null,mygraphql:null}; + } + const octokit = new Octokit({ + userAgent: USER_AGENT, + auth: access_token, + log: console, + }); + const authenticated = await octokit.rest.users.getAuthenticated(); + authuser = authenticated.data.login; + console.log(util.inspect(authenticated, false, null, false)); + res.cookie("session", { + "access_token": access_token, + "user": authuser}, + { maxAge: 3*24*60*60*1000, httpOnly: true, sameSite:'none', secure: true, domain: PARENT_DOMAIN }); + res.cookie("new", "false", { maxAge: 31536000}); + } + const usr = (!req.params.user || req.params.user === 'me') ? authuser : req.params.user; + console.log('Acting as user:', usr); + let mygraphql = graphql.defaults({ + headers: { + "Authorization": "bearer " + access_token + }, + }); + + return { + octokit: new Octokit({ + userAgent: USER_AGENT, + auth: access_token, + log: console, + }), + mygraphql: async function(query, params) { + return mygraphql(query, params).catch(function (e) { + console.log("wrapRedirectToConfigIfNeeded: Got error:", e); + console.log("wrapRedirectToConfigIfNeeded: Got error message:", e.message); + if (e.message.includes("Could not resolve to a Repository with the name")) { + console.log("redirecting to config..."); + // TODO: Might set a redirect address. + res.redirect(CONFIG_BASE_URL); + } + return e + }) + }, + authuser: authuser, + user: usr + } +} + + +export async function fetchBranch(octokit, user, branchName) { + try { + console.log("fetchingBranch", user, branchName) + return await octokit.rest.repos.getBranch( + {owner: user, repo: 'songbook', 'branch': branchName}); + } catch (e) { + if (e instanceof RequestError && e.status===404) { + console.log("fetchBranch returning null (due to 404)") + return null; + } + console.log("Rethrowing e", JSON.stringify(e)) + throw e; + } +} + +export async function prepareMainBranch(octokit, user) { + let branch = await fetchBranch(octokit, user, MAIN_BRANCH_NAME); + if (!branch) { + // let originBranch = await fetchBranch(octokit, GITHUB_OWNER, 'main'); + // console.log(util.inspect(originBranch, false, null, false)); + // We use really old commit as (originBranch.data.commit.sha) was sometimes not pulled from the repository. + await octokit.rest.git.createRef({owner: user, repo: 'songbook', "ref": "refs/heads/" + MAIN_BRANCH_NAME, "sha": 'c21af496c93eecd96902d8ee01c994b9ec2e8157'}); + const res = await octokit.request('POST /repos/{owner}/{repo}/pulls', { + owner: user, + repo: 'songbook', + title: 'Automated creation of songbook-main branch.', + body: 'Should get automatically merged.', + head: GITHUB_OWNER + ':songbook:main', + base: MAIN_BRANCH_NAME + }) + console.log("Creating pull request", JSON.stringify(res)); + const merge = await octokit.request('PUT /repos/{owner}/{repo}/pulls/{pull_number}/merge', { + owner: user, + repo: 'songbook', + pull_number: res.data.number + }) + console.log("Merging", JSON.stringify(merge)); + } + await octokit.rest.repos.mergeUpstream({owner: user, repo: 'songbook', 'branch': MAIN_BRANCH_NAME}); + return fetchBranch(octokit, user, MAIN_BRANCH_NAME); +} + +export async function prepareBranch(octokit, user, branchName) { + console.log("prepareBranch") + let branch = await fetchBranch(octokit, user, branchName); + if (branch) { + return branch; + } + let mainBranch = await prepareMainBranch(octokit, user); + console.log("prepareBranch (main): ", JSON.stringify(mainBranch)); + + await octokit.rest.git.createRef({owner: user, repo: 'songbook', "ref": "refs/heads/" + branchName, "sha": mainBranch.data.commit.sha}); + return fetchBranch(octokit, user, branchName); +} + +export function editorLink(user, branchName, file, autocommit, maybeNew) { + let url = new URL(EDITOR_BASE_URL); + url.searchParams.set('baseUrl', BASE_URL); + url.searchParams.set('branch', branchName); + url.searchParams.set('file', file); + url.searchParams.set('user', user); + if (autocommit) { + url.searchParams.set('commitOnLoad', 'true'); + } + if (maybeNew) { + url.searchParams.set('new', 'maybe'); + } + return url.href; +} + +export function HandleError(e, res) { + console.log("HttpError", e); + if ((!res.headersSent && e instanceof RequestError && e.status===401) || + (e.response.data.message.includes("refusing to allow an OAuth App to"))) { + // HttpError RequestError [HttpError]: Bad credentials + // status: 422, E.g. HttpError: refusing to allow an OAuth App to create or update workflow `.github/workflows/generate.yml` without `workflow` scope + res.redirect(AUTH_URL); + return; + } + if (!res.headersSent) { + res.send(`
Error
`);
+        res.send(util.inspect(e, false, null, false));
+        res.end(`
`); + } +} diff --git a/editor-github/deploy.sh b/editor-github/deploy.sh new file mode 100755 index 00000000..3ac19668 --- /dev/null +++ b/editor-github/deploy.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +GOOGLE_PROJECT="spiewaj-com" + +# First time: +# - https://cloud.google.com/sdk/docs/install-sdk +# - brew upgrade google-cloud-sdk +# - gcloud auth login +# - gcloud config set project wdw-21 + +# Cloud function: https://console.cloud.google.com/functions/details/europe-west1/songbook-ghe?env=gen2&project=spiewaj-com + +gcloud functions deploy songbook-ghe \ + --project=${GOOGLE_PROJECT} \ + --allow-unauthenticated \ + --region=europe-west1 --runtime nodejs18 --trigger-http --max-instances=5 --source . --memory=256Mi --gen2 \ + --entry-point=songbook \ + --env-vars-file=google-cloud-functions-env.txt \ + --set-secrets=OAUTH_APP_SECRET=projects/${GOOGLE_PROJECT}/secrets/github-editor-app-oauth:latest + +# Domain mapping: https://console.cloud.google.com/run/domains?inv=1&invt=Ab0zqQ&project=spiewaj-com +gcloud run domain-mappings create --service songbook-ghe \ + --domain spiewaj.com \ + --project=${GOOGLE_PROJECT} \ + --region=europe-west1 + +# Create a new secret: +# gcloud secrets create github-editor-app-oauth --project=${GOOGLE_PROJECT} --replication-policy=automatic +# gcloud secrets versions add github-editor-app-oauth --project=${GOOGLE_PROJECT} ... +# See secret details: https://console.cloud.google.com/security/secret-manager/secret/github-editor-app-oauth/versions?project=wdw-21 +# Generate new secret: https://github.com/settings/applications/2019824 +# Secreat is stored at the level of github organization (developer settings, oath apps). diff --git a/editor-github/editor-github.iml b/editor-github/editor-github.iml new file mode 100644 index 00000000..80cc7391 --- /dev/null +++ b/editor-github/editor-github.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/editor-github/exp.js b/editor-github/exp.js new file mode 100644 index 00000000..c1b5d69f --- /dev/null +++ b/editor-github/exp.js @@ -0,0 +1,50 @@ +const crypto = require('crypto'); + +// Generated using: crypto.randomBytes(16);.toString("hex"); +const CRYPTO_IV = Buffer.from("b99e5a7e5363c58b07a62d12264e4b18", "hex"); +// Generated: console.log(crypto.randomBytes(24).toString("hex")); +const CRYPTO_KEY = Buffer.from("c5bcc1782e71bb5d522d7c36cd9eaa50cf91aefb5349d691", "hex"); + +function encrypt(txt) { + let cipher = crypto.createCipheriv("aes192", CRYPTO_KEY, CRYPTO_IV); + let encrypted = cipher.update(txt); + encrypted = Buffer.concat([encrypted, cipher.final()]); + return encrypted; +} + +function decrypt(txt) { + let cipher = crypto.createDecipheriv("aes192", CRYPTO_KEY, CRYPTO_IV); + let encrypted = cipher.update(txt); + encrypted = Buffer.concat([encrypted, cipher.final()]); + return encrypted.toString(); +} + +function encryptJSON(json) { + return encrypt(JSON.stringify(json)); +} + +function encryptJSONhex(json) { + return encryptJSON(json).toString("hex"); +} + +function decryptJSON(jsonContent) { + return JSON.parse(decrypt(jsonContent)); +} + + +function decryptJSONhex(jsonContent) { + return decryptJSON(Buffer.from(jsonContent, "hex")); +} + + +function test() { + console.log(encryptJSONhex({"jeden": 1, "dwa": 2})); + console.log(decryptJSONhex( + "0d9b6aa042cf845fe679b91b13e5800dc859d229ec451a180e9e26874ee46531")); +} + + +console.log(` abcd + cztery`.replaceAll(/(?<=^ *) /gm,"\t")); + +console.log("Pieśń na pieśniami-to jest _dzieło_.xml".replaceAll(/[^a-zA-Z0-9\.\-_]/g, "_")); \ No newline at end of file diff --git a/editor-github/google-cloud-functions-env.txt b/editor-github/google-cloud-functions-env.txt new file mode 100644 index 00000000..c98635c2 --- /dev/null +++ b/editor-github/google-cloud-functions-env.txt @@ -0,0 +1,5 @@ +OAUTH_CLIENT_ID: "Ov23limEOGsQjSBFRMCv" +BASE_URL: "https://ghe.spiewaj.com" +EDITOR_DOMAIN: "https://spiewaj.com" +PARENT_DOMAIN: "spiewaj.com" +EDITOR_PATH: "/editor" \ No newline at end of file diff --git a/editor-github/index.js b/editor-github/index.js new file mode 100644 index 00000000..ce5bff72 --- /dev/null +++ b/editor-github/index.js @@ -0,0 +1,604 @@ +import {oauthAuthorizationUrl} from "@octokit/oauth-authorization-url"; +import {http} from '@google-cloud/functions-framework'; +import {RequestError} from "@octokit/request-error"; +import express from 'express'; +import util from 'util'; +import cookieParser from "cookie-parser"; +import cors from 'cors'; +import path from 'path'; +import * as http_ from 'http'; +import * as https_ from 'https'; + +import * as fs from 'fs'; + +import libxmljs2 from "libxmljs2"; + +import {cleanupChanges, listChanges} from './listChanges.js'; +import { + AUTH_URL, + BASE_URL, + EDITOR_DOMAIN, + CHANGES_BASE_URL, + CONFIG_BASE_URL, + OAUTH_CLIENT_ID, + newUserOctokit, + getFileFromBranch, + htmlSuffix, + htmlPrefix, + MAIN_BRANCH_NAME, + prepareBranch, editorLink, + prepareMainBranch, + stripProtocol, + HandleError, EDITOR_BASE_URL, PARENT_DOMAIN, clearCookiesAndAuthRedirect, REDIRECT_BASE_URL, + GITHUB_OWNER +} from './common.js'; + +const app = express(); + +app.use(cookieParser()); +app.use(cors({origin: EDITOR_DOMAIN, credentials: true})); +//app.use(logRequest) +//app.use(errorHandleWrapper) +//app.use(errorHandle) +// app.use((err, req, res, next) => { +// +// next(res); +// }) + +app.get('/', async (req, res) => { + if (req.cookies.new === 'false') { + res.redirect(CHANGES_BASE_URL); + } else { + res.redirect("/intro"); + } +}); + +app.get('/changes', async (req, res) => { + const {octokit, user} = + await newUserOctokit(req, res); + if (!octokit) { + return; + } + res.redirect(`/users/${user}/changes`) +}); + + +app.get('/songs', async (req, res) => { + const {octokit, user} = await newUserOctokit(req, res); + if (!octokit) return; + res.redirect(`/users/${user}/songs`) +}); + +app.use(express.static('static')); + +app.get('/users/:user/changes', listChanges); +app.post('/users/:user/changes[:]cleanup', cleanupChanges); + +app.get('/users/:user/changes/:branch[:]edit', async (req, res) => { + const branchName = req.params.branch; + const {octokit, user} = await newUserOctokit(req, res); + if (!octokit) return; + let file = await getFileFromBranch(octokit, user, branchName); + res.redirect(editorLink(user, branchName, file, false, false)); +}); + +app.delete('/users/:user/changes/:branch', async (req, res) => { + const branchName = req.params.branch; + const {octokit, user} = await newUserOctokit(req, res); + if (!octokit) return; + + await octokit.rest.git.deleteRef({owner: user, repo: 'songbook', "ref": "heads/" + branchName}); + res.send("Deleted"); +}); + +async function getPullRequest(octokit, user, branchName) { + const res = await octokit.request('GET /repos/{owner}/{repo}/pulls{?state,head,base,sort,direction,per_page,page}', { + owner: GITHUB_OWNER, + repo: 'songbook', + head: `${user}:${branchName}`, + }) + console.log("getPullRequest: " + JSON.stringify(res)) + return res.status=200 && res.data.length>0 ? res.data[0] : null +} + +async function getCommitsDifferenceMsg(octokit, user, branchName) { + const commits = await octokit.request('GET /repos/{owner}/{repo}/compare/{basehead}{?page,per_page}', { + owner: user, + repo: 'songbook', + basehead: `songeditor-main...${branchName}` + }) + let msg=""; + for (let commit of commits.data.commits) { + msg+=commit.commit.message + "\n" + } + return msg; +} + +async function prDescription(octokit, user, branchName) { + let file = await getFileFromBranch(octokit, user, branchName); + let link = editorLink(user, branchName, file, false); + let msg = await getCommitsDifferenceMsg(octokit, user, branchName); + let body = ` +[Link do edytora](${link})\n\n${msg}\n\nZa kilka minut pojawi się tu wyrenderowana piosenka (PDF). +Ktoś też zrecenzuje/zaakceptuje Twoje zmiany. Może też mieć tutaj dodatkowe komentarze/pytania.\n +Możesz zawsze wrócić do [edytora](${link}) by nanieść dodatkowe poprawki.`; + return { body, file } +} + +// We prepare a form, such that user can do final commit. +async function publishByGet(req, res) { + const {octokit, user} = await newUserOctokit(req, res); + const branchName = req.params.branch; + const {body, file} = prDescription(octokit, user, branchName) + let url = `https://github.com/${GITHUB_OWNER}/songbook/compare/main...${user}:songbook:${branchName}?title=Piosenka: ${encodeURIComponent(file)}&expand=1&body=${encodeURIComponent(body)}` + res.redirect(url); +} + +async function publishByPost(req, res) { + const {octokit, user} = await newUserOctokit(req, res); + const branchName = req.params.branch; + const existingPr = await getPullRequest(octokit, user, branchName); + if (existingPr != null) { + res.redirect(existingPr.html_url); + return + } + const {body, file} = await prDescription(octokit, user, branchName) + const response = await octokit.request('POST /repos/{owner}/{repo}/pulls', { + owner: GITHUB_OWNER, + repo: 'songbook', + title: `Piosenka: ${file}`, + body: body, + head: `${user}:${branchName}`, + base: 'main' + }) + console.log("Creation of PULL request returned:" + JSON.stringify(response)) + res.redirect(response.data.html_url); +} + + +app.get('/users/:user/changes/:branch[:]publish', async (req, res) => { + await publishByPost(req, res); +}); + + +async function getSongs(octokit, user) { + let songs = await octokit.rest.repos.getContent( + {owner: user, repo: 'songbook', path: 'songs', ref: MAIN_BRANCH_NAME}) + //console.log(util.inspect(songs, false, null, false)); + let os = []; + for (let s of songs.data) { + os.push({ + title: s.name.replaceAll(/.xml$/g, ""), + filename: s.name, + path: s.path, + }); + } + return os +} + +async function getDirs(octokit, user) { + let songs = await octokit.request('GET /repos/{owner}/{repo}/git/trees/{tree_sha}?recursive=1', { + owner: user, + repo: 'songbook', + tree_sha: MAIN_BRANCH_NAME, + headers: { + 'X-GitHub-Api-Version': '2022-11-28' + } + }) + let os = []; + for (let s of songs.data.tree) { + if (s.path.startsWith("songs/") && s.type === "tree") { + os.push(s.path.replaceAll("songs/", "")) + } + } + return os +} + + +app.get('/users/:user/changes[:]new', async (req, res) => { + try { + console.log("Starting request /users/:user/changes[:]new"); + const {octokit, user} = await newUserOctokit(req, res); + if (!octokit) { + console.log("No octokit in changes:NEW processing finished - exiting immedietely!!!"); + return; + } + console.log("Request query: ", req.query) + console.log("Request query file: ", req.query.file) + if (req.query.file) { + let file = req.query.file; + console.log("Got file: ", file) + if (!file.toLowerCase().endsWith(".xml")) { + file = file + ".xml"; + } + return await newChange(file, octokit, user, res) + } + + htmlPrefix(res); + + + let dirs = await getDirs(octokit, user) + + res.write(`\n`); + for (const dir of dirs) { + res.write(` \n`); + } + res.write(`\n`); + + res.write(` +
+

Nowa edycja

\n + Wybierz katalog w którym chcesz umieścić piosenkę: +
+ Podaj nazwę pliku - tytuł piosenki to dobry pomysł: + +
+ +
+
`); + } catch (e) { + HandleError(e, res); + } finally { + htmlSuffix(res); + console.log("!!! /changes:NEW processing finished !!!"); + } +}); + +function sanitizeBranchName(br) { + return br.replaceAll(/[^a-zA-Z0-9.\-_]/g, "_"); +} + +async function newChange(file, octokit, user, res) { + try { + console.log("newChange started (2024-06-30)") + let today = new Date().toISOString().slice(0, 10); + let rand = Math.floor(Math.random() * 10000); + let branchName = sanitizeBranchName("se-" + today + "-" + rand + "-" + file); + await prepareBranch(octokit, user, branchName) + res.redirect(editorLink(user, branchName, "songs/" + file, true, true)); + } catch (e) { + console.log("newChange EXCEPTION", e) + // Don't know why generic handler is not executed. + myErrorHandle(e, res); + res.end(); + throw e; + } +} + +app.post('/users/:user/changes[:]new', express.urlencoded({extended: true}), async (req, res) => { + // console.log("BODY", JSON.stringify(req.body)); + let dir = req.body.dir ? req.body.dir.trim() : "" + let file = req.body.file.trim().replaceAll(" ", "_").replaceAll(".xml", "") + if (!file.toLowerCase().endsWith(".xml")) { + file = file + ".xml"; + } + console.log("[newChange] getting octokit...") + const {octokit, user} = await newUserOctokit(req, res, `${BASE_URL}/users/me/changes:new?file=${encodeURIComponent(file)}&dir=${encodeURIComponent(dir)}`); + if (!octokit) { + console.log("Couldn't get octokit...") + return + } + console.log("[newChange] got octokit. Preparing branch ...") + let nc = await newChange(path.join(dir, file), octokit, user, res) + console.log("users/:user/changes[:]new exited"); + return nc; +}); + +app.post('/users/:user/changes/:file[:]new', async (req, res) => { + let file = req.params.trim(); + console.log("[newChange] getting octokit...") + const {octokit, user} = await newUserOctokit(req, res, `${BASE_URL}/users/me/changes:new?file=${encodeURIComponent(file)}`); + if (!octokit) { + console.log("Couldn't get octokit...") + return + } + console.log("[newChange] got octokit. Preparing branch ...") + return newChange(file, octokit, user, res) +}); + +app.get('/users/:user/songs', async (req, res) => { + try { + console.log("Starting request /songs"); + const {octokit, user} = await newUserOctokit(req, res); + if (!octokit) { + return; + } + + htmlPrefix(res); + res.write(` +

Lista piosenek

\n + Wybierz plik, który będziesz edytował: + `); + + let songs = await getSongs(octokit, user) + + res.write(`\n`); + + res.write(` +
+ +
+ +
+
`); + } catch (e) { + HandleError(e, res); + } finally { + htmlSuffix(res); + console.log("!!! /songs processing finished !!!"); + } +}); + +app.get('/config', async (req, res) => { + const {octokit, authuser} = await newUserOctokit(req, res); + + try { + await octokit.rest.repos.get({owner: authuser, repo: "songbook"}); + } catch (e) { + await octokit.rest.repos.createFork({owner: GITHUB_OWNER, repo: "songbook"}); + const delay = ms => new Promise(resolve => setTimeout(resolve, ms)) + await delay(3000); + } + + await prepareMainBranch(octokit, authuser); + res.redirect(`/users/${authuser}/changes`); +}); + +function myErrorHandle(e, res) { + if (e instanceof RequestError && e.status===404) { + console.log("Returning 404") + res.status(404); + res.send("Document not found"); + } if (e instanceof RequestError && e.status===401) { + console.log("Got 401 -> Redirecting to /auth") + res.redirect("/auth") + } else { + HandleError(e, res); + } +} + +async function validateSongXML(payload) { + const xsd = fs.readFileSync(new URL('./song.xsd', import.meta.url)).toString() + const xsdDoc = libxmljs2.parseXml(xsd); + const song = libxmljs2.parseXml(payload); + + if (!song.validate(xsdDoc)) { + console.warn("XML not VALID", payload) + return JSON.stringify(song.validationErrors); + } else { + console.log("XML VALID :)") + return null + } +} + +async function commit(branchName, file, msg, payload, req, res) { + const {octokit, mygraphql, user} = await newUserOctokit(req, res); + if (!octokit) { + return; + } + + + console.log('Branch:', branchName); + const branch = await prepareBranch(octokit, user, branchName) + + console.log(util.inspect(branch, false, null, false)); + + const validError = await validateSongXML(payload); + if (validError) { + return {errors: validError}; + } + + return mygraphql(` + mutation ($input: CreateCommitOnBranchInput!) { + createCommitOnBranch(input: $input) { + commit { + url + } + } + } + `, { + "input": { + "branch": { + "repositoryNameWithOwner": user + "/songbook", + "branchName": branchName + }, + "message": { + "headline": msg.trim() + }, + "fileChanges": { + "additions": [ + { + "path": file, + "contents": Buffer.from(payload).toString("base64") + } + ] + }, + "expectedHeadOid": branch.data.commit.sha + } + }); +} + +app.post('/users/:user/changes/:branchName[:]commit', async (req, res) => { + const branchName = req.params.branchName; + const msg = req.query.msg ? req.query.msg : "Kolejne zmiany"; + const file = req.query.file + const payload = req.body; + const commitResult = await commit(branchName, file, msg, payload, req, res); + if (commitResult && commitResult.createCommitOnBranch) { + res.send( + { + "status": "committed", + "commit": commitResult.createCommitOnBranch.commit + } + ); + console.log(":commit over") + } else { + res.send( + { + "status": "failure", + "errors": commitResult.errors + } + ); + } +}); + +app.post('/users/:user/changes/:branchName/:file([^$]+)', async (req, res) => { + const branchName = req.params.branchName; + const msg = req.query.msg ? req.query.msg.trim() : "Kolejne zmiany"; + const file = req.params.file.trim() + const payload = req.body; + const commitResult = await commit(branchName, file, msg, payload, req, res); + if (commitResult && commitResult.createCommitOnBranch) { + res.send( + { + "status": "committed", + "commit": commitResult.createCommitOnBranch.commit + } + ); + console.log(":commit over") + } else { + res.send( + { + "status": "failure", + "errors": commitResult.errors ? commitResult : "null" + } + ); + console.error(":commit failed", commitResult) + } +}); + +app.post('/users/:user/changes/:branchName/:file([^$]+)[:]commitAndPublish', async (req, res) => { + const branchName = req.params.branchName; + const msg = req.query.msg ? req.query.msg : "Kolejne zmiany"; + const file = req.params.file.trim() + const payload = req.body; + await commit(branchName, file, msg, payload, req, res); + return publish(res, req); +}); + +app.get('/users/:user/changes/:branchName/:file([^$]+)', async (req, res) => { + try { + const {octokit, user} = await newUserOctokit(req, res); + if (!octokit) return; + + const branchName = req.params.branchName; + console.log(branchName); + let cont = await octokit.rest.repos.getContent( + {owner: user, repo: 'songbook', path: req.params.file, ref: branchName}); + + // res.setHeader('Content-disposition', 'attachment; filename='+req.params.file); + res.setHeader('Content-type', 'text/xml') + res.send(new Buffer.from(cont.data.content, "base64").toString('utf-8')); + } catch (e) { + if (e instanceof RequestError && e.status===404) { + res.status(404); + res.send("Document not found"); + } else { + HandleError(e, res); + } + } finally { + res.end(); + } +}); + +app.get('/pr0xy', async (req, res) => { + let url = new URL(req.query.url); + let protocol = url.protocol==="http" ? http_ : https_ + if (url.host==="spiewnik.wywrota.pl") { + protocol.get(url, ans => { + res.status(ans.statusCode); + ans.on("data", chunk => { + res.write(chunk) + }) + ans.on("end", () => { + res.end() + }) + ans.on("close", () => { + res.end() + }) + }) + } else { + res.status(400).send('Source not supported') + } +}) + +app.get('/auth', async (req, res) => { + clearCookiesAndAuthRedirect(res, CHANGES_BASE_URL); +}); + +app.get('/redirect', async (req, res) => { + let red = req.cookies["redirectUrl"]; + console.log(`/redirect with REDIRECT URL: '${red}'`) + console.log("Waiting for octokit") + const {octokit} = await newUserOctokit(req, res); + console.log("Waited for octokit") + if (!octokit) { + console.log("No octokit unfortunetely..."); + return + } + console.log("octokit got... Clearing/redirecting again:", red); + res.clearCookie("redirectUrl"); + if (red && red.startsWith(REDIRECT_BASE_URL)) { + console.log("Avoiding loop - going to: ", CHANGES_BASE_URL); + res.redirect(CHANGES_BASE_URL); + } else if (red && stripProtocol(red).startsWith(stripProtocol(BASE_URL))) { + console.log("Internal our going there: ", red); + res.redirect(red); + } else { + console.log("External URL: ", red, "vs:", BASE_URL, "Sending to /auth"); + res.redirect(AUTH_URL); + // res.status(400); + // res.send("No redirect with REDIRECT_BASE_URL"); + } +}) + +app.get('/intro', async (req, res) => { + htmlPrefix(res); + res.write(` +

O edytowaniu piosenek w śpiewniku

+

Zachęcamy wszystkich do poprawiania piosenek w naszym śpiewniku i dopisywania nowych. + Staramy się, by było to jak najwygodniejsze, a rezultaty mogły być drukowane (PDF A4 i A5), czytane jako ebook + (EPUB) lub przeglądane na stronie. + Gdy twoje propozycje zmian zostaną zatwiedzone (dbamy o jakość), nowa wersja plików (wygenerowana w kilka minut) + będzie zawierała te poprawki. +

+ +

Dlatego przygotowaliśmy narzędzie umożliwiające wygodne edytowanie piosenek i dodawanie ich do śpiewnika. + Jedyny wymaganiem jest założenie bezpłatnego konta w serwisie github, + bo nasza baza piosenek jest przechowywana właśnie tam. +

+

Jeśli chcesz spróbować - przejdź do edycji – zostaniesz poproszony o zalogowanie lub przyznanie uprawnień naszej aplikacji.

+ +
+ O bezpieczeństwie + Możesz odczuwać uzasadniony dyskomfort (w szczególności jeśli masz swoje własne repozytoria githubowe), + by upoważniać jakąś aplikację, by miała do nich dostęp. Mogę Cię tylko zapewnić (ale musisz mi zaufać), + że ta aplikacja tylko: + +
+
+ Tryb samodzielny +

Jeżeli chcesz użyć lub zapoznać się z samym edytorem piosenek, to przejdź do: samodzielnego edytora. + Będziesz mógł/mogła tworzyć nowe piosenki lub otwierać pliki z Twojego dysku lub je zapisywać do plików. Możesz wtedy je przesłać mailem + lub samodzielnie użyć narzędzia 'git'. +

+
+

Problemy/uwagi możesz zgłaszać na: https://github.com/${GITHUB_OWNER}/songbook/issues

+ `); + htmlSuffix(res); +}); + +console.info("Registering songbook", "baseUrl:" + BASE_URL); +http('songbook', app); +console.info("Registered songbook", "baseUrl:" + BASE_URL); diff --git a/editor-github/listChanges.js b/editor-github/listChanges.js new file mode 100644 index 00000000..acf3c2af --- /dev/null +++ b/editor-github/listChanges.js @@ -0,0 +1,198 @@ +import {newUserOctokit, htmlPrefix, htmlSuffix, HandleError,GITHUB_OWNER} from './common.js' +import util from "util"; + +const SONGEDITOR_BRANCH_REGEXP=/^se-.*/g; + +export async function cleanupChanges(req, res) { + const {refs, diffs, user, octokit} = await getRefs(req, res); + // Let's delete empty & merged branches. + for (let i = 0; i < refs.length; ++i) { + let branch = refs[i]; + if (branch.name.match(SONGEDITOR_BRANCH_REGEXP)) { + const diff = await diffs.get(branch.name); + if (diff.data.files.length === 0) { + octokit.rest.git.deleteRef({owner: user, repo: 'songbook', "ref": "heads/" + branch.name}).then(); + continue; + } + if (branch.associatedPullRequests.edges.length > 0) { + let merged = true; + for (const edge of branch.associatedPullRequests.edges) { + if (!edge.node.closed || !edge.node.merged) { + merged = false; + } + } + if (merged) { + octokit.rest.git.deleteRef({owner: user, repo: 'songbook', "ref": "heads/" + branch.name}).then(); + } + } + } + } + res.redirect(`/users/${user}/changes`); +} + +async function getRefs(req, res) { + const {octokit, user, mygraphql} = await newUserOctokit(req, res); + if (!octokit) { + return null; + } + let r = await mygraphql(`query ($user:String!, $repo:String!){ + repository(owner:$user,name:$repo) { + url + parent { + id + name + owner { + id + login + } + } + refs(last: 100, refPrefix:"refs/heads/", orderBy: {field:TAG_COMMIT_DATE, direction:DESC}) { + nodes { + id + name + associatedPullRequests(last:5) { + edges { + node { + id + title + number + url + closed + closedAt + changedFiles + merged + } + } + } + target { + ... on Commit { + changedFilesIfAvailable, + commitSHA: oid + committedDate, + commitUrl, + url, + history(first: 2) { + nodes { + id + oid + commitUrl + messageHeadline + committedDate + } + } + } + } + } + } + } +}`, + { + user: user, + repo: "songbook" + }); + + const diffs = new Map(); + const refs = r.repository.refs.nodes; + + console.log("Refs size before sort", refs.length); + + refs.sort((a, b) => { + if (!a || !a.target || !a.target.committedDate) { + return 1; + } + if (!b || !b.target || !a.target.committedDate) { + return -1; + } + return -a.target.committedDate.localeCompare(b.target.committedDate) + }); + console.log("Refs size after sort", refs.length); + + for (let i = 0; i < refs.length; ++i) { + let branch = refs[i]; + console.log("Considering: " + branch.name, i, branch.name.match(SONGEDITOR_BRANCH_REGEXP)); + if (branch.name.match(SONGEDITOR_BRANCH_REGEXP)) { + console.log("Processing: " + branch.name, i); + diffs.set(branch.name, octokit.rest.repos.compareCommitsWithBasehead({ + owner: GITHUB_OWNER, + repo: 'songbook', + basehead: `main...${user}:songbook:${branch.name}` + })); + } + } + + return {refs, diffs, user, octokit, r}; +} + +export async function listChanges(req, res) { + try { + const {refs, diffs, user, r} = await getRefs(req, res); + console.log('2',refs); + + htmlPrefix(res); + res.write(` +

Rozpoczęte edycje

+ + +`); + + for (let i = 0; i < refs.length; ++i) { + let branch = refs[i]; + if (branch.name.match(SONGEDITOR_BRANCH_REGEXP)) { + const diff = await diffs.get(branch.name); + if (!diff || diff.data.files.length < 1) { + continue; + } + + res.write(``) + + res.write(``) + + + res.write(``); + + res.write(``); + + res.write(``); + res.write(``); + } + } + + res.write(` +
Plik Ostatnia zmiana Akcje Status recenzji Zaawansowane
${diff.data.files[0].status === 'added' ? 'Nowy:' : ''} ${diff.data.files[0].filename.replaceAll("songs/", "")}${new Date(branch.target.committedDate).toLocaleString("pl-PL")} + [Edytuj] + `); + if (branch.associatedPullRequests.edges.length > 0) { + let pr = branch.associatedPullRequests.edges[0].node; + res.write(`[W recenzji]`); + } else { + res.write(`[Wyślij do recenzji]`); + } + res.write(` + ${branch.name}
+ [branch]
+ [commit] +
+ + add_circle[Nowa zmiana] + +
+ +
+ +
+ [Magia pod spodem] +
${util.inspect(r, false, null, false)}
`); + + for (let [key, value] of diffs) { + res.write(`

diff: ${key}

${util.inspect(await value, false, null, false)}
\n`); + } + res.write(` +
`); + } catch (e) { + HandleError(e, res); + } finally { + if (!res.headersSent) { + htmlSuffix(res); + } + } +} \ No newline at end of file diff --git a/editor-github/local-env.txt b/editor-github/local-env.txt new file mode 100644 index 00000000..0e11fd33 --- /dev/null +++ b/editor-github/local-env.txt @@ -0,0 +1,5 @@ +export OAUTH_CLIENT_ID="c54f626adaeab3b0e0b6" +export BASE_URL="http://localhost:8080" +export EDITOR_DOMAIN="http://localhost:63342" +export EDITOR_PATH="/editor/index.html?" + diff --git a/editor-github/package-lock.json b/editor-github/package-lock.json new file mode 100644 index 00000000..aa7cfa8c --- /dev/null +++ b/editor-github/package-lock.json @@ -0,0 +1,6654 @@ +{ + "name": "editor-github", + "version": "1.0.0", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "editor-github", + "version": "1.0.0", + "license": "ISC", + "dependencies": { + "@google-cloud/functions-framework": "^3.1.3", + "@octokit/auth-app": "^4.0.9", + "@octokit/auth-oauth-app": "^5.0.5", + "@octokit/core": "^4.2.0", + "@octokit/graphql": "^5.0.5", + "@octokit/oauth-app": "^4.2.0", + "@octokit/oauth-authorization-url": "^5.0.0", + "@octokit/rest": "^19.0.7", + "cookie-parser": "^1.4.6", + "cors": "^2.8.5", + "http": "^0.0.1-security", + "https": "^1.0.0", + "libxmljs2": "^0.35.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "dependencies": { + "@babel/highlight": "^7.18.6" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "dependencies": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@google-cloud/functions-framework": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@google-cloud/functions-framework/-/functions-framework-3.1.3.tgz", + "integrity": "sha512-gNKEkbud/+QkS5+vn+UEvBX6L522OpyTOjM83/cR1JRhSsBTNn3kPe4L17ZQMjJHFvO9xIxF3FaPDTfOx1Umpw==", + "dependencies": { + "@types/express": "4.17.13", + "body-parser": "^1.18.3", + "cloudevents": "^6.0.0", + "express": "^4.16.4", + "minimist": "^1.2.7", + "on-finished": "^2.3.0", + "read-pkg-up": "^7.0.1", + "semver": "^7.3.5" + }, + "bin": { + "functions-framework": "build/src/main.js", + "functions-framework-nodejs": "build/src/main.js" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@npmcli/agent": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", + "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", + "license": "ISC", + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/agent/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "license": "ISC" + }, + "node_modules/@npmcli/fs": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", + "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", + "license": "ISC", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@octokit/auth-app": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/@octokit/auth-app/-/auth-app-4.0.9.tgz", + "integrity": "sha512-VFpKIXhHO+kVJtane5cEvdYPtjDKCOI0uKsRrsZfJP+uEu7rcPbQCLCcRKgyT+mUIzGr1IIOmwP/lFqSip1dXA==", + "dependencies": { + "@octokit/auth-oauth-app": "^5.0.0", + "@octokit/auth-oauth-user": "^2.0.0", + "@octokit/request": "^6.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^9.0.0", + "@types/lru-cache": "^5.1.0", + "deprecation": "^2.3.1", + "lru-cache": "^6.0.0", + "universal-github-app-jwt": "^1.1.1", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/auth-app/node_modules/@octokit/openapi-types": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz", + "integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==" + }, + "node_modules/@octokit/auth-app/node_modules/@octokit/types": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz", + "integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==", + "dependencies": { + "@octokit/openapi-types": "^16.0.0" + } + }, + "node_modules/@octokit/auth-oauth-app": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-app/-/auth-oauth-app-5.0.5.tgz", + "integrity": "sha512-UPX1su6XpseaeLVCi78s9droxpGtBWIgz9XhXAx9VXabksoF0MyI5vaa1zo1njyYt6VaAjFisC2A2Wchcu2WmQ==", + "dependencies": { + "@octokit/auth-oauth-device": "^4.0.0", + "@octokit/auth-oauth-user": "^2.0.0", + "@octokit/request": "^6.0.0", + "@octokit/types": "^9.0.0", + "@types/btoa-lite": "^1.0.0", + "btoa-lite": "^1.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/auth-oauth-app/node_modules/@octokit/openapi-types": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz", + "integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==" + }, + "node_modules/@octokit/auth-oauth-app/node_modules/@octokit/types": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz", + "integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==", + "dependencies": { + "@octokit/openapi-types": "^16.0.0" + } + }, + "node_modules/@octokit/auth-oauth-device": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-device/-/auth-oauth-device-4.0.3.tgz", + "integrity": "sha512-KPTx5nMntKjNZzzltO3X4T68v22rd7Cp/TcLJXQE2U8aXPcZ9LFuww9q9Q5WUNSu3jwi3lRwzfkPguRfz1R8Vg==", + "dependencies": { + "@octokit/oauth-methods": "^2.0.0", + "@octokit/request": "^6.0.0", + "@octokit/types": "^8.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/auth-oauth-user": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-user/-/auth-oauth-user-2.0.4.tgz", + "integrity": "sha512-HrbDzTPqz6GcGSOUkR+wSeF3vEqsb9NMsmPja/qqqdiGmlk/Czkxctc3KeWYogHonp62Ml4kjz2VxKawrFsadQ==", + "dependencies": { + "@octokit/auth-oauth-device": "^4.0.0", + "@octokit/oauth-methods": "^2.0.0", + "@octokit/request": "^6.0.0", + "@octokit/types": "^8.0.0", + "btoa-lite": "^1.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/auth-token": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.2.tgz", + "integrity": "sha512-pq7CwIMV1kmzkFTimdwjAINCXKTajZErLB4wMLYapR2nuB/Jpr66+05wOTZMSCBXP6n4DdDWT2W19Bm17vU69Q==", + "dependencies": { + "@octokit/types": "^8.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/auth-unauthenticated": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@octokit/auth-unauthenticated/-/auth-unauthenticated-3.0.3.tgz", + "integrity": "sha512-IyfLo1T5GmIC9+07hHGlD3gHtZI1Bona8PLhHXUnwcYDuZt0BhjlNJDYMoPG21C4r7v7+ZSxQHBKrGgkxpYb7A==", + "dependencies": { + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^8.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/core": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.0.tgz", + "integrity": "sha512-AgvDRUg3COpR82P7PBdGZF/NNqGmtMq2NiPqeSsDIeCfYFOZ9gddqWNQHnFdEUf+YwOj4aZYmJnlPp7OXmDIDg==", + "dependencies": { + "@octokit/auth-token": "^3.0.0", + "@octokit/graphql": "^5.0.0", + "@octokit/request": "^6.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^9.0.0", + "before-after-hook": "^2.2.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/core/node_modules/@octokit/openapi-types": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz", + "integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==" + }, + "node_modules/@octokit/core/node_modules/@octokit/types": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz", + "integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==", + "dependencies": { + "@octokit/openapi-types": "^16.0.0" + } + }, + "node_modules/@octokit/endpoint": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.3.tgz", + "integrity": "sha512-57gRlb28bwTsdNXq+O3JTQ7ERmBTuik9+LelgcLIVfYwf235VHbN9QNo4kXExtp/h8T423cR5iJThKtFYxC7Lw==", + "dependencies": { + "@octokit/types": "^8.0.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/graphql": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.5.tgz", + "integrity": "sha512-Qwfvh3xdqKtIznjX9lz2D458r7dJPP8l6r4GQkIdWQouZwHQK0mVT88uwiU2bdTU2OtT1uOlKpRciUWldpG0yQ==", + "dependencies": { + "@octokit/request": "^6.0.0", + "@octokit/types": "^9.0.0", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/graphql/node_modules/@octokit/openapi-types": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz", + "integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==" + }, + "node_modules/@octokit/graphql/node_modules/@octokit/types": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz", + "integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==", + "dependencies": { + "@octokit/openapi-types": "^16.0.0" + } + }, + "node_modules/@octokit/oauth-app": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@octokit/oauth-app/-/oauth-app-4.2.0.tgz", + "integrity": "sha512-gyGclT77RQMkVUEW3YBeAKY+LBSc5u3eC9Wn/Uwt3WhuKuu9mrV18EnNpDqmeNll+mdV02yyBROU29Tlili6gg==", + "dependencies": { + "@octokit/auth-oauth-app": "^5.0.0", + "@octokit/auth-oauth-user": "^2.0.0", + "@octokit/auth-unauthenticated": "^3.0.0", + "@octokit/core": "^4.0.0", + "@octokit/oauth-authorization-url": "^5.0.0", + "@octokit/oauth-methods": "^2.0.0", + "@types/aws-lambda": "^8.10.83", + "fromentries": "^1.3.1", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/oauth-authorization-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@octokit/oauth-authorization-url/-/oauth-authorization-url-5.0.0.tgz", + "integrity": "sha512-y1WhN+ERDZTh0qZ4SR+zotgsQUE1ysKnvBt1hvDRB2WRzYtVKQjn97HEPzoehh66Fj9LwNdlZh+p6TJatT0zzg==", + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/oauth-methods": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@octokit/oauth-methods/-/oauth-methods-2.0.4.tgz", + "integrity": "sha512-RDSa6XL+5waUVrYSmOlYROtPq0+cfwppP4VaQY/iIei3xlFb0expH6YNsxNrZktcLhJWSpm9uzeom+dQrXlS3A==", + "dependencies": { + "@octokit/oauth-authorization-url": "^5.0.0", + "@octokit/request": "^6.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^8.0.0", + "btoa-lite": "^1.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/openapi-types": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-14.0.0.tgz", + "integrity": "sha512-HNWisMYlR8VCnNurDU6os2ikx0s0VyEjDYHNS/h4cgb8DeOxQ0n72HyinUtdDVxJhFy3FWLGl0DJhfEWk3P5Iw==" + }, + "node_modules/@octokit/plugin-paginate-rest": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.0.0.tgz", + "integrity": "sha512-Sq5VU1PfT6/JyuXPyt04KZNVsFOSBaYOAq2QRZUwzVlI10KFvcbUo8lR258AAQL1Et60b0WuVik+zOWKLuDZxw==", + "dependencies": { + "@octokit/types": "^9.0.0" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "@octokit/core": ">=4" + } + }, + "node_modules/@octokit/plugin-paginate-rest/node_modules/@octokit/openapi-types": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz", + "integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==" + }, + "node_modules/@octokit/plugin-paginate-rest/node_modules/@octokit/types": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz", + "integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==", + "dependencies": { + "@octokit/openapi-types": "^16.0.0" + } + }, + "node_modules/@octokit/plugin-request-log": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz", + "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==", + "peerDependencies": { + "@octokit/core": ">=3" + } + }, + "node_modules/@octokit/plugin-rest-endpoint-methods": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-7.0.1.tgz", + "integrity": "sha512-pnCaLwZBudK5xCdrR823xHGNgqOzRnJ/mpC/76YPpNP7DybdsJtP7mdOwh+wYZxK5jqeQuhu59ogMI4NRlBUvA==", + "dependencies": { + "@octokit/types": "^9.0.0", + "deprecation": "^2.3.1" + }, + "engines": { + "node": ">= 14" + }, + "peerDependencies": { + "@octokit/core": ">=3" + } + }, + "node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/openapi-types": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz", + "integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==" + }, + "node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/types": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz", + "integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==", + "dependencies": { + "@octokit/openapi-types": "^16.0.0" + } + }, + "node_modules/@octokit/request": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-6.2.2.tgz", + "integrity": "sha512-6VDqgj0HMc2FUX2awIs+sM6OwLgwHvAi4KCK3mT2H2IKRt6oH9d0fej5LluF5mck1lRR/rFWN0YIDSYXYSylbw==", + "dependencies": { + "@octokit/endpoint": "^7.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^8.0.0", + "is-plain-object": "^5.0.0", + "node-fetch": "^2.6.7", + "universal-user-agent": "^6.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/request-error": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.2.tgz", + "integrity": "sha512-WMNOFYrSaX8zXWoJg9u/pKgWPo94JXilMLb2VManNOby9EZxrQaBe/QSC4a1TzpAlpxofg2X/jMnCyZgL6y7eg==", + "dependencies": { + "@octokit/types": "^8.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/rest": { + "version": "19.0.7", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.7.tgz", + "integrity": "sha512-HRtSfjrWmWVNp2uAkEpQnuGMJsu/+dBr47dRc5QVgsCbnIc1+GFEaoKBWkYG+zjrsHpSqcAElMio+n10c0b5JA==", + "dependencies": { + "@octokit/core": "^4.1.0", + "@octokit/plugin-paginate-rest": "^6.0.0", + "@octokit/plugin-request-log": "^1.0.4", + "@octokit/plugin-rest-endpoint-methods": "^7.0.0" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@octokit/types": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-8.0.0.tgz", + "integrity": "sha512-65/TPpOJP1i3K4lBJMnWqPUJ6zuOtzhtagDvydAWbEXpbFYA0oMKKyLb95NFZZP0lSh/4b6K+DQlzvYQJQQePg==", + "dependencies": { + "@octokit/openapi-types": "^14.0.0" + } + }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=14" + } + }, + "node_modules/@types/aws-lambda": { + "version": "8.10.107", + "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.107.tgz", + "integrity": "sha512-UTI9ZPw4VzvgYUJ7gUU77/ovGrIniRRWiMWxms5dP+1fsxNPeP/cOopQ0mxXPc9NvbeROcDUDN34m8eEhdEitg==" + }, + "node_modules/@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "dependencies": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "node_modules/@types/btoa-lite": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/btoa-lite/-/btoa-lite-1.0.0.tgz", + "integrity": "sha512-wJsiX1tosQ+J5+bY5LrSahHxr2wT+uME5UDwdN1kg4frt40euqA+wzECkmq4t5QbveHiJepfdThgQrPw6KiSlg==" + }, + "node_modules/@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/express": { + "version": "4.17.13", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", + "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", + "dependencies": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.18", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "node_modules/@types/express-serve-static-core": { + "version": "4.17.31", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz", + "integrity": "sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==", + "dependencies": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "node_modules/@types/jsonwebtoken": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-9.0.1.tgz", + "integrity": "sha512-c5ltxazpWabia/4UzhIoaDcIza4KViOQhdbjRlfcIGVnsE3c3brkz9Z+F/EeJIECOQP7W7US2hNE930cWWkPiw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==" + }, + "node_modules/@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==" + }, + "node_modules/@types/node": { + "version": "18.11.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.0.tgz", + "integrity": "sha512-IOXCvVRToe7e0ny7HpT/X9Rb2RYtElG1a+VshjwT00HxrM2dWBApHQoqsI6WiY7Q03vdf2bCrIGzVrkF/5t10w==" + }, + "node_modules/@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" + }, + "node_modules/@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "node_modules/@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" + }, + "node_modules/@types/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", + "dependencies": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "node_modules/abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "license": "MIT", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/agent-base/node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/agent-base/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "license": "MIT", + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "dependencies": { + "ajv": "^8.0.0" + }, + "peerDependencies": { + "ajv": "^8.0.0" + }, + "peerDependenciesMeta": { + "ajv": { + "optional": true + } + } + }, + "node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "license": "MIT" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/before-after-hook": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==" + }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "license": "MIT", + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "license": "MIT", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/btoa-lite": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/btoa-lite/-/btoa-lite-1.0.0.tgz", + "integrity": "sha512-gvW7InbIyF8AicrqWoptdW08pUxuhq8BEgowNajy9RhiE86fmGAGl+bLKo6oB8QP0CkqHLowfN0oJdKC/J6LbA==" + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-equal-constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", + "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==" + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "18.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", + "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", + "license": "ISC", + "dependencies": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/cacache/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "license": "ISC" + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/cloudevents": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/cloudevents/-/cloudevents-6.0.2.tgz", + "integrity": "sha512-mn/4EZnAbhfb/TghubK2jPnxYM15JRjf8LnWJtXidiVKi5ZCkd+p9jyBZbL57w7nRm6oFAzJhjxRLsXd/DNaBQ==", + "dependencies": { + "ajv": "^8.11.0", + "ajv-formats": "^2.1.1", + "util": "^0.12.4", + "uuid": "^8.3.2" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-parser": { + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.6.tgz", + "integrity": "sha512-z3IzaNjdwUC2olLIB5/ITd0/setiaFMLYiZJle7xg5Fe9KWAceil7xszYfHHBtDFYLSgJduS2Ty0P1uJdPDJeA==", + "dependencies": { + "cookie": "0.4.1", + "cookie-signature": "1.0.6" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/cookie-parser/node_modules/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cross-spawn/node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "license": "ISC" + }, + "node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "license": "MIT", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "license": "MIT", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "dependencies": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==" + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/detect-libc": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==", + "license": "Apache-2.0", + "engines": { + "node": ">=8" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "license": "MIT" + }, + "node_modules/ecdsa-sig-formatter": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "license": "MIT" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "license": "MIT", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "license": "MIT", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "license": "MIT", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "license": "MIT" + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/es-abstract": { + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", + "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/expand-template": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", + "license": "(MIT OR WTFPL)", + "engines": { + "node": ">=6" + } + }, + "node_modules/exponential-backoff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", + "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==", + "license": "Apache-2.0" + }, + "node_modules/express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", + "license": "MIT" + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/foreground-child": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fromentries": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", + "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==", + "license": "MIT" + }, + "node_modules/fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==", + "license": "MIT" + }, + "node_modules/glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "dependencies": { + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "node_modules/http": { + "version": "0.0.1-security", + "resolved": "https://registry.npmjs.org/http/-/http-0.0.1-security.tgz", + "integrity": "sha512-RnDvP10Ty9FxqOtPZuxtebw1j4L/WiqNMDtuc1YMH1XQm5TgDRaR1G9u8upL6KD1bXHSp9eSXo/ED+8Q7FAr+g==" + }, + "node_modules/http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", + "license": "BSD-2-Clause" + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/http-proxy-agent/node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/http-proxy-agent/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/https": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https/-/https-1.0.0.tgz", + "integrity": "sha512-4EC57ddXrkaF0x83Oj8sM6SLQHAWXw90Skqu2M4AEWENZ3F02dFJE/GARA8igO79tcgYqGrD7ae4f5L3um2lgg==", + "license": "ISC" + }, + "node_modules/https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/https-proxy-agent/node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/https-proxy-agent/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "BSD-3-Clause" + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", + "license": "ISC" + }, + "node_modules/internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "dependencies": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "license": "MIT", + "dependencies": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "dependencies": { + "has-bigints": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", + "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", + "license": "MIT" + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "dependencies": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dependencies": { + "has-symbols": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.9.tgz", + "integrity": "sha512-kfrlnTTn8pZkfpJMUgYD7YZ3qzeJgWUn8XfVYBARc4wnmNOmLbmuuaAs3q5fvB0UJOn6yHAKaGTPM7d6ezoD/A==", + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-abstract": "^1.20.0", + "for-each": "^0.3.3", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "license": "ISC", + "engines": { + "node": ">=16" + } + }, + "node_modules/jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "node_modules/jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", + "license": "MIT" + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "node_modules/json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "node_modules/jsonwebtoken": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.0.tgz", + "integrity": "sha512-tuGfYXxkQGDPnLJ7SibiQgVgeDgfbPq2k2ICcbgqW8WxWLBAxKQM/ZCu/IT8SOSwmaYl4dpTFCW5xZv7YbbWUw==", + "dependencies": { + "jws": "^3.2.2", + "lodash": "^4.17.21", + "ms": "^2.1.1", + "semver": "^7.3.8" + }, + "engines": { + "node": ">=12", + "npm": ">=6" + } + }, + "node_modules/jsonwebtoken/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", + "dependencies": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", + "dependencies": { + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/libxmljs2": { + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/libxmljs2/-/libxmljs2-0.35.0.tgz", + "integrity": "sha512-SpVopqn4YNydnLjkGfL6yQwzjlipmEnCCsVrD/0hQmdgsQWb5rVmSJxxjQltHIUTto29vgX+PhLjXoc+gMeABQ==", + "hasInstallScript": true, + "license": "MIT", + "dependencies": { + "bindings": "~1.5.0", + "nan": "~2.20.0", + "node-gyp": "^10.2.0", + "prebuild-install": "^7.1.2" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-fetch-happen": { + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", + "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", + "license": "ISC", + "dependencies": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "proc-log": "^4.2.0", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-collect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/minipass-fetch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", + "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", + "license": "MIT", + "dependencies": { + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + }, + "optionalDependencies": { + "encoding": "^0.1.13" + } + }, + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-flush/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-pipeline/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "license": "MIT", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "license": "MIT", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==", + "license": "MIT" + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/nan": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.20.0.tgz", + "integrity": "sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw==", + "license": "MIT" + }, + "node_modules/napi-build-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", + "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==", + "license": "MIT" + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/node-abi": { + "version": "3.68.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.68.0.tgz", + "integrity": "sha512-7vbj10trelExNjFSBm5kTvZXXa7pZyKWx9RCKIyqe6I9Ev3IzGpQoqBP3a+cOdxY+pWj6VkP28n/2wWysBHD/A==", + "license": "MIT", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-gyp": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.2.0.tgz", + "integrity": "sha512-sp3FonBAaFe4aYTcFdZUn2NYkbP7xroPGYvQmP4Nl5PxamznItBnNCgjrVTKrEfQynInMsJvZrdmqUnysCJ8rw==", + "license": "MIT", + "dependencies": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^10.3.10", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^4.1.0", + "semver": "^7.3.5", + "tar": "^6.2.1", + "which": "^4.0.0" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/nopt": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", + "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", + "license": "ISC", + "dependencies": { + "abbrev": "^2.0.0" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "dependencies": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "node_modules/normalize-package-data/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "license": "MIT", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "license": "BlueOak-1.0.0" + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "node_modules/path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "license": "ISC" + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "node_modules/prebuild-install": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.2.tgz", + "integrity": "sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==", + "license": "MIT", + "dependencies": { + "detect-libc": "^2.0.0", + "expand-template": "^2.0.3", + "github-from-package": "0.0.0", + "minimist": "^1.2.3", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^1.0.1", + "node-abi": "^3.3.0", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^4.0.0", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + }, + "bin": { + "prebuild-install": "bin.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/proc-log": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "license": "MIT", + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pump": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.2.tgz", + "integrity": "sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==", + "license": "MIT", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "license": "(BSD-2-Clause OR MIT OR Apache-2.0)", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "dependencies": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "dependencies": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/read-pkg/node_modules/type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "dependencies": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "license": "MIT", + "engines": { + "node": ">= 6.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", + "license": "MIT", + "dependencies": { + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + }, + "engines": { + "node": ">= 10.0.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz", + "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.1", + "debug": "^4.3.4", + "socks": "^2.8.3" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/socks-proxy-agent/node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/socks-proxy-agent/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "dependencies": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + }, + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "dependencies": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "node_modules/spdx-license-ids": { + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==" + }, + "node_modules/sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==", + "license": "BSD-3-Clause" + }, + "node_modules/ssri": { + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", + "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", + "license": "ISC", + "dependencies": { + "minipass": "^7.0.3" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "license": "MIT" + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", + "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", + "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "license": "ISC", + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "license": "MIT", + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/tar-fs/node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "license": "ISC" + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "license": "MIT", + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar/node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "license": "ISC", + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/tar/node_modules/fs-minipass/node_modules/minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "license": "ISC", + "engines": { + "node": ">=8" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "license": "Apache-2.0", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "license": "ISC", + "dependencies": { + "unique-slug": "^4.0.0" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4" + }, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/universal-github-app-jwt": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/universal-github-app-jwt/-/universal-github-app-jwt-1.1.1.tgz", + "integrity": "sha512-G33RTLrIBMFmlDV4u4CBF7dh71eWwykck4XgaxaIVeZKOYZRAAxvcGMRFTUclVY6xoUPQvO4Ne5wKGxYm/Yy9w==", + "dependencies": { + "@types/jsonwebtoken": "^9.0.0", + "jsonwebtoken": "^9.0.0" + } + }, + "node_modules/universal-user-agent": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", + "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==" + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util": { + "version": "0.12.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", + "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", + "dependencies": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "safe-buffer": "^5.1.2", + "which-typed-array": "^1.1.2" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "license": "ISC", + "dependencies": { + "isexe": "^3.1.1" + }, + "bin": { + "node-which": "bin/which.js" + }, + "engines": { + "node": "^16.13.0 || >=18.0.0" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.8.tgz", + "integrity": "sha512-Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==", + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-abstract": "^1.20.0", + "for-each": "^0.3.3", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "license": "MIT" + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + }, + "dependencies": { + "@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "requires": { + "@babel/highlight": "^7.18.6" + } + }, + "@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" + }, + "@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", + "requires": { + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + } + }, + "@google-cloud/functions-framework": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/@google-cloud/functions-framework/-/functions-framework-3.1.3.tgz", + "integrity": "sha512-gNKEkbud/+QkS5+vn+UEvBX6L522OpyTOjM83/cR1JRhSsBTNn3kPe4L17ZQMjJHFvO9xIxF3FaPDTfOx1Umpw==", + "requires": { + "@types/express": "4.17.13", + "body-parser": "^1.18.3", + "cloudevents": "^6.0.0", + "express": "^4.16.4", + "minimist": "^1.2.7", + "on-finished": "^2.3.0", + "read-pkg-up": "^7.0.1", + "semver": "^7.3.5" + } + }, + "@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "requires": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + } + }, + "@npmcli/agent": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.2.tgz", + "integrity": "sha512-OrcNPXdpSl9UX7qPVRWbmWMCSXrcDa2M9DvrbOTj7ao1S4PlqVFYv9/yLKMkrJKZ/V5A/kDBC690or307i26Og==", + "requires": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.3" + }, + "dependencies": { + "lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + } + } + }, + "@npmcli/fs": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.1.tgz", + "integrity": "sha512-q9CRWjpHCMIh5sVyefoD1cA7PkvILqCZsnSOEUUivORLjxCO/Irmue2DprETiNgEqktDBZaM1Bi+jrarx1XdCg==", + "requires": { + "semver": "^7.3.5" + } + }, + "@octokit/auth-app": { + "version": "4.0.9", + "resolved": "https://registry.npmjs.org/@octokit/auth-app/-/auth-app-4.0.9.tgz", + "integrity": "sha512-VFpKIXhHO+kVJtane5cEvdYPtjDKCOI0uKsRrsZfJP+uEu7rcPbQCLCcRKgyT+mUIzGr1IIOmwP/lFqSip1dXA==", + "requires": { + "@octokit/auth-oauth-app": "^5.0.0", + "@octokit/auth-oauth-user": "^2.0.0", + "@octokit/request": "^6.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^9.0.0", + "@types/lru-cache": "^5.1.0", + "deprecation": "^2.3.1", + "lru-cache": "^6.0.0", + "universal-github-app-jwt": "^1.1.1", + "universal-user-agent": "^6.0.0" + }, + "dependencies": { + "@octokit/openapi-types": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz", + "integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==" + }, + "@octokit/types": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz", + "integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==", + "requires": { + "@octokit/openapi-types": "^16.0.0" + } + } + } + }, + "@octokit/auth-oauth-app": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-app/-/auth-oauth-app-5.0.5.tgz", + "integrity": "sha512-UPX1su6XpseaeLVCi78s9droxpGtBWIgz9XhXAx9VXabksoF0MyI5vaa1zo1njyYt6VaAjFisC2A2Wchcu2WmQ==", + "requires": { + "@octokit/auth-oauth-device": "^4.0.0", + "@octokit/auth-oauth-user": "^2.0.0", + "@octokit/request": "^6.0.0", + "@octokit/types": "^9.0.0", + "@types/btoa-lite": "^1.0.0", + "btoa-lite": "^1.0.0", + "universal-user-agent": "^6.0.0" + }, + "dependencies": { + "@octokit/openapi-types": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz", + "integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==" + }, + "@octokit/types": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz", + "integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==", + "requires": { + "@octokit/openapi-types": "^16.0.0" + } + } + } + }, + "@octokit/auth-oauth-device": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-device/-/auth-oauth-device-4.0.3.tgz", + "integrity": "sha512-KPTx5nMntKjNZzzltO3X4T68v22rd7Cp/TcLJXQE2U8aXPcZ9LFuww9q9Q5WUNSu3jwi3lRwzfkPguRfz1R8Vg==", + "requires": { + "@octokit/oauth-methods": "^2.0.0", + "@octokit/request": "^6.0.0", + "@octokit/types": "^8.0.0", + "universal-user-agent": "^6.0.0" + } + }, + "@octokit/auth-oauth-user": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@octokit/auth-oauth-user/-/auth-oauth-user-2.0.4.tgz", + "integrity": "sha512-HrbDzTPqz6GcGSOUkR+wSeF3vEqsb9NMsmPja/qqqdiGmlk/Czkxctc3KeWYogHonp62Ml4kjz2VxKawrFsadQ==", + "requires": { + "@octokit/auth-oauth-device": "^4.0.0", + "@octokit/oauth-methods": "^2.0.0", + "@octokit/request": "^6.0.0", + "@octokit/types": "^8.0.0", + "btoa-lite": "^1.0.0", + "universal-user-agent": "^6.0.0" + } + }, + "@octokit/auth-token": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.2.tgz", + "integrity": "sha512-pq7CwIMV1kmzkFTimdwjAINCXKTajZErLB4wMLYapR2nuB/Jpr66+05wOTZMSCBXP6n4DdDWT2W19Bm17vU69Q==", + "requires": { + "@octokit/types": "^8.0.0" + } + }, + "@octokit/auth-unauthenticated": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@octokit/auth-unauthenticated/-/auth-unauthenticated-3.0.3.tgz", + "integrity": "sha512-IyfLo1T5GmIC9+07hHGlD3gHtZI1Bona8PLhHXUnwcYDuZt0BhjlNJDYMoPG21C4r7v7+ZSxQHBKrGgkxpYb7A==", + "requires": { + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^8.0.0" + } + }, + "@octokit/core": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.0.tgz", + "integrity": "sha512-AgvDRUg3COpR82P7PBdGZF/NNqGmtMq2NiPqeSsDIeCfYFOZ9gddqWNQHnFdEUf+YwOj4aZYmJnlPp7OXmDIDg==", + "requires": { + "@octokit/auth-token": "^3.0.0", + "@octokit/graphql": "^5.0.0", + "@octokit/request": "^6.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^9.0.0", + "before-after-hook": "^2.2.0", + "universal-user-agent": "^6.0.0" + }, + "dependencies": { + "@octokit/openapi-types": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz", + "integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==" + }, + "@octokit/types": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz", + "integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==", + "requires": { + "@octokit/openapi-types": "^16.0.0" + } + } + } + }, + "@octokit/endpoint": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.3.tgz", + "integrity": "sha512-57gRlb28bwTsdNXq+O3JTQ7ERmBTuik9+LelgcLIVfYwf235VHbN9QNo4kXExtp/h8T423cR5iJThKtFYxC7Lw==", + "requires": { + "@octokit/types": "^8.0.0", + "is-plain-object": "^5.0.0", + "universal-user-agent": "^6.0.0" + } + }, + "@octokit/graphql": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.5.tgz", + "integrity": "sha512-Qwfvh3xdqKtIznjX9lz2D458r7dJPP8l6r4GQkIdWQouZwHQK0mVT88uwiU2bdTU2OtT1uOlKpRciUWldpG0yQ==", + "requires": { + "@octokit/request": "^6.0.0", + "@octokit/types": "^9.0.0", + "universal-user-agent": "^6.0.0" + }, + "dependencies": { + "@octokit/openapi-types": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz", + "integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==" + }, + "@octokit/types": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz", + "integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==", + "requires": { + "@octokit/openapi-types": "^16.0.0" + } + } + } + }, + "@octokit/oauth-app": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@octokit/oauth-app/-/oauth-app-4.2.0.tgz", + "integrity": "sha512-gyGclT77RQMkVUEW3YBeAKY+LBSc5u3eC9Wn/Uwt3WhuKuu9mrV18EnNpDqmeNll+mdV02yyBROU29Tlili6gg==", + "requires": { + "@octokit/auth-oauth-app": "^5.0.0", + "@octokit/auth-oauth-user": "^2.0.0", + "@octokit/auth-unauthenticated": "^3.0.0", + "@octokit/core": "^4.0.0", + "@octokit/oauth-authorization-url": "^5.0.0", + "@octokit/oauth-methods": "^2.0.0", + "@types/aws-lambda": "^8.10.83", + "fromentries": "^1.3.1", + "universal-user-agent": "^6.0.0" + } + }, + "@octokit/oauth-authorization-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@octokit/oauth-authorization-url/-/oauth-authorization-url-5.0.0.tgz", + "integrity": "sha512-y1WhN+ERDZTh0qZ4SR+zotgsQUE1ysKnvBt1hvDRB2WRzYtVKQjn97HEPzoehh66Fj9LwNdlZh+p6TJatT0zzg==" + }, + "@octokit/oauth-methods": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@octokit/oauth-methods/-/oauth-methods-2.0.4.tgz", + "integrity": "sha512-RDSa6XL+5waUVrYSmOlYROtPq0+cfwppP4VaQY/iIei3xlFb0expH6YNsxNrZktcLhJWSpm9uzeom+dQrXlS3A==", + "requires": { + "@octokit/oauth-authorization-url": "^5.0.0", + "@octokit/request": "^6.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^8.0.0", + "btoa-lite": "^1.0.0" + } + }, + "@octokit/openapi-types": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-14.0.0.tgz", + "integrity": "sha512-HNWisMYlR8VCnNurDU6os2ikx0s0VyEjDYHNS/h4cgb8DeOxQ0n72HyinUtdDVxJhFy3FWLGl0DJhfEWk3P5Iw==" + }, + "@octokit/plugin-paginate-rest": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-6.0.0.tgz", + "integrity": "sha512-Sq5VU1PfT6/JyuXPyt04KZNVsFOSBaYOAq2QRZUwzVlI10KFvcbUo8lR258AAQL1Et60b0WuVik+zOWKLuDZxw==", + "requires": { + "@octokit/types": "^9.0.0" + }, + "dependencies": { + "@octokit/openapi-types": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz", + "integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==" + }, + "@octokit/types": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz", + "integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==", + "requires": { + "@octokit/openapi-types": "^16.0.0" + } + } + } + }, + "@octokit/plugin-request-log": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz", + "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==", + "requires": {} + }, + "@octokit/plugin-rest-endpoint-methods": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-7.0.1.tgz", + "integrity": "sha512-pnCaLwZBudK5xCdrR823xHGNgqOzRnJ/mpC/76YPpNP7DybdsJtP7mdOwh+wYZxK5jqeQuhu59ogMI4NRlBUvA==", + "requires": { + "@octokit/types": "^9.0.0", + "deprecation": "^2.3.1" + }, + "dependencies": { + "@octokit/openapi-types": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-16.0.0.tgz", + "integrity": "sha512-JbFWOqTJVLHZSUUoF4FzAZKYtqdxWu9Z5m2QQnOyEa04fOFljvyh7D3GYKbfuaSWisqehImiVIMG4eyJeP5VEA==" + }, + "@octokit/types": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.0.0.tgz", + "integrity": "sha512-LUewfj94xCMH2rbD5YJ+6AQ4AVjFYTgpp6rboWM5T7N3IsIF65SBEOVcYMGAEzO/kKNiNaW4LoWtoThOhH06gw==", + "requires": { + "@octokit/openapi-types": "^16.0.0" + } + } + } + }, + "@octokit/request": { + "version": "6.2.2", + "resolved": "https://registry.npmjs.org/@octokit/request/-/request-6.2.2.tgz", + "integrity": "sha512-6VDqgj0HMc2FUX2awIs+sM6OwLgwHvAi4KCK3mT2H2IKRt6oH9d0fej5LluF5mck1lRR/rFWN0YIDSYXYSylbw==", + "requires": { + "@octokit/endpoint": "^7.0.0", + "@octokit/request-error": "^3.0.0", + "@octokit/types": "^8.0.0", + "is-plain-object": "^5.0.0", + "node-fetch": "^2.6.7", + "universal-user-agent": "^6.0.0" + } + }, + "@octokit/request-error": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.2.tgz", + "integrity": "sha512-WMNOFYrSaX8zXWoJg9u/pKgWPo94JXilMLb2VManNOby9EZxrQaBe/QSC4a1TzpAlpxofg2X/jMnCyZgL6y7eg==", + "requires": { + "@octokit/types": "^8.0.0", + "deprecation": "^2.0.0", + "once": "^1.4.0" + } + }, + "@octokit/rest": { + "version": "19.0.7", + "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.7.tgz", + "integrity": "sha512-HRtSfjrWmWVNp2uAkEpQnuGMJsu/+dBr47dRc5QVgsCbnIc1+GFEaoKBWkYG+zjrsHpSqcAElMio+n10c0b5JA==", + "requires": { + "@octokit/core": "^4.1.0", + "@octokit/plugin-paginate-rest": "^6.0.0", + "@octokit/plugin-request-log": "^1.0.4", + "@octokit/plugin-rest-endpoint-methods": "^7.0.0" + } + }, + "@octokit/types": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@octokit/types/-/types-8.0.0.tgz", + "integrity": "sha512-65/TPpOJP1i3K4lBJMnWqPUJ6zuOtzhtagDvydAWbEXpbFYA0oMKKyLb95NFZZP0lSh/4b6K+DQlzvYQJQQePg==", + "requires": { + "@octokit/openapi-types": "^14.0.0" + } + }, + "@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "optional": true + }, + "@types/aws-lambda": { + "version": "8.10.107", + "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.107.tgz", + "integrity": "sha512-UTI9ZPw4VzvgYUJ7gUU77/ovGrIniRRWiMWxms5dP+1fsxNPeP/cOopQ0mxXPc9NvbeROcDUDN34m8eEhdEitg==" + }, + "@types/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==", + "requires": { + "@types/connect": "*", + "@types/node": "*" + } + }, + "@types/btoa-lite": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/btoa-lite/-/btoa-lite-1.0.0.tgz", + "integrity": "sha512-wJsiX1tosQ+J5+bY5LrSahHxr2wT+uME5UDwdN1kg4frt40euqA+wzECkmq4t5QbveHiJepfdThgQrPw6KiSlg==" + }, + "@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", + "requires": { + "@types/node": "*" + } + }, + "@types/express": { + "version": "4.17.13", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz", + "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==", + "requires": { + "@types/body-parser": "*", + "@types/express-serve-static-core": "^4.17.18", + "@types/qs": "*", + "@types/serve-static": "*" + } + }, + "@types/express-serve-static-core": { + "version": "4.17.31", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.31.tgz", + "integrity": "sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==", + "requires": { + "@types/node": "*", + "@types/qs": "*", + "@types/range-parser": "*" + } + }, + "@types/jsonwebtoken": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/@types/jsonwebtoken/-/jsonwebtoken-9.0.1.tgz", + "integrity": "sha512-c5ltxazpWabia/4UzhIoaDcIza4KViOQhdbjRlfcIGVnsE3c3brkz9Z+F/EeJIECOQP7W7US2hNE930cWWkPiw==", + "requires": { + "@types/node": "*" + } + }, + "@types/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==" + }, + "@types/mime": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-3.0.1.tgz", + "integrity": "sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==" + }, + "@types/node": { + "version": "18.11.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.0.tgz", + "integrity": "sha512-IOXCvVRToe7e0ny7HpT/X9Rb2RYtElG1a+VshjwT00HxrM2dWBApHQoqsI6WiY7Q03vdf2bCrIGzVrkF/5t10w==" + }, + "@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" + }, + "@types/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==" + }, + "@types/range-parser": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz", + "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==" + }, + "@types/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==", + "requires": { + "@types/mime": "*", + "@types/node": "*" + } + }, + "abbrev": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==" + }, + "accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "requires": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + } + }, + "agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "requires": { + "debug": "^4.3.4" + }, + "dependencies": { + "debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "requires": { + "ms": "^2.1.3" + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + } + } + }, + "aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } + }, + "ajv": { + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "requires": { + "fast-deep-equal": "^3.1.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2", + "uri-js": "^4.2.2" + } + }, + "ajv-formats": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz", + "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==", + "requires": { + "ajv": "^8.0.0" + } + }, + "ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==" + }, + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==" + }, + "available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==" + }, + "balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" + }, + "before-after-hook": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz", + "integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==" + }, + "bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "requires": { + "file-uri-to-path": "1.0.0" + } + }, + "bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "requires": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + } + }, + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "requires": { + "balanced-match": "^1.0.0" + } + }, + "btoa-lite": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/btoa-lite/-/btoa-lite-1.0.0.tgz", + "integrity": "sha512-gvW7InbIyF8AicrqWoptdW08pUxuhq8BEgowNajy9RhiE86fmGAGl+bLKo6oB8QP0CkqHLowfN0oJdKC/J6LbA==" + }, + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "buffer-equal-constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", + "integrity": "sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA==" + }, + "bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==" + }, + "cacache": { + "version": "18.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.4.tgz", + "integrity": "sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==", + "requires": { + "@npmcli/fs": "^3.1.0", + "fs-minipass": "^3.0.0", + "glob": "^10.2.2", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", + "minipass-collect": "^2.0.1", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "p-map": "^4.0.0", + "ssri": "^10.0.0", + "tar": "^6.1.11", + "unique-filename": "^3.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + } + } + }, + "call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" + }, + "cloudevents": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/cloudevents/-/cloudevents-6.0.2.tgz", + "integrity": "sha512-mn/4EZnAbhfb/TghubK2jPnxYM15JRjf8LnWJtXidiVKi5ZCkd+p9jyBZbL57w7nRm6oFAzJhjxRLsXd/DNaBQ==", + "requires": { + "ajv": "^8.11.0", + "ajv-formats": "^2.1.1", + "util": "^0.12.4", + "uuid": "^8.3.2" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "requires": { + "safe-buffer": "5.2.1" + } + }, + "content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + }, + "cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" + }, + "cookie-parser": { + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.6.tgz", + "integrity": "sha512-z3IzaNjdwUC2olLIB5/ITd0/setiaFMLYiZJle7xg5Fe9KWAceil7xszYfHHBtDFYLSgJduS2Ty0P1uJdPDJeA==", + "requires": { + "cookie": "0.4.1", + "cookie-signature": "1.0.6" + }, + "dependencies": { + "cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==" + } + } + }, + "cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==" + }, + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "dependencies": { + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "requires": { + "mimic-response": "^3.1.0" + } + }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" + }, + "define-properties": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "requires": { + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + } + }, + "depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==" + }, + "deprecation": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz", + "integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==" + }, + "destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==" + }, + "detect-libc": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.3.tgz", + "integrity": "sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==" + }, + "eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + }, + "ecdsa-sig-formatter": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + }, + "encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==" + }, + "encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "optional": true, + "requires": { + "iconv-lite": "^0.6.2" + }, + "dependencies": { + "iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + } + } + } + }, + "end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "requires": { + "once": "^1.4.0" + } + }, + "env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==" + }, + "err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==" + }, + "error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "requires": { + "is-arrayish": "^0.2.1" + } + }, + "es-abstract": { + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", + "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", + "requires": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "function.prototype.name": "^1.1.5", + "get-intrinsic": "^1.1.3", + "get-symbol-description": "^1.0.0", + "has": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "is-callable": "^1.2.7", + "is-negative-zero": "^2.0.2", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", + "is-string": "^1.0.7", + "is-weakref": "^1.0.2", + "object-inspect": "^1.12.2", + "object-keys": "^1.1.1", + "object.assign": "^4.1.4", + "regexp.prototype.flags": "^1.4.3", + "safe-regex-test": "^1.0.0", + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" + } + }, + "es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "requires": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + } + }, + "escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==" + }, + "expand-template": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==" + }, + "exponential-backoff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/exponential-backoff/-/exponential-backoff-3.1.1.tgz", + "integrity": "sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==" + }, + "express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "requires": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + } + }, + "fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" + }, + "finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + } + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "requires": { + "is-callable": "^1.1.3" + } + }, + "foreground-child": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", + "requires": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + } + }, + "forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==" + }, + "fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==" + }, + "fromentries": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz", + "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==" + }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "fs-minipass": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", + "requires": { + "minipass": "^7.0.3" + } + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "function.prototype.name": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.5.tgz", + "integrity": "sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "es-abstract": "^1.19.0", + "functions-have-names": "^1.2.2" + } + }, + "functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==" + }, + "get-intrinsic": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.3" + } + }, + "get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, + "github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==" + }, + "glob": { + "version": "10.4.5", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz", + "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==", + "requires": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + } + }, + "graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "requires": { + "function-bind": "^1.1.1" + } + }, + "has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "has-property-descriptors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", + "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "requires": { + "get-intrinsic": "^1.1.1" + } + }, + "has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" + }, + "has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "requires": { + "has-symbols": "^1.0.2" + } + }, + "hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "http": { + "version": "0.0.1-security", + "resolved": "https://registry.npmjs.org/http/-/http-0.0.1-security.tgz", + "integrity": "sha512-RnDvP10Ty9FxqOtPZuxtebw1j4L/WiqNMDtuc1YMH1XQm5TgDRaR1G9u8upL6KD1bXHSp9eSXo/ED+8Q7FAr+g==" + }, + "http-cache-semantics": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", + "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==" + }, + "http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "requires": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + } + }, + "http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "requires": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "dependencies": { + "debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "requires": { + "ms": "^2.1.3" + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + } + } + }, + "https": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/https/-/https-1.0.0.tgz", + "integrity": "sha512-4EC57ddXrkaF0x83Oj8sM6SLQHAWXw90Skqu2M4AEWENZ3F02dFJE/GARA8igO79tcgYqGrD7ae4f5L3um2lgg==" + }, + "https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "requires": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "dependencies": { + "debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "requires": { + "ms": "^2.1.3" + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + } + } + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + }, + "ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==" + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==" + }, + "indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" + }, + "inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "internal-slot": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "requires": { + "get-intrinsic": "^1.1.0", + "has": "^1.0.3", + "side-channel": "^1.0.4" + } + }, + "ip-address": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-9.0.5.tgz", + "integrity": "sha512-zHtQzGojZXTwZTHQqra+ETKd4Sn3vgi7uBmlPoXVWZqYvuKmtI0l/VZTjqGmJY9x88GGOaZ9+G9ES8hC4T4X8g==", + "requires": { + "jsbn": "1.1.0", + "sprintf-js": "^1.1.3" + } + }, + "ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==" + }, + "is-arguments": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz", + "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "requires": { + "has-bigints": "^1.0.1" + } + }, + "is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" + }, + "is-core-module": { + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.10.0.tgz", + "integrity": "sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg==", + "requires": { + "has": "^1.0.3" + } + }, + "is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" + }, + "is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==" + }, + "is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==" + }, + "is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-plain-object": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz", + "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==" + }, + "is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "requires": { + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" + } + }, + "is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "requires": { + "call-bind": "^1.0.2" + } + }, + "is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "requires": { + "has-tostringtag": "^1.0.0" + } + }, + "is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "requires": { + "has-symbols": "^1.0.2" + } + }, + "is-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.9.tgz", + "integrity": "sha512-kfrlnTTn8pZkfpJMUgYD7YZ3qzeJgWUn8XfVYBARc4wnmNOmLbmuuaAs3q5fvB0UJOn6yHAKaGTPM7d6ezoD/A==", + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-abstract": "^1.20.0", + "for-each": "^0.3.3", + "has-tostringtag": "^1.0.0" + } + }, + "is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "requires": { + "call-bind": "^1.0.2" + } + }, + "isexe": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==" + }, + "jackspeak": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", + "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", + "requires": { + "@isaacs/cliui": "^8.0.2", + "@pkgjs/parseargs": "^0.11.0" + } + }, + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + }, + "jsbn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-1.1.0.tgz", + "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==" + }, + "json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + }, + "json-schema-traverse": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" + }, + "jsonwebtoken": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-9.0.0.tgz", + "integrity": "sha512-tuGfYXxkQGDPnLJ7SibiQgVgeDgfbPq2k2ICcbgqW8WxWLBAxKQM/ZCu/IT8SOSwmaYl4dpTFCW5xZv7YbbWUw==", + "requires": { + "jws": "^3.2.2", + "lodash": "^4.17.21", + "ms": "^2.1.1", + "semver": "^7.3.8" + }, + "dependencies": { + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + } + } + }, + "jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", + "requires": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", + "requires": { + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" + } + }, + "libxmljs2": { + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/libxmljs2/-/libxmljs2-0.35.0.tgz", + "integrity": "sha512-SpVopqn4YNydnLjkGfL6yQwzjlipmEnCCsVrD/0hQmdgsQWb5rVmSJxxjQltHIUTto29vgX+PhLjXoc+gMeABQ==", + "requires": { + "bindings": "~1.5.0", + "nan": "~2.20.0", + "node-gyp": "^10.2.0", + "prebuild-install": "^7.1.2" + } + }, + "lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "requires": { + "p-locate": "^4.1.0" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "make-fetch-happen": { + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.1.tgz", + "integrity": "sha512-cKTUFc/rbKUd/9meOvgrpJ2WrNzymt6jfRDdwg5UCnVzv9dTpEj9JS5m3wtziXVCjluIXyL8pcaukYqezIzZQA==", + "requires": { + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", + "http-cache-semantics": "^4.1.1", + "is-lambda": "^1.0.1", + "minipass": "^7.0.2", + "minipass-fetch": "^3.0.0", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.3", + "proc-log": "^4.2.0", + "promise-retry": "^2.0.1", + "ssri": "^10.0.0" + } + }, + "media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==" + }, + "merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + }, + "methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==" + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + }, + "mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==" + }, + "mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "requires": { + "mime-db": "1.52.0" + } + }, + "mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==" + }, + "minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "requires": { + "brace-expansion": "^2.0.1" + } + }, + "minimist": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==" + }, + "minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==" + }, + "minipass-collect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-2.0.1.tgz", + "integrity": "sha512-D7V8PO9oaz7PWGLbCACuI1qEOsq7UKfLotx/C0Aet43fCUB/wfQ7DYeq2oR/svFJGYDHPr38SHATeaj/ZoKHKw==", + "requires": { + "minipass": "^7.0.3" + } + }, + "minipass-fetch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.5.tgz", + "integrity": "sha512-2N8elDQAtSnFV0Dk7gt15KHsS0Fyz6CbYZ360h0WTYV1Ty46li3rAXVOQj1THMNLdmrD9Vt5pBPtWtVkpwGBqg==", + "requires": { + "encoding": "^0.1.13", + "minipass": "^7.0.3", + "minipass-sized": "^1.0.3", + "minizlib": "^2.1.2" + } + }, + "minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "requires": { + "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + } + } + }, + "minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "requires": { + "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + } + } + }, + "minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "requires": { + "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + } + } + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + } + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + }, + "mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "nan": { + "version": "2.20.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.20.0.tgz", + "integrity": "sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw==" + }, + "napi-build-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", + "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" + }, + "negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==" + }, + "node-abi": { + "version": "3.68.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.68.0.tgz", + "integrity": "sha512-7vbj10trelExNjFSBm5kTvZXXa7pZyKWx9RCKIyqe6I9Ev3IzGpQoqBP3a+cOdxY+pWj6VkP28n/2wWysBHD/A==", + "requires": { + "semver": "^7.3.5" + } + }, + "node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "node-gyp": { + "version": "10.2.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.2.0.tgz", + "integrity": "sha512-sp3FonBAaFe4aYTcFdZUn2NYkbP7xroPGYvQmP4Nl5PxamznItBnNCgjrVTKrEfQynInMsJvZrdmqUnysCJ8rw==", + "requires": { + "env-paths": "^2.2.0", + "exponential-backoff": "^3.1.1", + "glob": "^10.3.10", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^4.1.0", + "semver": "^7.3.5", + "tar": "^6.2.1", + "which": "^4.0.0" + } + }, + "nopt": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.1.tgz", + "integrity": "sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==", + "requires": { + "abbrev": "^2.0.0" + } + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" + }, + "object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==" + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + }, + "object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + } + }, + "on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "requires": { + "ee-first": "1.1.1" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "requires": { + "wrappy": "1" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "requires": { + "p-limit": "^2.2.0" + } + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, + "package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==" + }, + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "requires": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + } + }, + "parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "path-scurry": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", + "requires": { + "lru-cache": "^10.2.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==" + } + } + }, + "path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + }, + "prebuild-install": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.2.tgz", + "integrity": "sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==", + "requires": { + "detect-libc": "^2.0.0", + "expand-template": "^2.0.3", + "github-from-package": "0.0.0", + "minimist": "^1.2.3", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^1.0.1", + "node-abi": "^3.3.0", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^4.0.0", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + } + }, + "proc-log": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/proc-log/-/proc-log-4.2.0.tgz", + "integrity": "sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==" + }, + "promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "requires": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + } + }, + "proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "requires": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + } + }, + "pump": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.2.tgz", + "integrity": "sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "requires": { + "side-channel": "^1.0.4" + } + }, + "range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" + }, + "raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "requires": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + }, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "requires": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + } + }, + "read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "requires": { + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" + }, + "dependencies": { + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" + } + } + }, + "read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "requires": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + } + }, + "readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" + } + }, + "require-from-string": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==" + }, + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==" + }, + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" + }, + "safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + } + }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "requires": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "dependencies": { + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + } + } + }, + "serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + } + }, + "setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" + }, + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "requires": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + } + }, + "signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==" + }, + "simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" + }, + "simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "requires": { + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==" + }, + "socks": { + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.8.3.tgz", + "integrity": "sha512-l5x7VUUWbjVFbafGLxPWkYsHIhEvmF85tbIeFZWc8ZPtoMyybuEhL7Jye/ooC4/d48FgOjSJXgsF/AJPYCW8Zw==", + "requires": { + "ip-address": "^9.0.5", + "smart-buffer": "^4.2.0" + } + }, + "socks-proxy-agent": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.4.tgz", + "integrity": "sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==", + "requires": { + "agent-base": "^7.1.1", + "debug": "^4.3.4", + "socks": "^2.8.3" + }, + "dependencies": { + "debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "requires": { + "ms": "^2.1.3" + } + }, + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + } + } + }, + "spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "requires": { + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + }, + "spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "requires": { + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" + } + }, + "spdx-license-ids": { + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==" + }, + "sprintf-js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz", + "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==" + }, + "ssri": { + "version": "10.0.6", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.6.tgz", + "integrity": "sha512-MGrFH9Z4NP9Iyhqn16sDtBpRRNJ0Y2hNa6D65h736fVSaPCHr4DM4sWUNvVaSuC+0OBGhwsrydQwmgfg5LncqQ==", + "requires": { + "minipass": "^7.0.3" + } + }, + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "requires": { + "safe-buffer": "~5.2.0" + } + }, + "string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "requires": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + } + }, + "string-width-cjs": { + "version": "npm:string-width@4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + } + } + }, + "string.prototype.trimend": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.5.tgz", + "integrity": "sha512-I7RGvmjV4pJ7O3kdf+LXFpVfdNOxtCW/2C8f6jNiW4+PQchwxkCDzlk1/7p+Wl4bqFIZeF47qAHXLuHHWKAxog==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + } + }, + "string.prototype.trimstart": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.5.tgz", + "integrity": "sha512-THx16TJCGlsN0o6dl2o6ncWUsdgnLRSA23rRE5pyGBw/mLr3Ej/R2LaqCtgP8VNMGZsvMWnf9ooZPyY2bHvUFg==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.19.5" + } + }, + "strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "requires": { + "ansi-regex": "^6.0.1" + } + }, + "strip-ansi-cjs": { + "version": "npm:strip-ansi@6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + } + } + }, + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" + }, + "tar": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", + "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^5.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "dependencies": { + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "requires": { + "minipass": "^3.0.0" + }, + "dependencies": { + "minipass": { + "version": "3.3.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", + "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", + "requires": { + "yallist": "^4.0.0" + } + } + } + }, + "minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==" + } + } + }, + "tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "requires": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + }, + "dependencies": { + "chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + } + } + }, + "tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "requires": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + } + }, + "toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" + }, + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" + }, + "type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "requires": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + } + }, + "unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "requires": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + } + }, + "unique-filename": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-3.0.0.tgz", + "integrity": "sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==", + "requires": { + "unique-slug": "^4.0.0" + } + }, + "unique-slug": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-4.0.0.tgz", + "integrity": "sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==", + "requires": { + "imurmurhash": "^0.1.4" + } + }, + "universal-github-app-jwt": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/universal-github-app-jwt/-/universal-github-app-jwt-1.1.1.tgz", + "integrity": "sha512-G33RTLrIBMFmlDV4u4CBF7dh71eWwykck4XgaxaIVeZKOYZRAAxvcGMRFTUclVY6xoUPQvO4Ne5wKGxYm/Yy9w==", + "requires": { + "@types/jsonwebtoken": "^9.0.0", + "jsonwebtoken": "^9.0.0" + } + }, + "universal-user-agent": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz", + "integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==" + }, + "unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" + }, + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "requires": { + "punycode": "^2.1.0" + } + }, + "util": { + "version": "0.12.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", + "integrity": "sha512-bxZ9qtSlGUWSOy9Qa9Xgk11kSslpuZwaxCg4sNIDj6FLucDab2JxnHwyNTCpHMtK1MjoQiWQ6DiUMZYbSrO+Sw==", + "requires": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "safe-buffer": "^5.1.2", + "which-typed-array": "^1.1.2" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==" + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "requires": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==" + }, + "webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" + }, + "whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "requires": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "which": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", + "requires": { + "isexe": "^3.1.1" + } + }, + "which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "requires": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + } + }, + "which-typed-array": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.8.tgz", + "integrity": "sha512-Jn4e5PItbcAHyLoRDwvPj1ypu27DJbtdYXUa5zsinrUx77Uvfb0cXwwnGMTn7cjUfhhqgVQnVJCwF+7cgU7tpw==", + "requires": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "es-abstract": "^1.20.0", + "for-each": "^0.3.3", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.9" + } + }, + "wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "requires": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==" + } + } + }, + "wrap-ansi-cjs": { + "version": "npm:wrap-ansi@7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "requires": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + } + }, + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "requires": { + "ansi-regex": "^5.0.1" + } + } + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } +} diff --git a/editor-github/package.json b/editor-github/package.json new file mode 100644 index 00000000..df704697 --- /dev/null +++ b/editor-github/package.json @@ -0,0 +1,29 @@ +{ + "name": "editor-github", + "version": "1.0.0", + "description": "", + "main": "index.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1", + "start": "source ./local-env.txt && source ./local-env-secret.txt && npx functions-framework --target=songbook" + }, + "keywords": [], + "author": "", + "license": "ISC", + "type": "module", + "dependencies": { + "@google-cloud/functions-framework": "^3.1.3", + "@octokit/auth-app": "^4.0.9", + "@octokit/auth-oauth-app": "^5.0.5", + "@octokit/core": "^4.2.0", + "@octokit/graphql": "^5.0.5", + "@octokit/oauth-app": "^4.2.0", + "@octokit/oauth-authorization-url": "^5.0.0", + "@octokit/rest": "^19.0.7", + "cookie-parser": "^1.4.6", + "cors": "^2.8.5", + "http": "^0.0.1-security", + "https": "^1.0.0", + "libxmljs2": "^0.35.0" + } +} diff --git a/editor-github/song.xsd b/editor-github/song.xsd new file mode 120000 index 00000000..dda73c3e --- /dev/null +++ b/editor-github/song.xsd @@ -0,0 +1 @@ +../_site/song.xsd \ No newline at end of file diff --git a/editor-github/static/editor.css b/editor-github/static/editor.css new file mode 100644 index 00000000..c9b7aa8c --- /dev/null +++ b/editor-github/static/editor.css @@ -0,0 +1,11 @@ +a#newChange { + + font-size: large; + + margin-top: 1em; + margin-bottom: 1em; + display: inline-block; + vertical-align: middle; + margin-left: 3em; + color: blue; +} \ No newline at end of file diff --git a/editor-github/template-env.txt b/editor-github/template-env.txt new file mode 100644 index 00000000..0592e0cd --- /dev/null +++ b/editor-github/template-env.txt @@ -0,0 +1,4 @@ +OAUTH_CLIENT_ID: "Ov23limEOGsQjSBFRMCv" +BASE_URL: "http://localhost:8080" +EDITOR_DOMAIN: "https://spiewaj.com" +EDITOR_PATH: "/editor" \ No newline at end of file diff --git a/editor/ch.css b/editor/ch.css new file mode 100644 index 00000000..fef33b2a --- /dev/null +++ b/editor/ch.css @@ -0,0 +1,66 @@ +span.cho { + display: inline-block; + position: relative; + left: 0px; + width:0px; + top: -2.9ex; + margin-top: 3ex; + overflow-wrap: normal; + hyphens: none; +} + +:host-context(song-row[important_over="true"]) span.cho { + width: revert; +} + +:host-context(song-row[important_over="true"]) span.cho span.ch { + font-weight: 900; /*bold is like 700*/ + font-size: x-small; +} + +:host-context(song-row[important_over="never"]) span.cho span.ch { + /*font-weight: 900; !*bold is like 700*!*/ + /*font-size: x-small;*/ + color: lightgray; +} + +:host-context(song-row[type="instr"]) span.cho span.ch { + /*font-weight: 900; !*bold is like 700*!*/ + /*font-size: x-small;*/ + display: none; /*that's gets overriden by the javascript per element code*/ + visibility: hidden; +} + +span.cho span.ch { + display: inline-block; + position: absolute; + left: 0px; + font-size: xx-small; + /*//width:30px;*/ + font-weight: lighter; + overflow-wrap: normal; + hyphens: none; + user-select: all; + cursor: grab; + width: fit-content; + overflow-wrap: normal; + font-weight: lighter; + background: rgba(255,255,255,0.5);; + white-space:nowrap; + font-family: Arial; +} + +span.cho input.ch { + width: 6em; + font-size: xx-small; + display: inline-block; + position: absolute; + left: 0px; + top: -0.12em; + font-weight: bold; + overflow-wrap: normal; + hyphens: none; + z-index: 5; + background-color: rgba(255,255,0,0.5); + border-width: 0px; +} \ No newline at end of file diff --git a/editor/ch.js b/editor/ch.js new file mode 100644 index 00000000..f7f5f327 --- /dev/null +++ b/editor/ch.js @@ -0,0 +1,192 @@ +import {findAncestor, nbsp} from "./utils.js"; + +const predefinedChords = ["A", "A2", "A4", "A7", "A7+", "A7/4", "A7/6", "Ais", + "B", "C", "C0", "C7", "C7+", "C9", "C9/5", "Cis", "Cis0", "D", "D2", "D4", + "D7", "D7+", "Dis", "E", "E0", "E5+", "E7", "E7/4", "F", "F0", "F7", "F7+", + "Fis", "Fis0", "Fis7", "G", "G0", "G6", "G7", "GC", "Gis", "H", "H6/7", "H7", + "a", "a6", "a7", "a7+", "a7/9", "ais", "b", "c", "cis", "cis7", "d", "d2", + "d6", "e", "e7", "e9", "f", "fis", "fis7", "g", "gis", "gis7", "h", "h0", + "h7", "h7/5-"]; + +const chtemplate = document.createElement('template'); + +export default class SongCh extends HTMLElement { + constructor() { + super(); + + const shadow = this.attachShadow({ mode: "closed" }); + shadow.appendChild(chtemplate.content.cloneNode(true)); + shadow.appendChild(predefinedChordsList()); + + this.ch = shadow.getElementById("ch"); + this.che = shadow.getElementById("che"); + this.cho = shadow.getElementById("cho"); + + this.ch.ondblclick = (event) => { + console.log("CH-double-click"); + this.setAttribute("editing", "true"); + this.updateEditing(); + }; + this.che.onchange = (event) => { + this.setAttribute("a", this.che.value); + this.verse.onChangedChord(); + }; + this.che.onblur = (event) => { + let storedParent = this.parentNode; + const nextSibling = this.nextSibling; + this.setAttribute("editing", "false"); + this.updateEditing(); + + this.select(storedParent, nextSibling); + //this.selectParent(storedParent); + } + this.ch.onmousedown = (event) => { + // We need to prevent the parent to catch the double click + // and intepret as chord creation. + event.stopPropagation(); + event.stopImmediatePropagation(); + } + this.cho.ondragstart = (event) => { + event.target.opacity = "0.2"; + event.dataTransfer.effectAllowed = "copyMove"; + event.dataTransfer.dropEffect = "move"; + event.dataTransfer.setData("songbook/chord", this.getAttribute("a")); + this.getSongBody().dropped = false; + } + + this.cho.ondragend = (event) => { + console.log("dragend", event.dataTransfer.dropEffect, event); + event.target.opacity = '1.0'; + if (/*this.getSongBody().dropped &&*/ event.dataTransfer.dropEffect == 'move') { + this.remove(); + } + } + + this.onkeydown = (e) => { + if (e.key == 'Enter' || e.key == 'Escape' || e.key == 'Tab') { + if (this.che.value.trim() == '' && this.parentNode) { + this.remove(); + return; + } + } + if (e.key == 'Enter') { + this.selectParent(this.parentNode); + e.preventDefault(); + } + } + this.updateEditing(); + } + + getSongBody() { + return this.closest('song-body'); + } + + isEditing() { + return this.getAttribute("editing")==="true"; + } + + select(row, toSelect) { + row.focus(); + let r = document.createRange(); + if (!toSelect) { + let t=document.createTextNode(nbsp); + row.appendChild(t); + r.selectNodeContents(t); + } else { + r.setStartBefore(toSelect); + } + document.getSelection().removeAllRanges(); + document.getSelection().addRange(r); + } + + selectParent(storedParent) { + this.select(storedParent, this.nextSibling); + } + + connectedCallback() { + const songBody = findAncestor(this, "SONG-BODY"); + this.row = findAncestor(this, "SONG-ROW"); + this.verse = findAncestor(this, "SONG-VERSE"); + new ResizeObserver(() => songBody.recomputeChordsOffsets()).observe(this.ch); + } + + recomputeOffset() { + if (this.offset) { + return this.offset; + } + if (this.previousSibling && this.previousSibling.nodeName==='SONG-CH') { + this.offset = this.previousSibling.recomputeOffset() + this.previousSibling.ch.getBoundingClientRect().width + 1; + } else { + this.offset = 0; + } + this.cho.style.left = this.offset + "px"; + return this.offset; + } + + resetOffset() { + this.offset=null; + } + + updateEditing() { + this.che.hidden=!this.isEditing(); + this.che.style.display = this.isEditing() ? 'inline' : 'none'; + this.ch.hidden=this.isEditing(); + this.ch.style.display = !this.isEditing() ? 'inline' : 'none'; + if (this.isEditing()) { + this.che.value = this.getAttribute("a"); + // this.che.select(); + this.che.focus(); + } + } + + focus(options) { + //super.focus(options); + if (this.isEditing()) { + this.che.focus(); + } + } + + static get observedAttributes() { + return ['a', "editing"]; + } + + attributeChangedCallback() { + this.updateChord(); + this.updateEditing(); + } + + updateChord() { + this.ch.innerText=this.getAttribute("a"); + this.che.value=this.getAttribute("a"); + } +} + +function predefinedChordsList() { + let dl = document.createElement("datalist"); + dl.id = "predefinedChords"; + predefinedChords.forEach( + (ch) => { + let opt = document.createElement("option"); + opt.value = ch; + dl.appendChild(opt); + } + ); + return dl; +} + +export function SongChInit() { + chtemplate.innerHTML = + `` + + ``+ + `` + + `` + + ``; + + customElements.define("song-ch", SongCh); +} + +export function createChord(chord) { + let ch = document.createElement("song-ch"); + ch.setAttribute('a', chord); + return ch; +} diff --git a/editor/conv/conv.js b/editor/conv/conv.js new file mode 100644 index 00000000..fac056a5 --- /dev/null +++ b/editor/conv/conv.js @@ -0,0 +1,180 @@ +function createChordElement(doc, chord) { + let ch = doc.createElementNS(NAMESPACE, 'ch'); + ch.setAttribute('a', chord); + return ch; +} + +function rowIsInstrumental(row) { + return row.textContent.trim().length === 0; +} + +function processRow(doc, span) { + let row = doc.createElementNS(NAMESPACE, 'row'); + row.setAttribute('important_over', 'false'); + // var hasChord = false; + let isChorus = false; + let bis = 1; + span.childNodes.forEach(node => { + //console.log("Processing:", node, node.nodeType, node.tagName) + if (node.nodeType === node.TEXT_NODE && node.textContent.length > 0) { + row.appendChild(doc.createTextNode(node.textContent.replaceAll(' ', ' ').replaceAll(/\s\s+/g, ' ').replaceAll("\n",""))); + } else if (node.nodeType === node.ELEMENT_NODE && node.tagName.toLowerCase() === 'code' && node.hasAttribute('data-local')) { + let chord = node.getAttribute('data-local'); + row.appendChild(createChordElement(doc, chord)); + //hasChord = true; + } else if (node.nodeType === node.ELEMENT_NODE && node.tagName.toLowerCase() === 'span' && node.classList.contains('text-muted')) { + if (node.textContent.toLowerCase().includes('ref')) { + isChorus = true + } + let extractBis = /.*x([0-9]+).*/g; + var res = extractBis.exec(node.textContent); + if (!res) { + let extractBis = /.*([0-9]+)x.*/g; + res = extractBis.exec(node.textContent); + } + + if (res && res.length>1) { + bis = parseInt(res[1], 10) + } + } + }); + if (rowIsInstrumental(row)) { + row.setAttribute("style", "instr") + } + if (row.innerHTML.trim() === '') { + return {row: null, isChorus, bis}; + } else { + return {row, isChorus, bis} + } +} + +export function interpretationContent2lyric(docHtml, docXml) { + let lyric = docXml.createElementNS(NAMESPACE, 'lyric'); + let blockElements = docHtml.querySelector('.interpretation-content'); + if (!blockElements) { + return null + } + blockElements.appendChild(docXml.createElementNS(NAMESPACE, "EOF")); + + let implicitRow = docXml.createElementNS(NAMESPACE, 'span'); + let br_cnt=0; + let currentBlock = docXml.createElementNS(NAMESPACE, "block"); + let currentBlockBis=1; + + currentBlock.setAttribute("type", "verse") + blockElements.childNodes.forEach(node => { + //console.debug("processing Node:", node.outerHTML) + + if (node.nodeType === node.ELEMENT_NODE && node.className === 'annotated-lyrics') { + let {row, isChorus, bis} = processRow(docXml, node) + if (row) { + br_cnt = 0; + if (bis === 1) { + currentBlock.appendChild(docXml.createTextNode("\n ")); + currentBlock.appendChild(row) + } else { + currentBlock.appendChild(docXml.createTextNode("\n ")); + let bisTag = docXml.createElementNS(NAMESPACE, "bis") + bisTag.setAttribute("times", bis) + bisTag.appendChild(row) + currentBlock.appendChild(bisTag) + } + } + if (isChorus) { + currentBlock.setAttribute("type", "chorus") + } + } else if (node.nodeType === node.ELEMENT_NODE && (node.tagName.toLowerCase() === 'br' || node.tagName.toLowerCase() === 'eof')) { + br_cnt++; + let {row, isChorus, bis} = processRow(docXml, implicitRow) + implicitRow=docXml.createElementNS(NAMESPACE, 'span'); + if (row) { + br_cnt = 1; + currentBlock.appendChild(docXml.createTextNode("\n ")); + currentBlock.appendChild(row) + } + if (isChorus) { + currentBlock.setAttribute("type", "chorus") + } + if (bis) { + currentBlockBis=bis + } + + if ((br_cnt > 1 || node.tagName.toLowerCase() === 'eof') && currentBlock.childNodes.length > 0) { + //console.log("Flushing...", br_cnt); + var instrumentalOnly = true + currentBlock.childNodes.forEach(row => { + if (!rowIsInstrumental(row)) { + instrumentalOnly = false + } + }) + if (currentBlockBis > 1) { + let bisTag = docXml.createElementNS(NAMESPACE, "bis") + bisTag.setAttribute("times", currentBlockBis) + bisTag.append(...currentBlock.childNodes) + currentBlock.appendChild(docXml.createTextNode("\n ")); + currentBlock.appendChild(bisTag) + } + if (instrumentalOnly && currentBlock.getAttribute('type') !== 'chorus') { + currentBlock.setAttribute('type', 'other') + } + lyric.appendChild(docXml.createTextNode("\n ")); + lyric.appendChild(currentBlock); + + currentBlock = docXml.createElementNS(NAMESPACE, "block"); + currentBlock.setAttribute("type", "verse") + br_cnt = 0; + } + } else { + implicitRow.appendChild(node.cloneNode(true)) + } + }); + + docXml.appendChild(lyric); + return lyric +} + +let NAMESPACE = "http://21wdh.staszic.waw.pl" + +export function html2xmlstr(html, window) { + let parser = new window.DOMParser(); + let docHtml = parser.parseFromString(html, 'text/html'); + let docXml = window.document.implementation.createDocument(NAMESPACE, '', null); + let song = docXml.createElementNS(NAMESPACE, "song"); + + let h1 = docHtml.querySelector('h1'); + let title = h1?.querySelector('strong')?.textContent; + song.setAttribute("title", title) + if (!h1 || !title) { + return null + } + let artist = [].reduce.call(h1?.childNodes, function (a, b) { + return a + (b.nodeType === 3 ? b.textContent.trim() : ''); + }, ''); + if (artist) { + //Zespół Reprezentacyjny + let artistTag = docXml.createElementNS(NAMESPACE, "artist"); + artistTag.setAttribute("type", "solo") + artistTag.innerHTML = artist + song.appendChild(artistTag) + } + + let metadatas = docHtml.querySelectorAll('div.song-metadata'); + let metadataTxt =''; + metadatas.forEach(metadata => { + metadata.textContent.split(/\r?\n|\r|\n/g).forEach(line => {metadataTxt += line.trim() ? line.trim() + '\n' : '';}) + }) + if (metadataTxt) { + let commentTag=docXml.createElementNS(NAMESPACE, "comment"); + commentTag.innerHTML = metadataTxt + song.appendChild(commentTag) + } + + let lyric = interpretationContent2lyric(docHtml, docXml) + if (!lyric) { + return null; + } + song.appendChild(lyric) + docXml.appendChild(song); + return new window.XMLSerializer().serializeToString(docXml).normalize(); +} + diff --git a/editor/conv/converter.js b/editor/conv/converter.js new file mode 100644 index 00000000..8e4eef91 --- /dev/null +++ b/editor/conv/converter.js @@ -0,0 +1,31 @@ + +import {JSDOM} from "jsdom"; +import { globSync } from "glob"; +import * as fs from 'fs'; +import * as path from 'path'; +import {html2xmlstr} from "./conv.js"; + +function convert(file) { + try { + let dom= new JSDOM(); + console.log(file) + let data = fs.readFileSync(file, 'utf8') + let xml = html2xmlstr(data, dom.window) + if (xml) { + fs.writeFileSync(file + ".xml", xml) + } + } catch (e) { + + } +} + +for (let i = 2; i < process.argv.length; i++) { + let p = process.argv[i] + if (fs.lstatSync(p).isDirectory()) { + let files = globSync(path.join(p, '**/*.html')) + files.forEach(file => convert(file)) + } else { + convert(p) + } +} + diff --git a/editor/conv/converter.sh b/editor/conv/converter.sh new file mode 100755 index 00000000..44f8470c --- /dev/null +++ b/editor/conv/converter.sh @@ -0,0 +1,2 @@ +find ../.. -name "*.html" | xargs -n 20 -P 10 node converter.js | nl + diff --git a/editor/conv/lyric.test.js b/editor/conv/lyric.test.js new file mode 100644 index 00000000..efc74f40 --- /dev/null +++ b/editor/conv/lyric.test.js @@ -0,0 +1,386 @@ +import { JSDOM} from 'jsdom'; +import { interpretationContent2lyric } from './conv.js'; + +function ic2l(html) { + const dom = new JSDOM(); + let parser = new dom.window.DOMParser(); + let docHtml = parser.parseFromString(html, 'text/html'); + let docXml = dom.window.document.implementation.createDocument('http://21wdh.staszic.waw.pl', '', null); + interpretationContent2lyric(docHtml, docXml) + return new dom.window.XMLSerializer().serializeToString(docXml); +} + +describe('interpretationContent2lyric tests', () => { + + test('simple', () => { + const html = ` +
+ ePod górkę mGam
+ Ale Cna to się pisaałam, tak czy siak
+
+ Czy na mCoje łzy ja zanajdę jeszcze cezas?    G 
+ Czy na łCzy ja znajdę cazas?
+
`; + const expectedXml = ` + + Pod górkę mam + Ale na to się pisałam, tak czy siak + + Czy na moje łzy ja znajdę jeszcze czas? + Czy na łzy ja znajdę czas? +`.trim(); + expect(ic2l(html).trim()).toBe(expectedXml); + }); + + test('szampan', () => { + const html = `
e G C a
+
+ePod górkę mGam
+Ale Cna to się pisaałam, tak czy siak
+eDo biegu, stGart
+Sama drCogę tę wybarałam, chciałam teak      G 
+
+Czy na mCoje łzy ja zanajdę jeszcze cezas?    G 
+Czy na łCzy ja znajdę cazas?
+
+
+ref:aSzampan wylewa się, tCoast mogę wznieść
+A ten geość mówi coś - oD co mu chodzi?
+aKtoś tu disuje mnie, Cniech gada co chce
+A ten geość mówi coś - sDpoko nie szkodzi
+
+
+aZamykam oczy,C byłeś uroczy
+eBędę udawać, żDe już nie boli
+aSzampan wylewa się, tCoast mogę wznieść
+A ten geość mówi coś - o Dco mu chodzi?
+
+a C e
+
+DO co mu chodzi?
+
+a C e D
+
+
+eI znów ten Gtyp
+On szepCcze pronto pronato, musisz iść e 
+A  brak mi sG
+Ten szCampan coś za łaatwo wchodził emi    G 
+Czy na pCożegnanie znaajdę jeszcze czeas?    G 
+Spojrzę sCię ostatni raaz
+
+
+
+ref:
+
+Sazampan wylewa się, toCast mogę wznieść
+A ten geość mówi coś - oD co mu chodzi?
+aKtoś tu disuje mnie, Cniech gada co chce
+A ten geość mówi coś - sDpoko nie szkodzi
+
+
+aZamykam oczy,C byłeś uroczy
+eBędę udawać, żDe już nie boli
+aSzampan wylewa się, tCoast mogę wznieść
+A ten geość mówi coś - o Dco mu chodzi?
+
+a C e
+
+DO co mu chodzi?
+
+a C e D
+
+
+
+
+
`; + const expectedXml = ` + + + + Pod górkę mam + Ale na to się pisałam, tak czy siak + Do biegu, start + Sama drogę tę wybrałam, chciałam tak + + Czy na moje łzy ja znajdę jeszcze czas? + Czy na łzy ja znajdę czas? + + Szampan wylewa się, toast mogę wznieść + A ten gość mówi coś - o co mu chodzi? + Ktoś tu disuje mnie, niech gada co chce + A ten gość mówi coś - spoko nie szkodzi + + Zamykam oczy, byłeś uroczy + Będę udawać, że już nie boli + Szampan wylewa się, toast mogę wznieść + A ten gość mówi coś - o co mu chodzi? + + + + O co mu chodzi? + + + + I znów ten typ + On szepcze pronto pronto, musisz iść + A brak mi s + Ten szampan coś za łatwo wchodził mi + Czy na pożegnanie znajdę jeszcze czas? + Spojrzę się ostatni raz + + Szampan wylewa się, toast mogę wznieść + A ten gość mówi coś - o co mu chodzi? + Ktoś tu disuje mnie, niech gada co chce + A ten gość mówi coś - spoko nie szkodzi + + Zamykam oczy, byłeś uroczy + Będę udawać, że już nie boli + Szampan wylewa się, toast mogę wznieść + A ten gość mówi coś - o co mu chodzi? + + + + O co mu chodzi? + + `.trim(); + expect(ic2l(html).trim()).toBe(expectedXml); + }); + + + test('Samodzielny wiersz z oznaczeniem powtórzeń "/x4"', () => { + const html = ` +
+ Tam gdzie kończy się świat jest ogromne morze /x4 +
`; + + const expectedXml = ` + + Tam gdzie kończy się świat jest ogromne morze + `.trim(); + + expect(ic2l(html).trim()).toBe(expectedXml); + }); + + test('Samodzielny wiersz z oznaczeniem powtórzeń "2x"', () => { + const html = ` +
+ Tam gdzie kończy się świat jest ogromne morze 2x +
`; + + const expectedXml = ` + + Tam gdzie kończy się świat jest ogromne morze + `.trim(); + + expect(ic2l(html).trim()).toBe(expectedXml); + }); + + test('Sosenka - bis', () => { + const html = `
Płynie łódka w morskiej toni,   a d
+Księżyc z dala blask swój śle,  E7 a
+Kiedy czule mi mówiła:
+Mój Jasieńku, kocham cię.
+
+ Hej, las, mówię wam,        d
+ Szumi las, mówię wam,       a
+ A w lesie tym sosenka,      E7 a
+ Podobała mi się
+ pełna kras
+ Marysia ma mileńka.
+ x2
+
+Czarne oczy mej dziewczyny
+Słodko do mnie śmiały się,
+Kiedy czule mi mówiła:
+Mój Jasieńku, całuj mnie.
+
+ Hej, las...
+
+Całuj mocno, całuj szczerze,
+Tysiąc razy, raz po raz.
+Może wtedy ci uwierzę,
+Że prawdziwa miłość w nas.
+
+ Hej, las...
+
+
+
`; + const expectedXml = ` + + Płynie łódka w morskiej toni, + Księżyc z dala blask swój śle, + Kiedy czule mi mówiła: + Mój Jasieńku, kocham cię. + + + Hej, las, mówię wam, + Szumi las, mówię wam, + A w lesie tym sosenka, + Podobała mi się + pełna kras + Marysia ma mileńka. + + Czarne oczy mej dziewczyny + Słodko do mnie śmiały się, + Kiedy czule mi mówiła: + Mój Jasieńku, całuj mnie. + + Hej, las... + + Całuj mocno, całuj szczerze, + Tysiąc razy, raz po raz. + Może wtedy ci uwierzę, + Że prawdziwa miłość w nas. + + Hej, las...`.trim(); + + expect(ic2l(html).trim()).toBe(expectedXml); + + }) + + + test('Grupa wierszy po oznaczeniu powtórzeń "x2"', () => { + const html = ` +
+ Zerowy wiersz
+
+ x2 + Pierwszy wiersz + Drugi wiersz +
`; + + const expectedXml = ` + + Zerowy wiersz + + + Pierwszy wiersz + Drugi wiersz + `.trim(); + + expect(ic2l(html).trim()).toBe(expectedXml); + }); + + test('Blok bez oznaczeń powtórzeń, bez tagu ', () => { + const html = ` +
+ Jeden wiersz bez powtórzeń + Drugi wiersz bez powtórzeń +
`; + + const expectedXml = ` + + Jeden wiersz bez powtórzeń + Drugi wiersz bez powtórzeń`.trim(); + + expect(ic2l(html).trim()).toBe(expectedXml); + }); + + test('Blok zawierający tylko wiersze instrumentalne, oznaczony jako type="other"', () => { + const html = ` +
+ G fis + li +
`; + + const expectedXml = ` + + + `.trim(); + + expect(ic2l(html).trim()).toBe(expectedXml); + }); + + test('Skin', () => { + const html = `
A Asus4 Dsus2 A
+ Skin jest całkiem łysy, włosków on nie nosi
+ Glaca w słońcu błyszczy jakby kombajn kosił
+ Pejsów nie ma skin, kitek nienawidzi
+ Boją się go Arabi, Murzyni i Żydzi
+ Najgorsza dla skina jest co roku zima
+ Jak on ją przetrzyma, przecież włosków nima
+
+ E A fis E
+ Ref: Nałóż czapkę skinie, skinie nałóż czapkę
+ Kiedy wicher wieje, gdy pogoda w kratkę
+ D E A
+ Uszka się przeziębią, kark zlodowacieje
+ Resztki myśli z mózgu wiaterek przewieje
+
+ Mamusia na drutach czapkę z wełny robi
+ Nałożysz ją skinie gdy się chłodniej zrobi
+ Wełna w główkę grzeje, ciepło jest pod czaszką
+ I komórki szare wówczas nie zamarzną
+
+ Nasz skin był odważny, czapki nie nałożył
+ Całą zimę biegał łysy, wiosny już nie dożył
+ Główka mu zsiniała, uszka odmroziły
+ Czaszka na pół pękła, szwy wewnątrz puściły
+
+ Ref...
+
+
+
`; + const expectedXml = ` + + + Skin jest całkiem łysy, włosków on nie nosi + Glaca w słońcu błyszczy jakby kombajn kosił + Pejsów nie ma skin, kitek nienawidzi + Boją się go Arabi, Murzyni i Żydzi + Najgorsza dla skina jest co roku zima + Jak on ją przetrzyma, przecież włosków nima + + + Nałóż czapkę skinie, skinie nałóż czapkę + Kiedy wicher wieje, gdy pogoda w kratkę + + Uszka się przeziębią, kark zlodowacieje + Resztki myśli z mózgu wiaterek przewieje + + Mamusia na drutach czapkę z wełny robi + Nałożysz ją skinie gdy się chłodniej zrobi + Wełna w główkę grzeje, ciepło jest pod czaszką + I komórki szare wówczas nie zamarzną + + Nasz skin był odważny, czapki nie nałożył + Całą zimę biegał łysy, wiosny już nie dożył + Główka mu zsiniała, uszka odmroziły + Czaszka na pół pękła, szwy wewnątrz puściły + + .. +`.trim(); + + expect(ic2l(html).trim()).toBe(expectedXml); + }); + + test('Naked', () => { + const html = `
La, la, la, la... G C G C
+
+ Po białym winie, mój Boże, C
+ Czerwone miałam oczy, G
+ On mnie prowadził nad morze G
+ I mierzwił mi warkoczyk. C
+ Splot był słoneczny, słoneczny był Split, F C
+ Nie był niegrzeczny i grzeczny nie był zbyt, F C
+ Mierzwił, czarował, całował G
+ I śpiewał aż po świt: C
+
+ Diri diri din, di diri din donda, C
` + expect(ic2l(html).trim()).toBe(` + + La, la, la, la... + + Po białym winie, mój Boże, + Czerwone miałam oczy, + On mnie prowadził nad morze + I mierzwił mi warkoczyk. + Splot był słoneczny, słoneczny był Split, + Nie był niegrzeczny i grzeczny nie był zbyt, + Mierzwił, czarował, całował + I śpiewał aż po świt: + + Diri diri din, di diri din donda, `); + }) +}) \ No newline at end of file diff --git a/editor/conv/package-lock.json b/editor/conv/package-lock.json new file mode 100644 index 00000000..d572c337 --- /dev/null +++ b/editor/conv/package-lock.json @@ -0,0 +1,4488 @@ +{ + "name": "conv", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "dependencies": { + "glob": "^11.0.0", + "jest": "^29.7.0", + "jsdom": "^25.0.1" + } + }, + "node_modules/@ampproject/remapping": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz", + "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==", + "license": "Apache-2.0", + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.25.7.tgz", + "integrity": "sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==", + "license": "MIT", + "dependencies": { + "@babel/highlight": "^7.25.7", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/compat-data": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.8.tgz", + "integrity": "sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/core": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.8.tgz", + "integrity": "sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg==", + "license": "MIT", + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/helper-compilation-targets": "^7.25.7", + "@babel/helper-module-transforms": "^7.25.7", + "@babel/helpers": "^7.25.7", + "@babel/parser": "^7.25.8", + "@babel/template": "^7.25.7", + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.8", + "convert-source-map": "^2.0.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.3", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" + } + }, + "node_modules/@babel/generator": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.7.tgz", + "integrity": "sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.25.7", + "@jridgewell/gen-mapping": "^0.3.5", + "@jridgewell/trace-mapping": "^0.3.25", + "jsesc": "^3.0.2" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-compilation-targets": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.7.tgz", + "integrity": "sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==", + "license": "MIT", + "dependencies": { + "@babel/compat-data": "^7.25.7", + "@babel/helper-validator-option": "^7.25.7", + "browserslist": "^4.24.0", + "lru-cache": "^5.1.1", + "semver": "^6.3.1" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-imports": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.25.7.tgz", + "integrity": "sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==", + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-module-transforms": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.7.tgz", + "integrity": "sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-module-imports": "^7.25.7", + "@babel/helper-simple-access": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", + "@babel/traverse": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/@babel/helper-plugin-utils": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.25.7.tgz", + "integrity": "sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-simple-access": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.25.7.tgz", + "integrity": "sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==", + "license": "MIT", + "dependencies": { + "@babel/traverse": "^7.25.7", + "@babel/types": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.7.tgz", + "integrity": "sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.7.tgz", + "integrity": "sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-option": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.25.7.tgz", + "integrity": "sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helpers": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.7.tgz", + "integrity": "sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==", + "license": "MIT", + "dependencies": { + "@babel/template": "^7.25.7", + "@babel/types": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.25.7.tgz", + "integrity": "sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==", + "license": "MIT", + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.7", + "chalk": "^2.4.2", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/highlight/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "license": "MIT", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "license": "MIT", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/@babel/highlight/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", + "license": "MIT" + }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@babel/highlight/node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/highlight/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "license": "MIT", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/@babel/parser": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.8.tgz", + "integrity": "sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.25.8" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-bigint": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", + "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-class-static-block": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", + "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-attributes": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.25.7.tgz", + "integrity": "sha512-AqVo+dguCgmpi/3mYBdu9lkngOBlQ2w2vnNpa6gfiCxQZLzV4ZbhsXitJ2Yblkoe1VQwtHSaNmIaGll/26YWRw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-import-meta": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", + "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-jsx": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.25.7.tgz", + "integrity": "sha512-ruZOnKO+ajVL/MVx+PwNBPOkrnXTXoWMtte1MBpegfCArhqOe3Bj52avVj1huLLxNKYKXYaSxZ2F+woK1ekXfw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-private-property-in-object": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", + "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.14.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", + "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.14.5" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/plugin-syntax-typescript": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.25.7.tgz", + "integrity": "sha512-rR+5FDjpCHqqZN2bzZm18bVYGaejGq5ZkpVCJLXor/+zlSrSoc4KWcHI0URVWjl/68Dyr1uwZUz/1njycEAv9g==", + "license": "MIT", + "dependencies": { + "@babel/helper-plugin-utils": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } + }, + "node_modules/@babel/template": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.7.tgz", + "integrity": "sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/types": "^7.25.7" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/traverse": { + "version": "7.25.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.7.tgz", + "integrity": "sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.25.7", + "@babel/generator": "^7.25.7", + "@babel/parser": "^7.25.7", + "@babel/template": "^7.25.7", + "@babel/types": "^7.25.7", + "debug": "^4.3.1", + "globals": "^11.1.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.25.8", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.8.tgz", + "integrity": "sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==", + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.25.7", + "@babel/helper-validator-identifier": "^7.25.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@bcoe/v8-coverage": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", + "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", + "license": "MIT" + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "license": "ISC", + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@istanbuljs/load-nyc-config": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", + "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", + "license": "ISC", + "dependencies": { + "camelcase": "^5.3.1", + "find-up": "^4.1.0", + "get-package-type": "^0.1.0", + "js-yaml": "^3.13.1", + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@istanbuljs/schema": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", + "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/console": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/core": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/core/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/core/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/environment": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", + "license": "MIT", + "dependencies": { + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", + "license": "MIT", + "dependencies": { + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/expect-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", + "license": "MIT", + "dependencies": { + "jest-get-type": "^29.6.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/fake-timers": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@sinonjs/fake-timers": "^10.0.2", + "@types/node": "*", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/globals": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/types": "^29.6.3", + "jest-mock": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/reporters": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", + "license": "MIT", + "dependencies": { + "@bcoe/v8-coverage": "^0.2.3", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "@types/node": "*", + "chalk": "^4.0.0", + "collect-v8-coverage": "^1.0.0", + "exit": "^0.1.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-instrument": "^6.0.0", + "istanbul-lib-report": "^3.0.0", + "istanbul-lib-source-maps": "^4.0.0", + "istanbul-reports": "^3.1.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "slash": "^3.0.0", + "string-length": "^4.0.1", + "strip-ansi": "^6.0.0", + "v8-to-istanbul": "^9.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/@jest/reporters/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/reporters/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/@jest/reporters/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@jest/reporters/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/@jest/reporters/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@jest/schemas": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", + "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", + "license": "MIT", + "dependencies": { + "@sinclair/typebox": "^0.27.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/source-map": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", + "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.18", + "callsites": "^3.0.0", + "graceful-fs": "^4.2.9" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-result": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "collect-v8-coverage": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/test-sequencer": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", + "license": "MIT", + "dependencies": { + "@jest/test-result": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/transform": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/types": "^29.6.3", + "@jridgewell/trace-mapping": "^0.3.18", + "babel-plugin-istanbul": "^6.1.1", + "chalk": "^4.0.0", + "convert-source-map": "^2.0.0", + "fast-json-stable-stringify": "^2.1.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "micromatch": "^4.0.4", + "pirates": "^4.0.4", + "slash": "^3.0.0", + "write-file-atomic": "^4.0.2" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jest/types": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", + "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^17.0.8", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/@jridgewell/gen-mapping": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz", + "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==", + "license": "MIT", + "dependencies": { + "@jridgewell/set-array": "^1.2.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.24" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/resolve-uri": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", + "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/set-array": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz", + "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==", + "license": "MIT", + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "license": "MIT" + }, + "node_modules/@jridgewell/trace-mapping": { + "version": "0.3.25", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz", + "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==", + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.1.0", + "@jridgewell/sourcemap-codec": "^1.4.14" + } + }, + "node_modules/@sinclair/typebox": { + "version": "0.27.8", + "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", + "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", + "license": "MIT" + }, + "node_modules/@sinonjs/commons": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", + "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", + "license": "BSD-3-Clause", + "dependencies": { + "type-detect": "4.0.8" + } + }, + "node_modules/@sinonjs/fake-timers": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", + "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", + "license": "BSD-3-Clause", + "dependencies": { + "@sinonjs/commons": "^3.0.0" + } + }, + "node_modules/@types/babel__core": { + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7", + "@types/babel__generator": "*", + "@types/babel__template": "*", + "@types/babel__traverse": "*" + } + }, + "node_modules/@types/babel__generator": { + "version": "7.6.8", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.8.tgz", + "integrity": "sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__template": { + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "node_modules/@types/babel__traverse": { + "version": "7.20.6", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.6.tgz", + "integrity": "sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==", + "license": "MIT", + "dependencies": { + "@babel/types": "^7.20.7" + } + }, + "node_modules/@types/graceful-fs": { + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/istanbul-lib-coverage": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", + "license": "MIT" + }, + "node_modules/@types/istanbul-lib-report": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-coverage": "*" + } + }, + "node_modules/@types/istanbul-reports": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", + "license": "MIT", + "dependencies": { + "@types/istanbul-lib-report": "*" + } + }, + "node_modules/@types/node": { + "version": "22.7.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz", + "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==", + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, + "node_modules/@types/stack-utils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", + "license": "MIT" + }, + "node_modules/@types/yargs": { + "version": "17.0.33", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.33.tgz", + "integrity": "sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==", + "license": "MIT", + "dependencies": { + "@types/yargs-parser": "*" + } + }, + "node_modules/@types/yargs-parser": { + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", + "license": "MIT" + }, + "node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "license": "MIT", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "license": "MIT", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ansi-regex": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz", + "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", + "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "license": "ISC", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "license": "MIT" + }, + "node_modules/babel-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", + "license": "MIT", + "dependencies": { + "@jest/transform": "^29.7.0", + "@types/babel__core": "^7.1.14", + "babel-plugin-istanbul": "^6.1.1", + "babel-preset-jest": "^29.6.3", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-plugin-istanbul": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", + "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", + "license": "BSD-3-Clause", + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@istanbuljs/load-nyc-config": "^1.0.0", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-instrument": "^5.0.4", + "test-exclude": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/babel-plugin-jest-hoist": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", + "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", + "license": "MIT", + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.1.14", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/babel-preset-current-node-syntax": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.1.0.tgz", + "integrity": "sha512-ldYss8SbBlWva1bs28q78Ju5Zq1F+8BrqBZZ0VFhLBvhh6lCpC2o3gDJi/5DRLs9FgYZCnmPYIVFU4lRXCkyUw==", + "license": "MIT", + "dependencies": { + "@babel/plugin-syntax-async-generators": "^7.8.4", + "@babel/plugin-syntax-bigint": "^7.8.3", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-class-static-block": "^7.14.5", + "@babel/plugin-syntax-import-attributes": "^7.24.7", + "@babel/plugin-syntax-import-meta": "^7.10.4", + "@babel/plugin-syntax-json-strings": "^7.8.3", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.3", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", + "@babel/plugin-syntax-optional-chaining": "^7.8.3", + "@babel/plugin-syntax-private-property-in-object": "^7.14.5", + "@babel/plugin-syntax-top-level-await": "^7.14.5" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/babel-preset-jest": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", + "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", + "license": "MIT", + "dependencies": { + "babel-plugin-jest-hoist": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "license": "MIT" + }, + "node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.0.tgz", + "integrity": "sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001663", + "electron-to-chromium": "^1.5.28", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.0" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + } + }, + "node_modules/bser": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", + "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", + "license": "Apache-2.0", + "dependencies": { + "node-int64": "^0.4.0" + } + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", + "license": "MIT" + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001668", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001668.tgz", + "integrity": "sha512-nWLrdxqCdblixUO+27JtGJJE/txpJlyUy5YN1u53wLZkP0emYCo5zgS6QYft7VUYR42LGgi/S5hdLZTrnyIddw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "CC-BY-4.0" + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/char-regex": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", + "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cjs-module-lexer": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.1.tgz", + "integrity": "sha512-cuSVIHi9/9E/+821Qjdvngor+xpnlwnuwIyZOaLmHBVdXL+gP+I6QQB9VkO7RI77YIcTV+S1W9AreJ5eN63JBA==", + "license": "MIT" + }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/cliui/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "license": "MIT" + }, + "node_modules/cliui/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", + "license": "MIT", + "engines": { + "iojs": ">= 1.0.0", + "node": ">= 0.12.0" + } + }, + "node_modules/collect-v8-coverage": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", + "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", + "license": "MIT" + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "license": "MIT" + }, + "node_modules/convert-source-map": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", + "license": "MIT" + }, + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "license": "MIT", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/cssstyle": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.1.0.tgz", + "integrity": "sha512-h66W1URKpBS5YMI/V8PyXvTMFT8SupJ1IzoIV8IeBC/ji8WVmrO8dGlTi+2dh6whmdk6BiKJLD/ZBkhWbcg6nA==", + "license": "MIT", + "dependencies": { + "rrweb-cssom": "^0.7.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/data-urls": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz", + "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==", + "license": "MIT", + "dependencies": { + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decimal.js": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", + "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", + "license": "MIT" + }, + "node_modules/dedent": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.3.tgz", + "integrity": "sha512-NHQtfOOW68WD8lgypbLA5oT+Bt0xXJhiYvoR6SmmNXZfpzOGXwdKWmcwG8N7PwVVWV3eF/68nmD9BaJSsTBhyQ==", + "license": "MIT", + "peerDependencies": { + "babel-plugin-macros": "^3.1.0" + }, + "peerDependenciesMeta": { + "babel-plugin-macros": { + "optional": true + } + } + }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/detect-newline": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", + "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/diff-sequences": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", + "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/eastasianwidth": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "license": "MIT" + }, + "node_modules/electron-to-chromium": { + "version": "1.5.38", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.38.tgz", + "integrity": "sha512-VbeVexmZ1IFh+5EfrYz1I0HTzHVIlJa112UEWhciPyeOcKJGeTv6N8WnG4wsQB81DGCaVEGhpSb6o6a8WYFXXg==", + "license": "ISC" + }, + "node_modules/emittery": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", + "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sindresorhus/emittery?sponsor=1" + } + }, + "node_modules/emoji-regex": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", + "license": "MIT" + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/error-ex": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "license": "MIT", + "dependencies": { + "is-arrayish": "^0.2.1" + } + }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "license": "BSD-2-Clause", + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/execa/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "license": "ISC" + }, + "node_modules/exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/expect": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", + "license": "MIT", + "dependencies": { + "@jest/expect-utils": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "license": "MIT" + }, + "node_modules/fb-watchman": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", + "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", + "license": "Apache-2.0", + "dependencies": { + "bser": "2.1.1" + } + }, + "node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/foreground-child": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz", + "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==", + "license": "ISC", + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/form-data": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-package-type": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", + "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", + "license": "MIT", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob": { + "version": "11.0.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-11.0.0.tgz", + "integrity": "sha512-9UiX/Bl6J2yaBbxKoEBRm4Cipxgok8kQYcOPEhScPwebu2I0HoQOuYdIO6S3hLuWoZgpDpwQZMzTFxgpkyT76g==", + "license": "ISC", + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^4.0.1", + "minimatch": "^10.0.0", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^2.0.0" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/html-encoding-sniffer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", + "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==", + "license": "MIT", + "dependencies": { + "whatwg-encoding": "^3.1.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "license": "MIT" + }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "license": "Apache-2.0", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "license": "MIT", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/import-local": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", + "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", + "license": "MIT", + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "license": "MIT", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", + "license": "MIT" + }, + "node_modules/is-core-module": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-generator-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "license": "MIT" + }, + "node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "license": "ISC" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=8" + } + }, + "node_modules/istanbul-lib-instrument": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", + "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==", + "license": "BSD-3-Clause", + "dependencies": { + "@babel/core": "^7.23.9", + "@babel/parser": "^7.23.9", + "@istanbuljs/schema": "^0.1.3", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^7.5.4" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "license": "BSD-3-Clause", + "dependencies": { + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "license": "BSD-3-Clause", + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-reports": { + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.7.tgz", + "integrity": "sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==", + "license": "BSD-3-Clause", + "dependencies": { + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/jackspeak": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.0.2.tgz", + "integrity": "sha512-bZsjR/iRjl1Nk1UkjGpAzLNfQtzuijhn2g+pbZb98HQ1Gk8vM9hfbxeMBP+M2/UUdwj0RqGG3mlvk2MsAqwvEw==", + "license": "BlueOak-1.0.0", + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", + "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/types": "^29.6.3", + "import-local": "^3.0.2", + "jest-cli": "^29.7.0" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-changed-files": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", + "license": "MIT", + "dependencies": { + "execa": "^5.0.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-circus": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "co": "^4.6.0", + "dedent": "^1.0.0", + "is-generator-fn": "^2.0.0", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "p-limit": "^3.1.0", + "pretty-format": "^29.7.0", + "pure-rand": "^6.0.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-cli": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", + "license": "MIT", + "dependencies": { + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "create-jest": "^29.7.0", + "exit": "^0.1.2", + "import-local": "^3.0.2", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "yargs": "^17.3.1" + }, + "bin": { + "jest": "bin/jest.js" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + }, + "peerDependenciesMeta": { + "node-notifier": { + "optional": true + } + } + }, + "node_modules/jest-config": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@jest/test-sequencer": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-jest": "^29.7.0", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "deepmerge": "^4.2.2", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "micromatch": "^4.0.4", + "parse-json": "^5.2.0", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "peerDependencies": { + "@types/node": "*", + "ts-node": ">=9.0.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "ts-node": { + "optional": true + } + } + }, + "node_modules/jest-config/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/jest-config/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/jest-config/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/jest-diff": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "diff-sequences": "^29.6.3", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-docblock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", + "license": "MIT", + "dependencies": { + "detect-newline": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-each": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-environment-node": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-get-type": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", + "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-haste-map": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/graceful-fs": "^4.1.3", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.9", + "jest-regex-util": "^29.6.3", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", + "micromatch": "^4.0.4", + "walker": "^1.0.8" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/jest-leak-detector": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", + "license": "MIT", + "dependencies": { + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-matcher-utils": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-message-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@jest/types": "^29.6.3", + "@types/stack-utils": "^2.0.0", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "micromatch": "^4.0.4", + "pretty-format": "^29.7.0", + "slash": "^3.0.0", + "stack-utils": "^2.0.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-mock": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "jest-util": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-pnp-resolver": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", + "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", + "license": "MIT", + "engines": { + "node": ">=6" + }, + "peerDependencies": { + "jest-resolve": "*" + }, + "peerDependenciesMeta": { + "jest-resolve": { + "optional": true + } + } + }, + "node_modules/jest-regex-util": { + "version": "29.6.3", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", + "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", + "license": "MIT", + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", + "license": "MIT", + "dependencies": { + "chalk": "^4.0.0", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-pnp-resolver": "^1.2.2", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "resolve": "^1.20.0", + "resolve.exports": "^2.0.0", + "slash": "^3.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-resolve-dependencies": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", + "license": "MIT", + "dependencies": { + "jest-regex-util": "^29.6.3", + "jest-snapshot": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runner": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", + "license": "MIT", + "dependencies": { + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "graceful-fs": "^4.2.9", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", + "p-limit": "^3.1.0", + "source-map-support": "0.5.13" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", + "license": "MIT", + "dependencies": { + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", + "@jest/source-map": "^29.6.3", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "cjs-module-lexer": "^1.0.0", + "collect-v8-coverage": "^1.0.0", + "glob": "^7.1.3", + "graceful-fs": "^4.2.9", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-regex-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "slash": "^3.0.0", + "strip-bom": "^4.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-runtime/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/jest-runtime/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/jest-runtime/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/jest-snapshot": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", + "license": "MIT", + "dependencies": { + "@babel/core": "^7.11.6", + "@babel/generator": "^7.7.2", + "@babel/plugin-syntax-jsx": "^7.7.2", + "@babel/plugin-syntax-typescript": "^7.7.2", + "@babel/types": "^7.3.3", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", + "@jest/types": "^29.6.3", + "babel-preset-current-node-syntax": "^1.0.0", + "chalk": "^4.0.0", + "expect": "^29.7.0", + "graceful-fs": "^4.2.9", + "jest-diff": "^29.7.0", + "jest-get-type": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "natural-compare": "^1.4.0", + "pretty-format": "^29.7.0", + "semver": "^7.5.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-snapshot/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/jest-util": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "@types/node": "*", + "chalk": "^4.0.0", + "ci-info": "^3.2.0", + "graceful-fs": "^4.2.9", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", + "license": "MIT", + "dependencies": { + "@jest/types": "^29.6.3", + "camelcase": "^6.2.0", + "chalk": "^4.0.0", + "jest-get-type": "^29.6.3", + "leven": "^3.1.0", + "pretty-format": "^29.7.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-validate/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/jest-watcher": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", + "license": "MIT", + "dependencies": { + "@jest/test-result": "^29.7.0", + "@jest/types": "^29.6.3", + "@types/node": "*", + "ansi-escapes": "^4.2.1", + "chalk": "^4.0.0", + "emittery": "^0.13.1", + "jest-util": "^29.7.0", + "string-length": "^4.0.1" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", + "license": "MIT", + "dependencies": { + "@types/node": "*", + "jest-util": "^29.7.0", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "license": "MIT" + }, + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "license": "MIT", + "dependencies": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/jsdom": { + "version": "25.0.1", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-25.0.1.tgz", + "integrity": "sha512-8i7LzZj7BF8uplX+ZyOlIz86V6TAsSs+np6m1kpW9u0JWi4z/1t+FzcK1aek+ybTnAC4KhBL4uXCNT0wcUIeCw==", + "license": "MIT", + "dependencies": { + "cssstyle": "^4.1.0", + "data-urls": "^5.0.0", + "decimal.js": "^10.4.3", + "form-data": "^4.0.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.2", + "https-proxy-agent": "^7.0.5", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.12", + "parse5": "^7.1.2", + "rrweb-cssom": "^0.7.1", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^5.0.0", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0", + "ws": "^8.18.0", + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "canvas": "^2.11.2" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, + "node_modules/jsesc": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.0.2.tgz", + "integrity": "sha512-xKqzzWXDttJuOcawBt4KnKHHIf5oQ/Cxax+0PWFG+DFDgHNAdi+TXECADI+RYiFUMmx8792xsMbbgXj4CwnP4g==", + "license": "MIT", + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "license": "MIT" + }, + "node_modules/json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "license": "MIT", + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/kleur": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/leven": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", + "license": "MIT" + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "license": "ISC", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/make-dir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", + "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", + "license": "MIT", + "dependencies": { + "semver": "^7.5.3" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/makeerror": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", + "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", + "license": "BSD-3-Clause", + "dependencies": { + "tmpl": "1.0.5" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", + "license": "MIT" + }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/minimatch": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.0.1.tgz", + "integrity": "sha512-ethXTt3SGGR+95gudmqJ1eNhRO7eGEGIgYA9vnPatK4/etz2MEVDno5GMCibdMTuBMyElzIlgxMna3K94XDIDQ==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/minipass": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", + "license": "ISC", + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "license": "MIT" + }, + "node_modules/node-int64": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", + "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", + "license": "MIT" + }, + "node_modules/node-releases": { + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", + "license": "MIT" + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "license": "MIT", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/nwsapi": { + "version": "2.2.13", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.13.tgz", + "integrity": "sha512-cTGB9ptp9dY9A5VbMSe7fQBcl/tt22Vcqdq8+eN93rblOuE0aCFu4aZ2vMwct/2t+lFnosm8RkQW1I0Omb1UtQ==", + "license": "MIT" + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "license": "MIT", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "license": "MIT", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-locate/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/package-json-from-dist": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", + "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==", + "license": "BlueOak-1.0.0" + }, + "node_modules/parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "license": "MIT", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/parse5": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.2.0.tgz", + "integrity": "sha512-ZkDsAOcxsUMZ4Lz5fVciOehNcJ+Gb8gTzcA4yl3wnc273BAybYWrQ+Ks/OjCjSEpjvQkDSeZbybK9qj2VHHdGA==", + "license": "MIT", + "dependencies": { + "entities": "^4.5.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "license": "MIT" + }, + "node_modules/path-scurry": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.0.tgz", + "integrity": "sha512-ypGJsmGtdXUOeM5u93TyeIEfEhM6s+ljAhrk5vAvSx8uyY/02OvrZnA0YNGUrPXfpJMgI1ODd3nwz8Npx4O4cg==", + "license": "BlueOak-1.0.0", + "dependencies": { + "lru-cache": "^11.0.0", + "minipass": "^7.1.2" + }, + "engines": { + "node": "20 || >=22" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/path-scurry/node_modules/lru-cache": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.0.1.tgz", + "integrity": "sha512-CgeuL5uom6j/ZVrg7G/+1IXqRY8JXX4Hghfy5YE0EhoYQWvndP1kufu58cmZLNIDKnRhZrXfdS9urVWx98AipQ==", + "license": "ISC", + "engines": { + "node": "20 || >=22" + } + }, + "node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pirates": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", + "license": "MIT", + "engines": { + "node": ">= 6" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "license": "MIT", + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/pretty-format": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", + "license": "MIT", + "dependencies": { + "@jest/schemas": "^29.6.3", + "ansi-styles": "^5.0.0", + "react-is": "^18.0.0" + }, + "engines": { + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + } + }, + "node_modules/pretty-format/node_modules/ansi-styles": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", + "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/prompts": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", + "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", + "license": "MIT", + "dependencies": { + "kleur": "^3.0.3", + "sisteransi": "^1.0.5" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/pure-rand": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.1.0.tgz", + "integrity": "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/dubzzz" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/fast-check" + } + ], + "license": "MIT" + }, + "node_modules/react-is": { + "version": "18.3.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", + "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", + "license": "MIT" + }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "license": "MIT", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "license": "MIT", + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve.exports": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", + "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/rrweb-cssom": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.7.1.tgz", + "integrity": "sha512-TrEMa7JGdVm0UThDJSx7ddw5nVm3UJS9o9CCIZ72B1vSyEZoziDqBYP3XIoi/12lKrJR8rE3jeFHMok2F/Mnsg==", + "license": "MIT" + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "license": "MIT" + }, + "node_modules/saxes": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", + "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", + "license": "ISC", + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=v12.22.7" + } + }, + "node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "license": "MIT", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "license": "ISC", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sisteransi": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", + "license": "MIT" + }, + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.13", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", + "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", + "license": "MIT", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "license": "BSD-3-Clause" + }, + "node_modules/stack-utils": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", + "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", + "license": "MIT", + "dependencies": { + "escape-string-regexp": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-length": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", + "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", + "license": "MIT", + "dependencies": { + "char-regex": "^1.0.2", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/string-length/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-length/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "license": "MIT", + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "license": "MIT" + }, + "node_modules/string-width-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-bom": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "license": "MIT" + }, + "node_modules/test-exclude": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", + "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", + "license": "ISC", + "dependencies": { + "@istanbuljs/schema": "^0.1.2", + "glob": "^7.1.4", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/test-exclude/node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/test-exclude/node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/test-exclude/node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tldts": { + "version": "6.1.51", + "resolved": "https://registry.npmjs.org/tldts/-/tldts-6.1.51.tgz", + "integrity": "sha512-33lfQoL0JsDogIbZ8fgRyvv77GnRtwkNE/MOKocwUgPO1WrSfsq7+vQRKxRQZai5zd+zg97Iv9fpFQSzHyWdLA==", + "license": "MIT", + "dependencies": { + "tldts-core": "^6.1.51" + }, + "bin": { + "tldts": "bin/cli.js" + } + }, + "node_modules/tldts-core": { + "version": "6.1.51", + "resolved": "https://registry.npmjs.org/tldts-core/-/tldts-core-6.1.51.tgz", + "integrity": "sha512-bu9oCYYWC1iRjx+3UnAjqCsfrWNZV1ghNQf49b3w5xE8J/tNShHTzp5syWJfwGH+pxUgTTLUnzHnfuydW7wmbg==", + "license": "MIT" + }, + "node_modules/tmpl": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", + "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", + "license": "BSD-3-Clause" + }, + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/tough-cookie": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-5.0.0.tgz", + "integrity": "sha512-FRKsF7cz96xIIeMZ82ehjC3xW2E+O2+v11udrDYewUbszngYhsGa8z6YUMMzO9QJZzzyd0nGGXnML/TReX6W8Q==", + "license": "BSD-3-Clause", + "dependencies": { + "tldts": "^6.1.32" + }, + "engines": { + "node": ">=16" + } + }, + "node_modules/tr46": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz", + "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==", + "license": "MIT", + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/type-detect": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", + "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", + "license": "MIT", + "engines": { + "node": ">=4" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "license": "(MIT OR CC0-1.0)", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/undici-types": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "license": "MIT" + }, + "node_modules/update-browserslist-db": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "escalade": "^3.2.0", + "picocolors": "^1.1.0" + }, + "bin": { + "update-browserslist-db": "cli.js" + }, + "peerDependencies": { + "browserslist": ">= 4.21.0" + } + }, + "node_modules/v8-to-istanbul": { + "version": "9.3.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", + "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", + "license": "ISC", + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.12", + "@types/istanbul-lib-coverage": "^2.0.1", + "convert-source-map": "^2.0.0" + }, + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/w3c-xmlserializer": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", + "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==", + "license": "MIT", + "dependencies": { + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/walker": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", + "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", + "license": "Apache-2.0", + "dependencies": { + "makeerror": "1.0.12" + } + }, + "node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + } + }, + "node_modules/whatwg-encoding": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", + "integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==", + "license": "MIT", + "dependencies": { + "iconv-lite": "0.6.3" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/whatwg-mimetype": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz", + "integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==", + "license": "MIT", + "engines": { + "node": ">=18" + } + }, + "node_modules/whatwg-url": { + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.0.0.tgz", + "integrity": "sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==", + "license": "MIT", + "dependencies": { + "tr46": "^5.0.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "license": "MIT" + }, + "node_modules/wrap-ansi-cjs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "license": "ISC" + }, + "node_modules/write-file-atomic": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", + "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", + "license": "ISC", + "dependencies": { + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.7" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + } + }, + "node_modules/write-file-atomic/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "license": "ISC" + }, + "node_modules/ws": { + "version": "8.18.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz", + "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", + "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", + "license": "Apache-2.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "license": "MIT" + }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "license": "ISC" + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "license": "ISC", + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "license": "MIT" + }, + "node_modules/yargs/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + } +} diff --git a/editor/conv/package.json b/editor/conv/package.json new file mode 100644 index 00000000..fba6de82 --- /dev/null +++ b/editor/conv/package.json @@ -0,0 +1,14 @@ +{ + "scripts": { + "test": "node --experimental-vm-modules node_modules/jest/bin/jest.js" + }, + "dependencies": { + "glob": "^11.0.0", + "jest": "^29.7.0", + "jsdom": "^25.0.1" + }, + "type": "module", + "jest": { + "transform": {} + } +} diff --git a/editor/conv/song.test.js b/editor/conv/song.test.js new file mode 100644 index 00000000..dcd29836 --- /dev/null +++ b/editor/conv/song.test.js @@ -0,0 +1,68 @@ +import { html2xmlstr } from './conv.js'; +import {JSDOM} from "jsdom"; + +describe('html2xmlstr tests', () => { + + test('simple', () => { + let html = ` + + + + Ballada o smutnym skinie - Big Cyc, Chwyty na gitarę + + + + + + + + +
+
+ +
+ +
+
+
+
+

+ Ballada o smutnym skinie + + Big Cyc +

+ + + + + +
+
+ ePod górkę mGam
+ Ale Cna to się pisaałam, tak czy siak
+
+ Czy na mCoje łzy ja zanajdę jeszcze cezas?    G 
+ Czy na łCzy ja znajdę cazas?
+
`; + + expect(html2xmlstr(html, new JSDOM().window).trim()).toBe( `Big CycKapodaster: Trzeci Próg +Trudność: Średni +Strojenie: klasyczne (E A D G H e) +Tonacja: F + + + Pod górkę mam + Ale na to się pisałam, tak czy siak + + Czy na moje łzy ja znajdę jeszcze czas? + Czy na łzy ja znajdę czas?` + ); + }) + +}) \ No newline at end of file diff --git a/editor/favicon.png b/editor/favicon.png new file mode 100644 index 00000000..49e17372 Binary files /dev/null and b/editor/favicon.png differ diff --git a/editor/index.html b/editor/index.html new file mode 100644 index 00000000..8bb5441c --- /dev/null +++ b/editor/index.html @@ -0,0 +1,170 @@ + + + + + + + + + + + + + +
+

Edytor piosenek

+ +
+ + diff --git a/editor/licenses.txt b/editor/licenses.txt new file mode 100644 index 00000000..38086c73 --- /dev/null +++ b/editor/licenses.txt @@ -0,0 +1 @@ +favicon.png originates from https://commons.wikimedia.org/wiki/File:Breathe-folder-music.svg (Creative Common). \ No newline at end of file diff --git a/editor/package.json b/editor/package.json new file mode 100644 index 00000000..71603183 --- /dev/null +++ b/editor/package.json @@ -0,0 +1,6 @@ +{ + "type": "module", + "devDependencies": { + "jest": "^29.7.0" + } +} diff --git a/editor/sanitize.js b/editor/sanitize.js new file mode 100644 index 00000000..871efa8c --- /dev/null +++ b/editor/sanitize.js @@ -0,0 +1,497 @@ +import {createChord} from './ch.js'; +import {findAncestor,nbsp,removeAllChildren} from './utils.js'; +import {instrRowPhrase, isRowInstr, makeRowInstrumental} from './songbody.js'; + +const spaceRegex = / /g; +const nbspsRegexp = /\u00a0+/g; + +function nestToBody(parent) { + let p = findAncestor(parent, "SONG-BODY"); + if (p) { return p; } + let body = document.createElement("song-body"); + body.contentEditable='true'; + parent.appendChild(body); + return body; +} + +function setRandomId(node) { + if (!node.id || node.id.trim()==='') { + node.id="v"+Math.floor(Math.random() * 100000000); + } +} + +export function createVerse(type="verse", blocknb=null) { + let verse = document.createElement("song-verse"); + if (!type || (type!='chorus' && type!='other')) { + type = "verse" + } + verse.setAttribute("type", type); + if (blocknb) { + verse.setAttribute("blocknb", blocknb); + } + setRandomId(verse); + return verse; +} + +function nestToVerse(parent) { + let p = findAncestor(parent, "SONG-VERSE"); + if (p) { return p; } + + let newParent = nestToBody(parent); + let verse = createVerse(); + newParent.appendChild(verse); + return verse; +} + +function nestToVerseOrBis(parent) { + let p = findAncestor(parent, "SONG-BIS"); + if (p) { return p; } + return nestToVerse(parent); +} + +function createRow(important_over="false", instrumental=false, sidechords) { + let row = document.createElement("song-row"); + if (!instrumental) { + if (!important_over) { important_over="false"; } + row.setAttribute("important_over", important_over); + if (sidechords) { + row.setAttribute("sidechords", sidechords); + } + } else { + row.setAttribute("type", "instr"); + } + return row; +} + +function nestToRows(parent) { + let p = findAncestor(parent, "SONG-ROWS"); + if (p) { + return p; + } else { + let newParent = nestToVerseOrBis(parent); + let rows = document.createElement("song-rows"); + newParent.appendChild(rows); + return rows; + } +} + +function nestToRow(parent, forceNew=false) { + if (parent.nodeName === "SONG-ROW" && !forceNew) { + return parent; + } else { + let newParent = nestToRows(parent); + let row = createRow(); + newParent.appendChild(row); + return row; + } +} + +function traverseChilds(parent, childNodes) { + let ns = []; + childNodes.forEach( (n) => { ns.push(n); } ); + let newparent = parent; + for (let i=0; i < ns.length; ++i ) { + newparent = traverse(newparent, ns[i]); + } +} + +// // parent - is sanitized parent of tag (song, song-verse(div), song-bis(div), song-row(div)) +// // the call responsibility is to process the node and put it into parent. +function traverse(parent, node) { + //console.log("Traversing...", node.nodeName, node, node.style); + if (node instanceof Element) { + node.removeAttribute("style"); + } + switch (node.nodeName.toUpperCase()) { + + // BASIC + case '#TEXT' : { + if (node.parentNode.nodeName!='SONG-ROW' && node.nodeValue.replace(/[\n\t\r ]/g,"")==='') { + // console.log("trimmed!!!"); + node.remove(); + return parent; + } + textNodeReplaceAll(node, " ", nbsp); + let newParent = nestToRow(parent); + newParent.appendChild(node); + return newParent; + } + case 'SONG-CH': { + removeAllChildren(node); + let newParent = nestToRow(parent); + newParent.appendChild(node); + return newParent; + } + case 'SONG-ROW': { + let newParent = nestToRows(parent); + newParent.appendChild(node); + traverseChilds(node, node.childNodes); + if (isRowInstr(node)) { + makeRowInstrumental(node); + } + return newParent; + } + case 'SONG-ROWS': { + let newParent = nestToVerseOrBis(parent); + newParent.appendChild(node); + traverseChilds(node, node.childNodes); + return newParent; + } + case 'SONG-BIS': { + let newParent = nestToRows(parent); + newParent.appendChild(node); + traverseChilds(node, node.childNodes); + return newParent; + } + case 'SONG-VERSE': { + let newParent = nestToBody(parent); + newParent.appendChild(node); + setRandomId(node); + traverseChilds(node, node.childNodes); + return newParent; + } + case 'SONG-BODY': { + let newParent = nestToBody(parent); + traverseChilds(newParent, node.childNodes); + return newParent; + } + + case 'CODE': { + if (node.className=='an') { + // Wywrota: C + let ch = createChord(node.attributes['data-local'].value); + node.remove(); + let newParent = nestToRow(parent); + newParent.appendChild(ch); + return newParent; + } + break; + } + + case 'SPAN': { + if (node.className=='annotated-lyrics') { + // Wywrota: Kaszubskie noce, anad nami lśniące + let newParent = nestToRow(parent, true); + traverseChilds(newParent, node.childNodes); + node.remove(); + return newParent; + } + break; + } + + case 'BR': { + let newParent = nestToRow(parent, true); + node.remove(); + return newParent; + } + + case 'P': { + let newParent = nestToRow(parent, true); + traverseChilds(newParent, node.childNodes); + node.remove(); + return newParent; + } + + case 'CH': { + removeAllChildren(node); + let newParent = nestToRow(parent); + newParent.appendChild(createChord(node.getAttribute("a"))); + return newParent; + } + case 'BIS': { + let newParent = nestToRows(parent); + let newBis = document.createElement("song-bis"); + if (node.hasAttribute("times")) { + newBis.setAttribute("x", node.getAttribute("times")); + } else { + newBis.setAttribute("x", 2); + } + newParent.appendChild(newBis); + let newRows = document.createElement("song-rows"); + newBis.appendChild(newRows); + traverseChilds(newRows, node.childNodes); + return newParent; + } + case 'BLOCK': { + let newParent = nestToBody(parent); + let newVerse = createVerse(node.getAttribute("type")); + let newRows = document.createElement("song-rows"); + newVerse.appendChild(newRows); + traverseChilds(newRows, node.childNodes); + node.remove(); + newParent.appendChild(newVerse); + return newParent; + } + case 'BLOCKLINK': { + let newParent = nestToBody(parent); + let newVerse = createVerse(null, node.getAttribute("blocknb")); + let newRows = document.createElement("song-rows"); + newVerse.appendChild(newRows); + node.remove(); + newParent.appendChild(newVerse); + return newParent; + } + case 'ROW': { + let newParent = nestToRows(parent); + let newRow = createRow( + node.getAttribute("important_over"), + node.getAttribute("type")==="instr", + node.getAttribute("sidechords")); + newParent.appendChild(newRow); + traverseChilds(newRow, node.childNodes); + node.remove(); + if (newRow.getAttribute("type") === "instr") { + makeRowInstrumental(newRow); + } + return newParent; + } + } + traverseChilds(parent, node.childNodes); + node.remove(); + return parent; +} + +function sanitizeRow(row) { + row.normalize(); + if (!row.textContent.startsWith(nbsp)) { + if (row.childNodes.length > 0) { + row.insertBefore(document.createTextNode(nbsp), row.childNodes[0]); + } else { + row.appendChild(document.createTextNode(nbsp)); + } + } + row.normalize(); +} + +function isEmptyRow(el) { + const empty = el != null && + el.nodeName==='SONG-ROW' && + el.getElementsByTagName("song-ch").length==0 && + (el.textContent.trim()==='' || el.textContent.trim()===nbsp); + console.log("Row", el, "is empty:", empty) + return empty +} + +function normalize(str) { + return str.trim().replace(nbsp," "); +} + +export function SplitVerseFromRow(row) { + let songVerse = findAncestor(row, "SONG-VERSE"); + if (songVerse) { + let newVerse = songVerse.cloneNode(false); + songVerse.id=''; + setRandomId(songVerse); + songVerse.parentNode.insertBefore(newVerse, songVerse.nextSibling); + let newRows = document.createElement("SONG-ROWS"); + newVerse.appendChild(newRows); + console.log(row, row.nextSibling); + let r=row.nextSibling; + if (r==null + && row.parentNode.parentNode.nodeName!='SONG-BIS') { + if (isEmptyRow(row.previousSibling)) { + row.previousSibling.remove(); + } + newRows.append(row); + } else { + while(r != null) { + let nr=r.nextSibling; + newRows.appendChild(r); + r=nr; + } + // If we are within BIS within middle of the verse, + // we need to move verse-level rows as well. + if (row.parentNode.parentNode.nodeName=='SONG-BIS') { + r = row.parentNode.parentNode.nextSibling; + while(r != null) { + let nr=r.nextSibling; + newRows.appendChild(r); + r=nr; + } + } + if (isEmptyRow(row.previousSibling)) { + row.previousSibling.remove(); + } + if (isEmptyRow(row)) { + row.remove(); + } + } + } +} + +export function Sanitize(body) { + // let r=document.getSelection().rangeCount>0 ? document.getSelection().getRangeAt(0).cloneRange() : null; + // // As sanitization modifies the text (e.g replace all ' ' -> nbsp), we + // // need to persist where is the selection, to be able to restore it. + // let rso=r?r.startOffset:0; + //console.log("Stored", r); + if (!lightTraverse(body)) { + console.log("Full fix..."); + traverse(body, body); + console.log("after fix: ", body.outerHTML); + } + + // Let's cleanup rows + let rows = body.getElementsByTagName("SONG-ROW"); + for (let i=0; i < rows.length; ++i) { + let row = rows[i]; + sanitizeRow(row); + } + + // Let's find 2 empty rows side by side... to split the function + rows = body.getElementsByTagName("SONG-ROW"); + for (let i=0; i < rows.length; ++i) { + if (isEmptyRow(rows[i]) && isEmptyRow(rows[i].previousSibling)) { + SplitVerseFromRow(rows[i]); + } + } + + // if (r) { + // r.setStart(r.startContainer, + // Math.min(rso, + // r.startContainer.nodeName=='#text' + // ? r.startContainer.length + // : r.startContainer.childNodes.length)); + // document.getSelection().removeAllRanges(); + // document.getSelection().addRange(r); + // } +} + +function textNodeReplaceAll(node, searchValue, replaceValue) { + let r = document.getSelection().rangeCount > 0 ? document.getSelection().getRangeAt(0) : null; + if (r && r.intersectsNode(node)) { + return; + } + node.nodeValue=node.nodeValue.replaceAll(searchValue, replaceValue); +} + +// Returns whether tree is valid (is. requires deep validation). +function lightTraverse(node) { + //console.log("lightTraverse", node, node.style); + if (node instanceof Element) { + node.removeAttribute("style"); + } + switch (node.nodeName) { + case '#text' : { + //console.log("Light traverse text", node, '>'+node.nodeValue+'<', node.parentNode); + if (node.parentNode.nodeName!='SONG-ROW') { + console.log("Misplaced", node); + return false; + } + textNodeReplaceAll(node, " ", nbsp); + + if (node.parentNode.getAttribute('type')==='instr') { + textNodeReplaceAll(node, nbspsRegexp, nbsp); + }; + break; + } + case 'SONG-CH': { + removeAllChildren(node); + if (node.parentNode.nodeName!='SONG-ROW') { + console.log("Misplaced", node); + return false; + } + if (node.getAttribute("editor") != "true" + && node.getAttribute("a").trim().length == 0) { + node.remove(); + return false; + } + + // if (node.parentNode.getAttribute("type") === 'instr') { + // node.parentNode.replaceChild( + // document.createTextNode(nbsp + node.getAttribute("a") + nbsp), + // node); + // } + const chords = node.getAttribute("a").trim().split(' '); + if (chords.length > 1) { + const df = document.createDocumentFragment(); + for (const ch of chords) { + df.appendChild(createChord(ch)); + } + node.parentNode.replaceChild(df, node); + } else if (chords.length == 0) { + node.remove(); + } + break; + } + case 'SONG-ROW': { + if (node.parentNode.nodeName!='SONG-ROWS') { + console.log("Misplaced", node); + return false; + } + if (isRowInstr(node) && normalize(node.textContent.trim()) !== normalize(instrRowPhrase)) { + return false; + } + break; + } + case 'SONG-ROWS': { + if (node.parentNode.nodeName!='SONG-BIS' + && node.parentNode.nodeName!='SONG-VERSE') { + console.log("Misplaced", node); + return false; + } + if (node.childNodes.length == 0 + && !node.parentNode.getAttribute("blocknb")) { + node.remove(); + } + break; + } + case 'SONG-BIS': { + if (node.parentNode.nodeName!='SONG-ROWS') { + console.log("Misplaced", node); + return false; + } + if (node.childNodes.length == 0 + || node.childNodes[0].nodeName != 'SONG-ROWS') { + node.remove(); + } + break; + } + case 'SONG-VERSE': { + if (node.parentNode.nodeName!='SONG-BODY') { + console.log("Misplaced", node); + return false; + } + setRandomId(node); + if ((node.childNodes.length == 0 + || node.childNodes[0].nodeName != 'SONG-ROWS') + && !node.getAttribute("blocknb")) { + node.remove(); + } + break; + } + case 'SONG-BODY': { + break; + } + case 'BR': + case 'SPAN': { + // Editor sometimes put empty spans. + if (node.innerHTML==='') { + node.remove(); + return true; + } + break; + } + default: + console.log("Misplaced unknown", node); + return false; + } + { + // We buffer nodes to not miss anything if it gets removed. + let ns = []; + node.childNodes.forEach((n) => { + ns.push(n); + }); + for (let i=0; i < ns.length; ++i) { + if (!lightTraverse(ns[i])) return false; + } + } + // Let's avoid having empty tags. + if (node.childNodes.length == 0 + && (node.nodeName==='SONG-ROWS' + || node.nodeName==='SONG-BIS' + || (node.nodeName==='SONG-VERSE' && !node.getAttribute("blocknb")))) { + node.remove(); + } + return true; +} \ No newline at end of file diff --git a/editor/save.js b/editor/save.js new file mode 100644 index 00000000..fd072f56 --- /dev/null +++ b/editor/save.js @@ -0,0 +1,107 @@ +import {loadXMLDoc, nbsp} from './utils.js'; + +function escapeText(unsafe) { + return unsafe + .replaceAll('\u{0435}',"e") // e in Cyrylic + .replaceAll(',,','\u{201E}') + .replaceAll('\'\'','\u{201D}') + .replaceAll(/&/g, '&') + .replaceAll(//g, '>') + .replaceAll(/"/g, """) + .replaceAll(/'/g, "'"); +} + +function escapeAttrib(unsafe) { + return escapeText(unsafe) +} + +function serializeElement(indent, elem, sep) { // returns { out: ' ', breakClosing: true/false} + if (elem.nodeName=='#text'){ + return { out: escapeText(elem.parentNode.nodeName != 'row' ? elem.nodeValue.trim() : elem.nodeValue), breakClosing: false}; + } else { + let attrs='' + for (const a of elem.attributes) { + if (a.nodeName != 'xmlns:xhtml') { + attrs = `${attrs} ${a.nodeName}="${escapeAttrib(a.nodeValue)}"` + } + } + if (elem.nodeName=='song' && !attrs.includes('xmlns:xsi=')) { + attrs=` xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"` + attrs + } + if (elem.nodeName=='song' && !attrs.includes('xmlns=\"'+elem.namespaceURI)) { + attrs=` xmlns="${elem.namespaceURI}"` + attrs + } + if (elem.nodeName==='ch') { + return { out: `<${elem.nodeName}${attrs}/>`, breakClosing: false } + } else { + const {out, breakClosing} = serializeElements(indent + sep, elem.childNodes, sep) + if (out!="") { + return { out: `\n${indent}<${elem.nodeName}${attrs}>${out}${breakClosing ? "\n"+indent : ""}`, breakClosing: true } + } else { + return { out: `\n${indent}<${elem.nodeName}${attrs}/>`, breakClosing: true } + } + } + } +} + +function serializeElements(indent, children, sep) { + let o=""; + let br = false; + for (let child of children) { + const {out, breakClosing} = serializeElement(indent, child, sep) + o += out; + br |= breakClosing + } + return {out: o, breakClosing: br}; +} + +function serializeDocument(doc, sep) { + return `${serializeElements("", doc.childNodes, sep).out}` +} + +export function Serialize(songeditor) { + let xsltProcessor = new XSLTProcessor() + let xslt = loadXMLDoc('./save.xslt'); + console.log(xslt); + xsltProcessor.importStylesheet(xslt); + + const src = document.implementation.createDocument("", "", null); + const clonedNode = src.importNode(songeditor, true); + src.appendChild(clonedNode); + + let resultDocument = xsltProcessor.transformToDocument(src); + if (!resultDocument) { + alert("XSLT transformation failed") + } + + // Does not work well on Mozilla: + // https://stackoverflow.com/questions/51989864/undefined-undefined-error-when-calling-xsltprocessor-prototype-importstylesheet + //new XMLSerializer().serializeToString(resultDocument);; + + let txt=serializeDocument(resultDocument, songeditor.tabs ? "\t" : " ") + txt = txt.replaceAll(nbsp," ") + "\n"; + + if (songeditor.shadow.getElementById("lastSerialized")) { + songeditor.shadow.getElementById("lastSerialized").innerText=txt; + } + return txt; +} + +export function Save(songeditor) { + let txt = Serialize(songeditor); + + let download = window.document.createElement('a'); + download.id="download"; + download.text="[download]"; + + let title = songeditor.getAttribute("title"); + if (!title || title.trim()==='') { + title='song'; + } + + let url=window.URL.createObjectURL(new Blob([txt]), {type: 'text/xml'}); + download.href=url; + download.download=title+".xml"; + download.click(); +} \ No newline at end of file diff --git a/editor/save.xslt b/editor/save.xslt new file mode 100644 index 00000000..13463b3e --- /dev/null +++ b/editor/save.xslt @@ -0,0 +1,251 @@ + + + + + + + + + + + + + + http://21wdh.staszic.waw.pl https://spiewaj.com/song.xsd + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + false + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/editor/sidechords.css b/editor/sidechords.css new file mode 100644 index 00000000..8daf2697 --- /dev/null +++ b/editor/sidechords.css @@ -0,0 +1,39 @@ +div#sidechords { + display: flex; + align-items: flex-end; + align-content: space-around; + width: 100%; +} + +div#sidechords button { + font-size: smaller; + margin-left: auto; + justify-self: flex-end; +} + +/*div#type {*/ +/* min-width: 6em;*/ +/* text-align: center;*/ +/*}*/ + +div#type span#chords_type { + display: inline-block; +} + +input#sch{ + min-width: 10em; +} + +select#select_type{ + height: 21px; + font-size: x-small; +} + +/*div#sidechords span#chords_type {*/ +/* display: inline-block;*/ +/* margin: 10px 10px 0 0;*/ +/* color: red;*/ +/*}*/ + +/*!* float:left; remove *!*/ +/*margin: 10px 10px 0 0;*/ \ No newline at end of file diff --git a/editor/sidechords.js b/editor/sidechords.js new file mode 100644 index 00000000..0a5d59d7 --- /dev/null +++ b/editor/sidechords.js @@ -0,0 +1,190 @@ +// import {findAncestor, nbsp} from "./utils.js"; +// +// const predefinedChords = ["A", "A2", "A4", "A7", "A7+", "A7/4", "A7/6", "Ais", +// "B", "C", "C0", "C7", "C7+", "C9", "C9/5", "Cis", "Cis0", "D", "D2", "D4", +// "D7", "D7+", "Dis", "E", "E0", "E5+", "E7", "E7/4", "F", "F0", "F7", "F7+", +// "Fis", "Fis0", "Fis7", "G", "G0", "G6", "G7", "GC", "Gis", "H", "H6/7", "H7", +// "a", "a6", "a7", "a7+", "a7/9", "ais", "b", "c", "cis", "cis7", "d", "d2", +// "d6", "e", "e7", "e9", "f", "fis", "fis7", "g", "gis", "gis7", "h", "h0", +// "h7", "h7/5-"]; + +//const sidechordstemplate = document.createElement('template'); + +import {getChordsFromRow, getNextRow, getPrevRow, getSideChordsForRow, setSideChordsForRow} from "./verse.js"; +import {nbsp} from "./utils.js"; +import {makeRowInstrumental, makeRowNotInstrumental, notifyRowParentAboutChange, pushRowChords} from "./songbody.js"; + +const template = document.createElement('template'); + +export default class SideChordsRow extends HTMLElement { + constructor() { + super(); + + const shadow = this.attachShadow({mode: "closed"}); + shadow.appendChild(template.content.cloneNode(true)); + + // this.chordsType = shadow.getElementById("chords_type"); + this.selectType = shadow.getElementById("select_type"); + this.chinput = shadow.getElementById("sch"); + + this.selectType.addEventListener("change", () => { + this.pushRowType(); + notifyRowParentAboutChange(this.row); + }); + this.chinput.addEventListener("change", () => { + this.pushSideChords(); + notifyRowParentAboutChange(this.row); + }) + + this.chinput.addEventListener("beforeinput", (e) => { + console.log("SCH::BeforeInput", e) + }) + + this.chinput.addEventListener("keydown", (e) => { + console.log("SCH::KeyDown", e) + if (e.key == 'ArrowDown' + && this.chinput.selectionStart == this.chinput.selectionEnd + && this.chinput.selectionStart == this.chinput.value.length) { + const nextRow = getNextRow(this.row); + if (nextRow) { + nextRow.siblingSide.chinput.focus(); + nextRow.siblingSide.chinput.selectionStart =0; + nextRow.siblingSide.chinput.selectionEnd =0; + e.preventDefault(); + } + } + if (e.key == 'ArrowUp' + && this.chinput.selectionStart == this.chinput.selectionEnd + && this.chinput.selectionStart == 0) { + const prevRow = getPrevRow(this.row); + if (prevRow) { + prevRow.siblingSide.chinput.focus(); + prevRow.siblingSide.chinput.selectionStart= prevRow.siblingSide.chinput.value.length; + prevRow.siblingSide.chinput.selectionEnd = prevRow.siblingSide.chinput.selectionStart; + e.preventDefault(); + } + } + }) + + this.buttonSyncToSide = shadow.getElementById("sync_to_side"); + this.buttonSyncToLyric = shadow.getElementById("sync_to_lyric"); + + this.buttonSyncToSide.addEventListener("click", () => { + this.chinput.value = getChordsFromRow(this.row); + this.pushSideChords(); + notifyRowParentAboutChange(this.row); + }) + + this.buttonSyncToLyric.addEventListener("click", () => { + pushRowChords(this.row, this.chinput.value) + notifyRowParentAboutChange(this.row); + //this.pushSideChords(); + }) + + //sync_to_lyric + } + + setRow(row) { + this.row = row; + } + + connectedCallback() { + this.loadRow(); + } + + pushRowType() { + switch (this.selectType.value) { + case "important": + this.row.setAttribute('important_over', 'true'); + makeRowNotInstrumental(this.row); + break; + case "available": + this.row.setAttribute('important_over', 'false'); + makeRowNotInstrumental(this.row); + break; + case "never": + this.row.setAttribute('important_over', 'never'); + makeRowNotInstrumental(this.row); + break; + case "instr": + makeRowInstrumental(this.row) + break + } + } + + pushSideChords() { + setSideChordsForRow(this.row, this.chinput.value.trim()) + this.refreshSync() + } + + loadRow() { + this.chinput.value = getSideChordsForRow(this.row); + let rowType = this.row.getAttribute("type"); + if (rowType == 'instr') { + this.selectType.value = "instr" + this.buttonSyncToLyric.style.display='none'; + this.buttonSyncToSide.style.display='none'; + return + } else { + this.buttonSyncToLyric.style.display='inline-block'; + this.buttonSyncToSide.style.display='inline-block'; + } + let impOver = this.row.getAttribute("important_over"); + if (impOver == "true") { + this.selectType.value = "important" + } else if (impOver == "false" || !impOver || impOver.trim() == "") { + this.selectType.value = "available" + } + if (impOver == "never") { + this.selectType.value = "never" + } + + this.pushSideChords() + } + + normalizeChords(ch) { + return ch + .trim() + .replaceAll(nbsp, "").replaceAll(" ", "") + .replaceAll("(", "").replaceAll(")", "") + .replaceAll("[", "").replaceAll("]", "") + .replaceAll("<", "").replaceAll(">", "") + .replaceAll("|", "").replaceAll("!", "") + } + + refreshSync() { + if (this.row.getAttribute('type')=='instr') { + this.chinput.style.backgroundColor = 'white' // light green + return + } + if (this.normalizeChords(this.chinput.value) === this.normalizeChords(getChordsFromRow(this.row))) { + this.chinput.style.backgroundColor = '#E0FFE0' // light green + } else { + this.chinput.style.backgroundColor = '#FFCCCB' // light red + } + } +} + +export function SideChordsInit() { + template.innerHTML = ` + + +
+
+ + +
+ + + +
+ `; + + customElements.define("song-side-chords", SideChordsRow); +} diff --git a/editor/song.css b/editor/song.css new file mode 100644 index 00000000..cc567a9f --- /dev/null +++ b/editor/song.css @@ -0,0 +1,199 @@ +h1 { + text-align: left +} + +song-verse { +} + +song-row { + display: block; + font-size: large; + padding-top: 0.5ex; /* We would prefer here margin, but padding works with the size observer.*/ +} + +/*song-row[type="instr"]:before {*/ +/* color: gray;*/ +/* font-style: italic;*/ +/* visibility: visible;*/ +/*}*/ + +/*song-row[type="instr"]:before::selection {*/ +/* color: pink;*/ +/*}*/ + +/*song-row::selection {*/ +/* color: pink;*/ +/*}*/ + +song-row[type="instr"] { + /*content: '[wers instrumentalny]';*/ + /*overflow-wrap: normal;*/ + /*font-weight: bold;*/ + /*background: white;*/ + /*white-space:nowrap;*/ + /*font-family: Arial;*/ + /*margin-top: 0.6em;*/ + /*visibility: hidden;*/ + color: gray; + font-style: italic; + visibility: visible; +} + +/*:host-context(song-row[type="instr"]) {*/ + +song-rows { + display: contents; +} + +song-verses { + display: contents; +} + +song-body { + display: grid; + padding-bottom: 0.5em; +} + +div.songbody{ + margin-top: 0.3em; + margin-bottom: 2em; + grid-column: 1/2; + grid-row: 1; +} + +div.song-editor { + width: fit-content; + /*grid-column: 1/2;*/ +} + +div.toolbar { +/* position: sticky;*/ +/* left:630px;*/ +/*# top: 5%;*/ + grid-column: 2/2; + margin-left: 20px; + align-self: start; + position: sticky; + top: 1rem; + grid-row: 1; +} + +/*song-editor {*/ +/* display: grid;*/ +/* grid-template-columns: min-content max-content;*/ +/*}*/ + +div.toolbar button { + display: block; + margin-top: 0.25em; + margin-bottom: 0.25em; + marging-left: 3em; + width: 13em; + text-align:left; + vertical-align: middle; +} + +button#appendVerse{ + width: 13em; + text-align:left; + vertical-align: middle; + display: block; + margin-right:0em; + margin-left:auto; +} + +div.toolbar button i { + margin-right: 0.5em; +} + +div.toolbar div.formatting { + position: sticky; + display: grid; +} + +div.toolbar div.formatting button { + grid-column: 1; +} +div.toolbar div.formatting i { + grid-column: 2; +} + + +div.toolbar input { + margin-top: 0.5em; + width: 13em; +} + +div.toolbar div { + margin-top: 1em; +} + +div.songbody{ + padding-right: 2em; +} + +div.metadata { + display: grid; + grid-template-columns: max-content max-content max-content; + grid-gap: 5px; +} + +div.metadata label { + text-align: right; + grid-column: 1/2; +} + +div.metadata input { + grid-column: 2/2; +} + +div.metadata select { + grid-column: 3/3; +} + +div.metadata label:after { + content: ":"; +} + +div.metadata textarea { + height: 5em; + min-width: 20em; +} + +div.generated { + grid-row: 2; + grid-column: 1 / span 2; +} + +/*hr {*/ +/* flex-basis: 100%;*/ +/* height: 0;*/ +/*}*/ + +input#title { + grid-column: 2 / span 2; + font-size: x-large; + text-align: center; + min-width: 600px; +} + +div.gitToolbar { + margin-top: 10px; +} + +div.notice { + position: fixed; + color: black; + background: yellow; + left: 50px; + top: 50px; +} + +div.help { + position: static; + left: 50px; + top: 50px; + background: lightcyan; + border: 1px solid blue; + z-index: 4; +} \ No newline at end of file diff --git a/editor/songbody.js b/editor/songbody.js new file mode 100644 index 00000000..14565b5b --- /dev/null +++ b/editor/songbody.js @@ -0,0 +1,874 @@ +import { + findAncestor, + getRangeForCursor, + nbsp, + removeAllChildren, + mergeNodeAfter, + setCursorBefore, + setCursorAfter +} from './utils.js'; +import {createChord} from './ch.js' +import {createVerse, Sanitize, SplitVerseFromRow} from './sanitize.js' +import {getChordsFromRow} from "./verse.js"; + +function acceptsTextAndChords(element) { + return element.nodeName=="SONG-ROW" && element.getAttribute("type")!=='instr'; +} + +function getChordSelected() { + if (window.getSelection().rangeCount < 1) {return false; } + let r = window.getSelection().getRangeAt(0); + if (r.collapse + && (r.startOffset < r.startContainer.childNodes.length) + && r.startContainer.childNodes[r.startOffset].nodeName === 'SONG-CH') { + return r.startContainer.childNodes[r.startOffset]; + } + return null; +} + +function isChordSelected() { + return getChordSelected() != null; +} + +export function isRowInstr(row) { + return row.getAttribute('type','normal') == 'instr'; +} + +function canInsertChord() { + if (window.getSelection().rangeCount < 1) {return false; } + let r = window.getSelection().getRangeAt(0); + if (r.startContainer.nodeName == '#text' + && acceptsTextAndChords(r.startContainer.parentNode)) { + return true; + } + if (isChordSelected()) { + return true; + } + let x = + //acceptsTextAndChords(r.startContainer); + (r.startContainer.nodeName == '#text' + && acceptsTextAndChords(r.startContainer.parentNode)); + return x; +} + +export function makeRowNotInstrumental(row) { + // let chords = row.innerText.replaceAll(' ', nbsp).split(nbsp); + // console.log(chords); + if (isRowInstr(row)) { + row.removeAttribute("type"); + removeTextFromRow(row); + // removeAllChildren(row); + // for (let i=0; i 0) { + node.parentNode.insertBefore(rows[0], node); + } + node.remove(); +} + +export default class SongBody extends HTMLElement { + constructor() { + super(); + + const template = document.createElement('template'); + template.innerHTML = ` + + +
+
Formatowanie: + + + help +
Zaznaczone wiersze będą powtarzane. Ustaw licznik na 1 by wyłączyć.
+ +
+ + + +
+ + help +
Wers zawierający tylko akordy. Odzielaj je spacjami.
+ + + +
+
+
`; + + const shadow = this.attachShadow({ mode: "closed" }); + shadow.appendChild(template.content.cloneNode(true)); + this.body=shadow.getElementById("songbody"); + + this.body.addEventListener("mousedown", this.mouseDown); + // this.body.addEventListener("click", this.click); + this.body.addEventListener("dragover", (e) => {this.dragOver(e, this); }); + this.body.addEventListener("dragstart", (e) => {this.dragStart(e, this); }); + this.body.addEventListener("dragend", (e) => {this.dragEnd(e, this); }); + this.body.addEventListener("drop", (e) => {this.drop(e, this); }); + // this.body.addEventListener("keydown", (e) => { this.keyDown(e, this); }); + this.body.addEventListener("focusout", (e) => {this.focusout(e, this); }); + + this.buttonAppendVerse=shadow.getElementById("appendVerse"); + + this.buttonBis=shadow.getElementById("buttonBis"); + + this.importantOver=shadow.getElementById("importantOver"); + this.notImportantOver=shadow.getElementById("notImportantOver"); + this.sideOnly=shadow.getElementById("sideOnly"); + + this.buttonInstr=shadow.getElementById("buttonInstr"); + this.buttonChord=shadow.getElementById("buttonChord"); + this.buttonSplit=shadow.getElementById("buttonSplit"); + + this.buttonUndo=shadow.getElementById("buttonUndo"); + this.buttonRedo=shadow.getElementById("buttonRedo"); + this.buttonUndo.addEventListener("click", (e) => this.doUndo()); + this.buttonRedo.addEventListener("click", (e) => this.doRedo()); + + this.buttonBis.addEventListener("click", (e) => this.wrapBis()); + + this.importantOver.addEventListener("click", (e) => { this.toggleImportantOver("true"); this.refresh(); }); + this.notImportantOver.addEventListener("click", (e) => { this.toggleImportantOver("false"); this.refresh(); }); + this.sideOnly.addEventListener("click", (e) => { this.toggleImportantOver("never"); this.refresh(); }); + + this.buttonInstr.addEventListener("click", (e) => { this.toggleInstrumental(); this.refresh(); }); + this.buttonChord.addEventListener("click", (e) => { insertChordHere(""); this.refreshToolbar(); }); + this.buttonSplit.addEventListener("click", (e) => { this.splitVerse(); this.refreshToolbar(); }); + + this.buttonAppendVerse.addEventListener("click", (e) => {this.appendVerse(); this.refreshToolbar(); }); + + document.addEventListener('selectionchange', (event) => { this.refreshToolbar(); }); + + this.shadow = shadow; + this.initHelp("help-bis"); + // this.initHelp("help-io"); + this.initHelp("help-instr"); + + this.reset(); + } + + reset() { + this.undo=[]; + this.redo=[]; + } + + initHelp(id) { + const helpDiv = this.shadow.getElementById(id); + const helpIcon = this.shadow.getElementById(id+"-icon"); + helpDiv.hidden = true; + helpDiv.addEventListener("click", (e) => {helpDiv.hidden = true;}); + + helpIcon.addEventListener("click", (e) => {helpDiv.hidden^=true;} ); + } + + refreshToolbar() { + this.importantOver.disabled = this.allSelectedImportant(); + + if (this.allSelectedInstrumental()) { + this.buttonInstr.innerHTML='lyricsWers liryczny'; + } else { + this.buttonInstr.innerHTML='music_noteWers instrumentalny'; + } + this.buttonBis.disabled = document.getSelection().rangeCount==0; + } + + focusout(e, songbody) { + console.log("focusout", e); + if (e.target.nodeName==='SONG-BIS' + && (e.target.getAttribute("x").trim()==="1" + || e.target.getAttribute("x").trim()==="" + || e.target.getAttribute("x").trim()==="0")) { + flattenBis(e.target); + } + songbody.changePostprocess(); + } + + connectedCallback() { + this.parentNodeBackup = this.parentNode; + this.beforeInputHandler = (e) => { this.beforeInput(e, this); }; + this.parentNode.addEventListener("beforeinput", this.beforeInputHandler); + this.inputHandler = (e) => { this.input(e, this); }; + this.parentNode.addEventListener("input", this.inputHandler); + this.keyDownHandler = (e) => this.keyDown(e, this); + this.parentNode.addEventListener("keydown", this.keyDownHandler); + this.pasteHandler = (e) => { this.paste(e, this); }; + this.parentNode.addEventListener("paste", this.pasteHandler); + } + + disconnectedCallback() { + if (this.parentNodeBackup) { + this.parentNodeBackup.removeEventListener("beforeinput", this.beforeInputHandler); + this.parentNodeBackup.removeEventListener("input", this.inputHandler); + this.parentNodeBackup.removeEventListener("keydown", this.keyDownHandler); + this.parentNodeBackup.removeEventListener("paste", this.pasteHandler); + } + } + + selectedRows() { + if (document.getSelection().rangeCount == 0) { + return []; + } + let r = document.getSelection().getRangeAt(0); + let result=[]; + + let songRowsParent = findAncestor(r.commonAncestorContainer,"SONG-ROWS"); + if (songRowsParent) { + let rows = songRowsParent.getElementsByTagName("SONG-ROW"); + // let parentRow = findAncestor(r.commonAncestorContainer, "SONG-ROW"); + for (let i = 0; i < rows.length; ++i) { + let row = rows[i]; + if (r.intersectsNode(row)) { + result.push(row); + } + } + } + return result; + } + + + wrapBis() { + let selRows = this.selectedRows(); + if (selRows.length>0) { + let r = document.getSelection().getRangeAt(0); + let songRowsParent = findAncestor(r.commonAncestorContainer,"SONG-ROWS"); + if (songRowsParent) { + let selRows = this.selectedRows(); + + flattenBis(findAncestor(r.startContainer, "SONG-BIS")); + flattenBis(findAncestor(r.endContainer, "SONG-BIS")); + + let biss = songRowsParent.getElementsByTagName("SONG-BIS"); + for (let i = 0; i < biss.length; ++i) { + console.log("Considering", biss[i]); + if (r.intersectsNode(biss[i])) { + flattenBis(biss[i]); + } + } + + if (selRows.length > 0) { + songRowsParent = selRows[0].parentNode; + let bis = document.createElement("song-bis"); + bis.setAttribute("x", "2"); + let bisRows = document.createElement("song-rows"); + bis.appendChild(bisRows); + songRowsParent.insertBefore(bis, selRows[0]); + bisRows.append(...selRows); + bis.focus(); + } + } + } + } + + toggleImportantOver(important_over) { + let selRows = this.selectedRows(); + for (let i = 0; i < selRows.length; ++i) { + selRows[i].setAttribute("important_over", important_over); + } + } + + splitVerse() { + let selRows = this.selectedRows(); + if (selRows.length > 0) { + SplitVerseFromRow(selRows[selRows.length - 1]); + } + } + + appendVerse() { + const v = createVerse(); + const rows = document.createElement("song-rows") + const row = document.createElement("song-row"); + rows.appendChild(row); + v.appendChild(rows); + this.insertBefore(v, null); + v.focus(); + document.getSelection().collapse(row); + } + + toggleInstrumental() { + let allInstrumental = this.allSelectedInstrumental(); + let selRows = this.selectedRows(); + for (let i = 0; i < selRows.length; ++i) { + if (allInstrumental) { + makeRowNotInstrumental(selRows[i]); + } else { + makeRowInstrumental(selRows[i]) + } + } + console.log(this); + this.changePostprocess(); + } + + selectAll() { + let r=document.createRange(); + let rows=this.getElementsByTagName("SONG-ROW"); + r.setStartBefore(rows[0].firstChild); + r.setEndAfter(rows[rows.length-1].lastChild); + document.getSelection().removeAllRanges(); + document.getSelection().addRange(r); + //document.getSelection().selectAllChildren(this.body); + this.body.focus(); + } + + allSelectedImportant() { + let selRows = this.selectedRows(); + let allImportant=true; + for (let i=0; i 1 && canInsertChord() && e.target.nodeName==='SONG-ROW') { + if (insertChordHere("")) { + e.preventDefault(); + } + } + } + + // click(e) { + // console.log("click", e); + // if (e.target.nodeName==='SONG-ROW' && e.target.getAttribute('type')=='instr') { + // makeRowNotInstrumental(e.target); + // } + // // if (insertChordHere("")) { + // // e.preventDefault(); + // // } + // // } + // } + + keyDown(e,songBook) { + console.log("keydown...",e, document.getSelection()); + if (e.key == '`' && canInsertChord()) { + if (insertChordHere("")) { + e.preventDefault(); + } + } + if (e.key == 'Backspace'){ + if (document.getSelection().isCollapsed + && document.getSelection().rangeCount == 1 + && document.getSelection().type === 'Range') { + let r = document.getSelection().getRangeAt(0); + if (r.startOffset < r.startContainer.childNodes.length && + r.startContainer.childNodes[r.startOffset].nodeName=='SONG-CH') { + r.startContainer.childNodes[r.startOffset].remove(); + e.preventDefault(); + } + } + } + + if (e.key == 'ArrowRight'){ + if (document.getSelection().isCollapsed + && document.getSelection().rangeCount == 1 + && document.getSelection().type === 'Caret') { + let r = document.getSelection().getRangeAt(0); + if (r.collapsed && r.startContainer.nodeName==='#text' && r.startOffset >= r.startContainer.nodeValue.length + && r.startContainer.nextSibling + && r.startContainer.nextSibling.nodeName==='SONG-CH') { + let ch = r.startContainer.nextSibling; + while (ch && ch.nodeName==='SONG-CH') { + ch = ch.nextSibling; + } + if (ch) { + document.getSelection().collapse(ch); + } + e.preventDefault(); + } + } + } + + if (e.key == 'ArrowLeft'){ + if (document.getSelection().isCollapsed + && document.getSelection().rangeCount == 1 + && document.getSelection().type === 'Caret') { + let r = document.getSelection().getRangeAt(0); + if (r.collapsed && r.startContainer.nodeName==='#text' && r.startOffset == 0 + && r.startContainer.previousSibling + && r.startContainer.previousSibling.nodeName==='SONG-CH') { + let ch = r.startContainer.previousSibling; + while (ch && ch.nodeName==='SONG-CH') { + ch = ch.previousSibling; + } + if (ch) { + document.getSelection().collapse(ch, ch.nodeValue.length); + } + e.preventDefault(); + } + } + } + + if (e.key == 'b' && e.metaKey) { + songBook.wrapBis(); + e.preventDefault(); + } + } + + dragOver(e, songbook) { + if (e.dataTransfer.types.includes("songbook/chord")) { + if (e.altKey) { + e.dataTransfer.dropEffect = 'copy'; + } else { + e.dataTransfer.dropEffect = 'move'; + } + let range = getRangeForCursor(e); + document.getSelection().removeAllRanges(); + document.getSelection().addRange(range); + if (!canInsertChord()) { + e.dataTransfer.dropEffect = 'none'; + }; + e.preventDefault(); + } + } + + drop(e, songbody) { + let d = e.dataTransfer.getData("songbook/chord"); + if (d != null && d != "") { + let range = getRangeForCursor(e) + console.log('RANGE for DROP', range); + if (acceptsTextAndChords(range.commonAncestorContainer.parentNode)) { + range.insertNode(createChord(d)); + songbody.dropped = true; + } else if (isChordSelected()) { + const selectedChord = getChordSelected(); + selectedChord.parentNode.insertBefore(createChord(d), selectedChord.nextSibling); + songbody.dropped = true; + } else { + console.log('Drop refused', e); + } + e.preventDefault(); + songbody.changePostprocess(); + return; + } + + d = e.dataTransfer.getData("text/html"); + if (d != null && d != "") { + console.log("Special!!!", e.dataTransfer.dropEffect); + + if ((e.dataTransfer.dropEffect === 'move' || !e.altKey) && + songbody.toRemoveWhenDropped != null) { + songbody.toRemoveWhenDropped.deleteContents(); + } + + let range = getRangeForCursor(e) + let span = document.createElement("span"); + span.innerHTML=d; + range.insertNode(span); + songbody.changePostprocess(); + e.preventDefault(); + + return; + } + + } + + beforeInput(e, songbody) { + console.log("beforeInput", e); + + if (e.target != songbody) { + return; + } + + let r = document.getSelection().getRangeAt(0); + const row = findAncestor(r.startContainer, 'SONG-ROW'); + if (e.inputType=='insertText' && row && isRowInstr(row)) { + makeRowNotInstrumental(row); + const pre = document.createTextNode(nbsp); + row.insertBefore(pre, null); + setCursorBefore(pre); + e.preventDefault(); + return; + } + + if (e.inputType == "deleteContentBackward" + && e.target == songbody) { + if (document.getSelection().rangeCount == 1 + && document.getSelection().isCollapsed) { + let r = document.getSelection().getRangeAt(0); + console.log(document.getSelection(), r.startContainer.nodeName, r.startContainer, r.startOffset) + // If the previous element is chord, we want to skip and remove the prev letter. + if (r.startContainer.nodeName == '#text' && r.startOffset == 0 + && r.startContainer.previousSibling != null + && r.startContainer.previousSibling.nodeName === 'SONG-CH') { + setCursorBefore(r.startContainer.previousSibling); + r = document.getSelection().getRangeAt(0); + // We want to continue in case we want to merge rows. + } + // If we are after the trailing space... we want to remove it as well. + if (r.startContainer.nodeName == '#text' && r.startOffset == 1 + && r.startContainer.previousSibling == null + && r.startContainer.nodeValue.startsWith(nbsp)) { + r.startContainer.nodeValue = r.startContainer.nodeValue.substring(1); + if (r.startContainer.parentNode.previousSibling != null) { + mergeNodeAfter(r.startContainer.parentNode.previousSibling, + r.startContainer.parentNode); + e.preventDefault(); + } + } + // When we are at the beginning of the ROW, we merge the rows. + if (r.startContainer.nodeName == 'SONG-ROW' && r.startOffset == 0) { + if (r.startContainer.previousSibling != null + && r.startContainer.previousSibling.nodeName === 'SONG-ROW') { + // There is previous line: + mergeNodeAfter(r.startContainer.previousSibling, r.startContainer); + e.preventDefault(); + } if (r.startContainer.previousSibling != null + && r.startContainer.previousSibling.nodeName === 'SONG-BIS') { + // Previous line is within bis. + mergeNodeAfter(r.startContainer.previousSibling.childNodes[0].lastChild, r.startContainer); + e.preventDefault(); + } else if (r.startContainer.previousSibling == null + && r.startContainer.parentNode.parentNode != null + && r.startContainer.parentNode.parentNode.nodeName === 'SONG-BIS' + && r.startContainer.parentNode.parentNode.previousSibling != null + && r.startContainer.parentNode.parentNode.previousSibling.nodeName == 'SONG-ROW' ) { + // Previous line is outside of bis. + mergeNodeAfter(r.startContainer.parentNode.parentNode.previousSibling, + r.startContainer); + e.preventDefault(); + } else if (r.startContainer.previousSibling == null + && r.startContainer.parentNode.parentNode.previousSibling != null + && r.startContainer.parentNode.parentNode.previousSibling.nodeName === 'SONG-VERSE') { + // Previous line is in another verse. + mergeNodeAfter(r.startContainer.parentNode.parentNode.previousSibling.childNodes[0], + r.startContainer.parentNode); + r.startContainer.remove(); + e.preventDefault(); + } + } + if (r.startContainer.nodeName == 'SONG-ROW' && r.startOffset == 1) { + if (r.startContainer.previousSibling != null + && r.startContainer.previousSibling.nodeName === 'SONG-ROW' + && r.startContainer.childNodes[0].nodeName==='#text' + && r.startContainer.childNodes[0].nodeValue===nbsp) { + r.startContainer.childNodes[0].remove(); + mergeNodeAfter(r.startContainer.previousSibling, r.startContainer); + e.preventDefault(); + } + } + // When we are at the beginning of the ROW, we merge the rows. + if (r.startContainer.nodeName == '#text' && r.startOffset == 0) { + if (r.startContainer.previousSibling == null + && r.startContainer.parentNode.nodeName === 'SONG-ROW' + && r.startContainer.parentNode.previousSibling != null + && r.startContainer.parentNode.previousSibling.nodeName === 'SONG-ROW') { + mergeNodeAfter(r.startContainer.parentNode.previousSibling, r.startContainer.parentNode); + e.preventDefault(); + } + if (r.startContainer.previousSibling == null + && r.startContainer.parentNode.nodeName === 'SONG-ROW' + && r.startContainer.parentNode.previousSibling == null + && r.startContainer.parentNode.parentNode.parentNode.nodeName === 'SONG-VERSE' + && r.startContainer.parentNode.parentNode.parentNode.previousSibling + && r.startContainer.parentNode.parentNode.parentNode.previousSibling.nodeName === 'SONG-VERSE') { + mergeNodeAfter(r.startContainer.parentNode.parentNode.parentNode.previousSibling.childNodes[0], r.startContainer.parentNode.parentNode); + e.preventDefault(); + } + if (r.startContainer.previousSibling == null + && r.startContainer.parentNode.nodeName === 'SONG-ROW' + && r.startContainer.parentNode.previousSibling == null + && r.startContainer.parentNode.parentNode.parentNode.nodeName === 'SONG-BIS' + && !r.startContainer.parentNode.parentNode.parentNode.previousSibling + && r.startContainer.parentNode.parentNode.parentNode.parentNode.parentNode.nodeName === 'SONG-VERSE' + && r.startContainer.parentNode.parentNode.parentNode.parentNode.parentNode.previousSibling + && r.startContainer.parentNode.parentNode.parentNode.parentNode.parentNode.previousSibling.nodeName === 'SONG-VERSE') { + mergeNodeAfter(r.startContainer.parentNode.parentNode.parentNode.parentNode.parentNode.previousSibling.childNodes[0], r.startContainer.parentNode.parentNode.parentNode.parentNode); + e.preventDefault(); + } + } + + r= document.getSelection().getRangeAt(0); + if ((r.startContainer.nodeName === 'SONG-ROWS' + || r.startContainer.nodeName === 'SONG-VERSE' + || r.startContainer.nodeName === 'SONG-BIS' + || r.startContainer.nodeName === 'SONG-BODY') + && r.startContainer.childNodes.length > 0) { + console.log("Preventing deletion of whole: ", r); + if (r.startContainer.childNodes[r.startOffset] != null + && r.startContainer.childNodes[r.startOffset].firstChild != null) { + setCursorBefore( + r.startContainer.childNodes[r.startOffset].firstChild); + } + e.preventDefault(); + } + } + let r= document.getSelection().getRangeAt(0); + if (r.commonAncestorContainer.nodeName === 'SONG-ROWS') { + let start=findAncestor(r.startContainer, 'SONG-ROW'); + r.deleteContents(); + if (start.childNodes.length === 0) { + start.remove(); + } + e.preventDefault(); + songbody.changePostprocess(); + return; + } + } + + if (e.inputType == "insertParagraph" + && e.target == songbody) { + let r= document.getSelection().getRangeAt(0); + // console.log(r); + // console.log(r.startContainer); + + let parentRow=findAncestor(r.startContainer, 'SONG-ROW'); + let newNode = parentRow.cloneNode(false); + parentRow.parentNode.insertBefore(newNode, parentRow.nextSibling); + if (r.startContainer.nodeName=='#text' && r.startOffset0) { + let r = document.getSelection().getRangeAt(0); + if (r.commonAncestorContainer.nodeName === 'SONG-ROWS') { + r.deleteContents(); + songbody.changePostprocess(); + } + } + + if (e.inputType == "historyUndo" + && e.target == songbody) { + songbody.doUndo(); + e.preventDefault(); + } + + if (e.inputType == "historyRedo" + && e.target == songbody) { + songbody.doRedo(); + e.preventDefault(); + } + + } + + doUndo() { + const last = this.undo.pop(); + if (last) { + this.redo.push(last); + this.innerHTML=last; + } + this.refresh(); + } + + doRedo() { + const redo = this.redo.pop(); + if (redo) { + this.undo.push(redo); + + this.innerHTML=redo; + } + this.refresh(); + } + + refresh() { + for (const verse of this.childNodes) { + verse.refresh(); + } + this.refreshToolbar(); + } + + changePostprocess() { + console.log("postprocessing"); + Sanitize(this); + this.recomputeChordsOffsets(); + let lastState=this.innerHTML; + if (this.undo.length==0 || this.undo[this.undo.length-1]!==lastState) { + this.undo.push(lastState); + } + console.log("Postprocessed. Undo len: ", this.undo.length); + } + + recomputeChordsOffsets() { + const chords = this.getElementsByTagName("SONG-CH"); + for (let ch of chords) { + ch.resetOffset(); + } + for (let ch of chords) { + ch.recomputeOffset(); + } + } + + input(e, songbody) { + console.log("input", e); + if (e.target == songbody) { + console.log("postprocessing...") + songbody.changePostprocess(); +// Avoid keeping cursor before the artifical space: +// if (document.getSelection().isCollapsed +// && document.getSelection().rangeCount == 1) { +// let r = document.getSelection().getRangeAt(0); +// //console.log("ON INPUT", document.getSelection(), r.startContainer.nodeName, r.startOffset, r.startContainer); +// if (r.startContainer.nodeName === "#text" +// && r.startOffset == 0 +// && r.startContainer.nodeValue.startsWith(nbsp) +// && r.startContainer.previousSibling == null) { +// let newr = document.createRange(); +// newr.setStart(r.startContainer, 1); +// document.getSelection().removeAllRanges(); +// document.getSelection().addRange(newr); +// } +// } + } + } + + paste(e, songbody) { + console.log(e); + console.log("types", e.clipboardData.types); + if (e.target.nodeName === 'SONG-ROW' || e.target.nodeName === 'SONG-BODY') { + let p = document.createElement("span"); + let data = ''; + if (data==='') { data = e.clipboardData.getData("text/html"); } + if (data==='') { + data = e.clipboardData.getData("text/plain"); + var separateLines = data.split(/\r?\n|\r|\n/g); + let newdata=''; + separateLines.forEach(line => { + newdata += "" + line + ""; + }) + data = newdata + } + console.log(data); + p.innerHTML = data; + getSelection().getRangeAt(0).deleteContents(); + getSelection().getRangeAt(0).insertNode(p); + e.preventDefault(); + songbody.changePostprocess(); + } + } + + attributeChangedCallback() { + console.log("onChange", this); + } +} + +export function SongBodyInit() { + if (!customElements.get("song-body")) { + customElements.define("song-body", SongBody); + } +}; + +export function createSongBody() { + return document.createElement("song-body"); +} diff --git a/editor/songbook.iml b/editor/songbook.iml new file mode 100644 index 00000000..9a5cfcef --- /dev/null +++ b/editor/songbook.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/editor/songbook.js b/editor/songbook.js new file mode 100644 index 00000000..58eae1dc --- /dev/null +++ b/editor/songbook.js @@ -0,0 +1,430 @@ +import {SongChInit} from './ch.js' +import {SongVerseBisInit, SongVerse} from './verse.js' +import {SongBodyInit} from './songbody.js'; +import {createSongBody} from './songbody.js'; +import {Sanitize} from './sanitize.js'; +import {Save, Serialize} from './save.js'; +import {removeAllChildren} from './utils.js'; +import {html2xmlstr} from './conv/conv.js' + +const attrs=["title", "alias","text_author", "text_author_type","comment", + "composer", "composer_type","artist", "artist_type", + "translator" , "original_title", + "album", + "music_source", "metre", "guitar_barre", "genre", + "keywords", "done_text", "done_authors", "done_chords", + "verificators", "to_do"]; + +export class SongEditor extends HTMLElement { + constructor() { + super(); + + const template = document.createElement('template'); + template.innerHTML = ` + + +
+ +
+ + + + + +
+ +
+ + +
+ +

Metryka

+ + + +

Treśćhelp

+
+

Kilka trików, które warto znać: +

    +
  • Klawisz \` (przeważnie lewy górny róg klawiatury) pozwala na dodanie akordu w bieżącym miejscu.
  • +
  • Akordy możesz przeciągać lub edytować poprzez drukrotne kliknięcie.
  • +
  • Zwrotkę możesz rozbić na dwie poprzez wstawienie dwóch pustych wierszy.
  • +
  • "Cofnij" działa tylko trochę (edycja tekstu, ale nie akordów).
  • +
  • Gotową piosenkę możesz zapisać do pliku lub zgłosić do recenzji przed publikacją w githubie
  • +
+

+
+ + +

Szczegóły:

+ + +

Status:

+ +
+
+ + +
+
+ Ostatni zapisany/wyesportowany: +

+
+ `; + + const shadow = this.attachShadow({ mode: "closed" }); + shadow.appendChild(template.content.cloneNode(true)); + this.shadow = shadow; + + this.buttonNew=shadow.getElementById("buttonNew"); + this.buttonSave=shadow.getElementById("buttonSave"); + this.open=shadow.getElementById("open"); + this.openCustom=shadow.getElementById("openCustom"); + this.openUrl=shadow.getElementById("openUrl"); + + this.helpbody = shadow.getElementById("help-body"); + this.helpbody.addEventListener("click", (e) => {this.helpbody.hidden = true; }); + this.helpbody.hidden=true; + shadow.getElementById("helpbody-icon").addEventListener("click", (e) => {this.helpbody.hidden ^= true;}) + + this.openCustom.addEventListener("click", () => this.open.click()); + this.openUrl.addEventListener("click", () => this.OpenUrl()); + this.buttonSave.addEventListener("click", () => Save(this)); + this.open.addEventListener("change", (e) => this.LoadFile(e)); + this.buttonNew.addEventListener("click", (e) => { + if (confirm("Czy chcesz przywrócić wartości początkowe we wszystkich polach ?")) { + this.New(e) }}); + + for (let attr of attrs) { + this.mapAttribute(attr); + } + + const title = this.shadow.getElementById("title"); + title.addEventListener("change", () => { document.title = title.value; }); + + for (let button of shadow.querySelectorAll(".buttonCommit")) { + console.log("registering button", button); + const doubleClickEvent = new CustomEvent("git:commit", { + bubbles: true, + cancelable: true, + composed: true, + }); + button.addEventListener("click", () => {this.dispatchEvent(doubleClickEvent)}); + } + + for (let button of shadow.querySelectorAll(".buttonCommitAndPublish")) { + const doubleClickEvent = new CustomEvent("git:commitAndPublish", { + bubbles: true, + cancelable: true, + composed: true, + }); + button.addEventListener("click", () => this.dispatchEvent(doubleClickEvent)); + } + + this.attributeChangedCallback("git"); + } + + mapAttribute(attr) { + let a = this.shadow.getElementById(attr); + if (a.id === "done_chords") { + let av = this.shadow.getElementById("done_chords_value"); + let fun = (e) => { + if (a.checked) { + this.setAttribute("done_chords", av.value); + } else { + this.removeAttribute("done_chords"); + } + } + a.addEventListener("change", fun); + av.addEventListener("change", fun); + } else if (a.nodeName=='INPUT' && a.type==='checkbox') { + a.addEventListener("change", + (e) => this.setAttribute(attr, e.target.checked)); + + } else { + a.addEventListener("change", + (e) => this.setAttribute(attr, e.target.value)); + } + } + + attributeChangedCallback(attr) { + if (attr=='git') { + for (let d of this.shadow.querySelectorAll(".gitToolbar")) { + d.hidden = this.getAttribute('git') != 'true'; + } + return + } + + let a = this.shadow.getElementById(attr); + if (a && a.id === "done_chords") { + a.checked = this.hasAttribute("done_chords"); + this.shadow.getElementById("done_chords_value").value = a.checked + ? this.getAttribute("done_chords") : ""; + } else if (a && a.nodeName=='INPUT' && a.type==='checkbox') { + a.checked=this.getAttribute(attr)==="true"; + } else if (a) { + a.value=this.getAttribute(attr); + } + } + + OpenUrl() { + let url=prompt("Proszę podaj adres do strony z piosenką (np. wywrota):", "https://..."); + + let request = new XMLHttpRequest(); + request.open("GET", "https://europe-west1-wdw-21.cloudfunctions.net/songbook-ghe/pr0xy?url=" + url, true); + request.onload = () => { + console.log(request.responseText) + let converted = html2xmlstr(request.responseText, window) + this.Load(converted); + // Loaded file should be committable. + this.serialized=""; + } + request.send(); + + } + + body() { + return this.getElementsByTagName("song-body")[0]; + } + + openFileClick() { + return this.shadowRoot.getElementById('open').click(); + } + + New() { + this.Load(` + + + Herbata stygnie zapada mrok + A pod piórem ciągle nic + Obowiązek obowiązkiem jest + Piosenka musi posiadać tekst + +`); + this.body().selectAll(); + } + + Load(xmlContent) { + let parser = new DOMParser(); + let xmlDoc = parser.parseFromString(xmlContent.replaceAll(" style=", " type="), "text/xml"); + let z=xmlDoc.getElementsByTagName("lyric"); + if (z.length!=1) { + return false; + } + removeAllChildren(this); + let tmp= document.createElement("div"); + tmp.appendChild(z[0]); + Sanitize(tmp); + this.appendChild(tmp.childNodes[0]); + this.body().changePostprocess(); + + let song=xmlDoc.getElementsByTagName("song")[0]; + + this.setAttribute("title", song.getAttribute("title")); + this.readAttribute(song, "text_author", "text_author"); + this.readAttribute(song, "text_author_type", "text_author", "type"); + this.readAttribute(song, "artist", "artist"); + this.readAttribute(song, "artist_type", "artist", "type"); + + this.readAttribute(song, "alias", "alias"); + this.readAttribute(song, "original_title", "original_title"); + this.readAttribute(song, "translator", "translator"); + this.readAttribute(song, "album", "album"); + this.readAttribute(song, "composer", "composer"); + this.readAttribute(song, "composer_type", "composer", "type"); + this.readAttribute(song, "music_source", "music_source"); + + this.readAttribute(song, "metre", "music","metre"); + this.readAttribute(song, "guitar_barre", "guitar", "barre"); + this.readAttribute(song, "genre", "genre"); + this.readAttribute(song, "comment", "comment"); + + this.readAttributeDone(song, "done_text", "text"); + this.readAttributeDone(song, "done_authors", "authors"); + this.readAttributeDone(song, "done_chords", "chords"); + + this.readAttributeList(song, "keywords", "keyword"); + this.readAttributeList(song, "verificators", "verificator"); + + this.readAttribute(song, "to_do", "to_do"); + + this.tabs = xmlContent.includes("\t"); + this.serialized = xmlContent; + + const title = this.shadow.getElementById("title"); + document.title = title.value; + return true; + } + + Serialize() { + return Serialize(this); + } + + SerializeWithChange() { + const prev = this.serialized; + const newP = this.Serialize(); + return { + serialized: newP, + changed: newP != prev, + title: this.getAttribute("title"), + } + } + + MarkAsCommitted(serialized) { + this.serialized = serialized; + } + + LoadFile(e) { + console.log("LOADING", e); + + // setting up the reader + let filePath = (this.open.files[0]); + var reader = new FileReader(); + reader.addEventListener('load', (event) => { + if (filePath.name.endsWith(".html")) { + let converted = html2xmlstr(event.target.result, window) + this.Load(converted); + // Loaded file should be committable. + this.serialized=""; + } else { + this.Load(event.target.result); + // Loaded file should be committable. + this.serialized = ""; + } + }); + reader.readAsText(filePath); + } + + readAttribute(song, targetAttr, sourceTagName, sourceAttr=null) { + let nodes = song.getElementsByTagName(sourceTagName); + let node = nodes.length > 0 ? nodes[0] : null; + let txt=null; + if (node && !sourceAttr) { + txt = node.textContent; + } else if (node) { + txt = node.getAttribute(sourceAttr); + } + if (!txt || txt.trim()=='') { + this.removeAttribute(targetAttr); + } else { + this.setAttribute(targetAttr, txt); + } + } + + readAttributeDone(song, targetAttr, sourceTagName) { + let nodes = song.getElementsByTagName(sourceTagName); + let node = nodes.length > 0 ? nodes[0] : null; + if (node) { + this.setAttribute(targetAttr, node.textContent.trim()==''?'true':node.textContent); + } else { + this.removeAttribute(targetAttr); + } + } + + readAttributeList(song, targetAttr, sourceTagName) { + let nodes = song.getElementsByTagName(sourceTagName); + let txt=''; + for (let i=0; i < nodes.length; ++i) { + txt+=nodes[i].textContent + '\n'; + }; + if (txt && txt.trim()!='') { + this.setAttribute(targetAttr, txt); + } + } + + connectedCallback() { + // if (!this.body()) { + // this.New(); + // } + } + + static get observedAttributes() { + return attrs.concat(["git"]); + } +} + +function songEditorInit() { + customElements.define("song-editor", SongEditor); +} + +function init() { + SongChInit(); + SongVerseBisInit(); + SongBodyInit(); + songEditorInit(); +} + +init(); diff --git a/editor/testsong.xml b/editor/testsong.xml new file mode 100644 index 00000000..2c969a17 --- /dev/null +++ b/editor/testsong.xml @@ -0,0 +1,55 @@ + + Alternatywy + Stefan Kaszabara + Gratulujemy tym, którzy doczytali +aż tyle. + Czajkowski + Zespół Reprezentacyjny + Google Translate + (pre)Test Song + + +  Herbata stygnie, zapada zmrok +  A pod piórem ciągle nic... + + +  Jakiś refren z akordami  +  I kluczowymi akordami  + + + +  Teraz się zacznie:  +  Jeszcze jeden i jeszcze raz + +  Mamy zwrotkę z BISami + +  I nie bisami + + + + To jest zwrotka bez akordów nad + + + + + + + Testy + Dwa słowa + + Boom + Hit hop + + + + + chords + + + Piotr Tabor + Ktoś jeszcze + + Skasować to + + Internet + \ No newline at end of file diff --git a/editor/utils.js b/editor/utils.js new file mode 100644 index 00000000..90263068 --- /dev/null +++ b/editor/utils.js @@ -0,0 +1,93 @@ +export const nbsp = "\u00a0"; + +export function getRangeForCursor(e) { + let range=null; + if (document.caretRangeFromPoint) { + // edge, chrome, android + range = document.caretRangeFromPoint(e.clientX, e.clientY) + } else { + // firefox + var pos = [e.rangeParent, e.rangeOffset] + range = document.createRange() + range.setStart(...pos); + range.setEnd(...pos); + } + return range; +} + +export function mergeNodeAfter(target, source) { + let first = source.childNodes[0]; + let documentFragment = document.createDocumentFragment(); + while (source.childNodes.length > 0) { + documentFragment.appendChild(source.childNodes[0]); + } + target.append(documentFragment); + if (first != null) { + console.log("Setting cursor before:", first); + setCursorBefore(first); + } + source.remove(); +} + +export function findAncestor(p, nodeName) { + while (p != null) { + if (p.nodeName === nodeName) { + return p; + } + p = p.parentNode; + } +} + +export function removeAllChildren(node) { + // while(node.childNodes.length > 0) { + // node.removeChild(node.childNodes[0]); + // } + node.replaceChildren(); +} + +export function loadXMLDoc(filename) +{ + let xhttp = window.ActiveXObject ? + new ActiveXObject("Msxml2.XMLHTTP") + : new XMLHttpRequest(); + xhttp.open("GET", filename, false); + try {xhttp.responseType = "msxml-document"} catch(err) {} // Helping IE11 + xhttp.send(""); + return xhttp.responseXML; +} + +export function setCursorBefore(node) { + // Why not: document.getSelection().collapse(node); ? + + let newr=document.createRange(); + newr.setStartBefore(node); + newr.setEndBefore(node); + document.getSelection().removeAllRanges(); + document.getSelection().addRange(newr); + console.log("New selection:", document.getSelection(), newr); +} + +export function setCursorAfter(node) { + if (node.nextSibling) { + setCursorBefore(node.nextSibling) + } else { + let newr=document.createRange(); + if (node.nodeName=='#text') { + newr.setStart(node, node.nodeValue.length - 1) + newr.setEnd(node, node.nodeValue.length - 1) + } + // newr.setStartBefore(node); + // newr.setEndBefore(node); + document.getSelection().removeAllRanges(); + document.getSelection().addRange(newr); + console.log("New selection:", document.getSelection(), newr); + } + // Why not: document.getSelection().collapse(node); ? + // + // let newr=document.createRange(); + // newr.setStartBefore(node); + // newr.setEndBefore(node); + // document.getSelection().removeAllRanges(); + // document.getSelection().addRange(newr); + // console.log("New selection:", document.getSelection(), newr); +} \ No newline at end of file diff --git a/editor/verse.css b/editor/verse.css new file mode 100644 index 00000000..6bbae968 --- /dev/null +++ b/editor/verse.css @@ -0,0 +1,106 @@ +div.verse { + display: grid; + grid-template-columns: max-content max-content; + white-space: normal; + margin-bottom: 1.5em; +} + +div.verse_meta { + grid-column: 1; + grid-row: 1; +/* writing-mode: vertical-rl; + text-orientation: mixed;*/ + /* width: 5em;*/ + margin-right: 1.5em; +/* margin-top: 0.9em;*/ + text-align: center; + font-size: small; + /*vertical-align: center; + margin: auto;*/ +} + +div.verse_meta button { + font-size: medium; +} + +div#verse_sidechords { + grid-row: 1; + grid-column: 2; + display: flex; + flex-direction: column; + min-width: 20em; +} + +div#verse_sidechords song-side-chords { + display: flex; + font-family: sans-serif; + font-size: large; + align-items: flex-end; +} + +div.verse_main { + grid-row: 1; + grid-column: 3; + margin-left: 0.2em; +} + +div.verse_link { + grid-row: 1; + grid-column: 3/3; + margin-left: 1em; +} + +div.verse_link.chorus { + grid-row: 1; + grid-column: 3/3; + padding-left: 2em; +} + +div#verse_main.chorus { + padding-left: 2em; +} + +div.verse label { + display: flex; + align-items: center; +} +div.verse input[type=checkbox]{ + flex: none; +} + + +div.bis { + display: grid; + align-items: stretch; + grid-template-columns: 1fr fit-content(2em); + margin-top: 0.2em; +} + +div.bis_meta { + grid-column: 2 / 2; + grid-row: 1; + width: 2em; + margin-left: 2em; + display: flex; + /* text-align: center; + vertical-align: bottom;*/ + border-left: 1px solid black; +} + +div.bis_meta input#x { + display: block; + margin-top: auto; + margin-left: 0.2em; +} + +label#xl { + margin-left: 0.5em; + margin-top: auto; +} + +div.bis_main { + grid-row: 1; + grid-column: 1/2; + margin-left: 0em; +} + diff --git a/editor/verse.js b/editor/verse.js new file mode 100644 index 00000000..257a70ea --- /dev/null +++ b/editor/verse.js @@ -0,0 +1,417 @@ +import {findAncestor, nbsp} from "./utils.js"; +import {SideChordsInit} from "./sidechords.js"; +import {pushRowChords} from "./songbody.js"; + +export class SongVerse extends HTMLElement { + constructor() { + super(); + + const template = document.createElement('template'); + template.innerHTML = ` + + +
+
+ +
+ + + + + + + +
+
+ +
+
+ +
+
+ `; + + const shadow = this.attachShadow({ mode: "closed" }); + shadow.appendChild(template.content.cloneNode(true)); + this.nr=shadow.getElementById("nr"); + this.slot0 = shadow.getElementById("slot0"); + this.blocklink=shadow.getElementById("blocklink"); + this.main=shadow.getElementById("verse_main"); + this.link=shadow.getElementById("verse_link"); + this.sidechords=shadow.getElementById("verse_sidechords"); + this.linkSel=shadow.getElementById("verse_link_sel"); + this.buttonDelete=shadow.getElementById("delete"); + this.blocklink.addEventListener("input", (e) => this.blocklinkoninput(e, this)); + this.linkSel.addEventListener("input", (e) => this.inputLinkVerse(e, this)); + this.buttonDelete.addEventListener("click", (e) => this.remove()); + this.btRadios={} + for (const bt_radio of shadow.querySelectorAll('input[name="block_type"]')) { + bt_radio.addEventListener("input", (e) => this.refoninput(e, this)); + this.btRadios[bt_radio.value]=bt_radio; + } + const observer = new MutationObserver(()=> {this.refreshSidechords();}); + observer.observe(this, { attributes: false, childList: true, subtree: true, characterData:false }); + + this.resizeObserver = new ResizeObserver( (entries) => { + for (const e of entries) { + if (e.target.siblingSide) { + e.target.siblingSide.style.height = e.borderBoxSize[0].blockSize + "px"; + } + } + }); + } + + onChangedChord() { + this.refreshSidechords() + } + + refreshSidechords() { + this.resizeObserver.disconnect(); + + // Trick to not jump too much + this.sidechords.style.width = this.sidechords.getBoundingClientRect().width + "px"; + + let newsc = document.createDocumentFragment() + if (!this.getAttribute("blocknb")) { + let rows = this.getElementsByTagName("song-row"); + for (let r of rows) { + const ed = document.createElement("song-side-chords") + ed.setRow(r); + newsc.appendChild(ed); + r.siblingSide = ed; + this.resizeObserver.observe(r); + } + } + + this.sidechords.replaceChildren(newsc) + this.sidechords.style.removeProperty("width"); + } + + refoninput(e, verse) { + if (this.btRadios.chorus.checked) { + verse.setAttribute("type", "chorus"); + } + if (this.btRadios.verse.checked) { + verse.setAttribute("type", "verse"); + } + if (this.btRadios.other.checked) { + verse.setAttribute("type", "other"); + } + + verse.refresh(); + } + + refresh() { + this.updateClass() + this.updateVisibility(); + this.refreshSidechords(); + } + + + blocklinkoninput(e, verse) { + if (verse.blocklink.checked) { + verse.setAttribute("blocknb", "?"); + } else { + const referred = this.getReferred(); + verse.removeAttribute("blocknb"); + if (referred) { + verse.innerHTML=referred.innerHTML; + } + } + + verse.refresh(); + } + + + inputLinkVerse(e, verse) { + let r = document.getElementById(verse.linkSel.value); + if (r) { + verse.setAttribute("blocknb", r.id); + verse.setRadioToType(r.getAttribute('type')); + } else { + verse.setAttribute("blocknb", "?"); + verse.setRadioToType('?'); + } + + this.refoninput(e, verse); + } + + updateClass() { + if (this.isChorus()) { + this.main.classList.add("chorus"); + this.link.classList.add("chorus"); + } else { + this.main.classList.remove("chorus"); + this.link.classList.remove("chorus"); + } + } + + updateVisibility() { + if (this.getAttribute("blocknb")) { + this.main.hidden = true; + this.link.hidden = false; + this.btRadios.chorus.disabled = true; + this.btRadios.verse.disabled = true; + this.btRadios.other.disabled = true; + } else { + this.main.hidden = false; + this.link.hidden = true; + this.btRadios.chorus.disabled = false; + this.btRadios.verse.disabled = false; + this.btRadios.other.disabled = false; + } + } + + connectedCallback() { + if (this.getAttribute("blocknb") && + !isNaN(this.getAttribute("blocknb"))) { + let offset=parseInt(this.getAttribute("blocknb")); + if (offset && !isNaN(offset)) { + let j=0; + let toSet='?'; + for (let i=0; i < this.parentNode.childNodes.length; ++i) { + let v=this.parentNode.childNodes[i]; + if (v.nodeName==='SONG-VERSE' && !v.getAttribute('blocknb')) { + j++; + } + if (j==offset) { + toSet=v.id; + break; + } + } + this.setAttribute("blocknb", toSet); + } + } + + this.observer = new MutationObserver((mutations) => this.refreshPosition(this, mutations)); + console.log("Observing:", this.parentNode); + this.refreshPosition(this) + this.observer.observe(this.parentNode, { attributes: true, childList: true, subtree: true }); + } + + disconnectedCallback() { + this.observer.disconnect(); + } + + refreshPosition(verse, mutations) { + if (!verse.parentNode) { + console.warn("refresh-position disconnected"); + return; + } + verse.blocklink.disabled=!verse.previousSibling; + + if (verse.isVerse()) { + let j=0; + for (let i=0; i < verse.parentNode.childNodes.length; ++i) { + let v =verse.parentNode.childNodes[i]; + if (v.nodeName!=='SONG-VERSE') { + continue; + } + if (v.isVerse()) { + j=j+1; + } + if (v===this) { + verse.nr.innerText = j+"."; + break; + } + } + } else if (verse.isChorus()) { + verse.nr.innerText='Ref:'; + } else { + verse.nr.innerText=''; + } + + while(verse.linkSel.options.length>0) { + verse.linkSel.options.remove(0); + } + + verse.linkSel.add(new Option("[ wybierz zwrotkę ]", "?")); + + for (let i=0; i < verse.parentNode.childNodes.length; ++i) { + let v = verse.parentNode.childNodes[i]; + if (v == this) { + break; + } + if (v.nodeName==='SONG-VERSE'&& !v.getAttribute("blocknb")) { + verse.linkSel.add(new Option(v.shortRep(), v.id, false, v.id===verse.getAttribute("blocknb"))); + if (v.id===verse.getAttribute("blocknb")) { + verse.setRadioToType(v.getAttribute('type')); + } + } + } + + } + + isChorus() { + let r=this.getReferred(); + if (r) { + return r.isChorus(); + } else { + return this.getAttribute("type") == 'chorus';; + } + } + + isVerse() { + let r=this.getReferred(); + if (r) { + return r.isVerse(); + } else { + return this.getAttribute("type") == 'verse';; + } + } + + getReferred() { + if (this.getAttribute("blocknb")) { + return document.getElementById(this.getAttribute("blocknb")); + } else { + return null; + } + } + + shortRep() { + if (this.childNodes.length<1) { + return null; + } + + let rows = this.getElementsByTagName("song-row"); + return rows.length>0? rows[0].innerText : null; + } + + static get observedAttributes() { + return ["blocknb", "type"] + } + + attributeChangedCallback(attr) { + console.log("Attribute changed...", attr) + if (attr=='type') { + this.refreshAttributes(); + } + if (attr=="blocknb") { + this.blocklink.checked = this.getAttribute("blocknb"); + } + this.updateClass(); + this.updateVisibility(); + } + + refreshAttributes() { + this.setRadioToType(this.getAttribute("type")); + } + + setRadioToType(t) { + this.btRadios.chorus.checked = t=='chorus'; + this.btRadios.verse.checked = t=='verse' || t==''; + this.btRadios.other.checked = t=='other'; + } +} + + +export class SongBis extends HTMLElement { + constructor() { + super(); + + const template = document.createElement('template'); + template.innerHTML = ` + +
+
+
+
+ `; + + const shadow = this.attachShadow({ mode: "closed" }); + shadow.appendChild(template.content.cloneNode(true)); + this.x=shadow.getElementById("x"); + this.x.addEventListener("input", (e) => {this.input(e, this)}); + } + + input(e, songbis) { + songbis.setAttribute("x", e.target.value); + } + + connectedCallback() { + this.attributeChangedCallback(); + } + + attributeChangedCallback() { + this.x.value = this.getAttribute("x"); + } + + static get observedAttributes() { + return ["x"] + } + + focus() { + this.x.focus(); + } +} + +export function getChordsFromRow(row) { + let text=""; + for (let i=0; i < row.childNodes.length; ++i) { + let n = row.childNodes[i]; + if (n.nodeName==='SONG-CH') { + text+=n.getAttribute("a") + " "; + } + } + return text.trim().replaceAll(nbsp, " ") +} + +export function setSideChordsForRow(row, ch) { + const chr=getChordsFromRow(row); + if (row.getAttribute('type')=='instr') { + pushRowChords(row, ch) + } + if (chr===ch.trim()) { + console.log("Side and main back in sync") + row.removeAttribute("sidechords"); + } else { + console.log(`Side and main not in sync: '${chr}'!='${ch.trim()}'`) + row.setAttribute("sidechords", ch.trim()); + } +} + +export function getSideChordsForRow(row) { + let sch = row.getAttribute("sidechords"); + if (sch) { // Even empty sch - means explicitly no children in the subtree. + return sch.trim(); + } else { + return getChordsFromRow(row); + } +} + +export function SongVerseBisInit() { + SideChordsInit(); + customElements.define("song-verse", SongVerse); + customElements.define("song-bis", SongBis); +} + +export function getNextRow(row) { + if (row.nextSibling && row.nextSibling.nodeName=='SONG-ROW') { + return row.nextSibling; + } + let songbody = findAncestor(row, "SONG-BODY"); + let rows = songbody.getElementsByTagName("song-row"); + for (let i=0; i < rows.length; ++i) { + if (rows[i]==row) { + return i=0; --i) { + if (rows[i]==row) { + return i>1 ? rows[i-1] : null; + } + } +} \ No newline at end of file diff --git a/prepare_context.sh b/prepare_context.sh new file mode 100755 index 00000000..70f1b190 --- /dev/null +++ b/prepare_context.sh @@ -0,0 +1,13 @@ +# Prepares environment for running the scripts. For now tested on mac + +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +if [ ! -d "${SCRIPT_DIR}/.python_venv" ]; then + # Tested on OSX + python3 -m venv .python_venv/ + export PATH="/usr/local/opt/icu4c/bin:$PATH" + export PKG_CONFIG_PATH="/opt/homebrew/opt/icu4c/lib/pkgconfig" + pip3 install -r "${SCRIPT_DIR}/requirements.txt" +fi + +source "${SCRIPT_DIR}/.python_venv/bin/activate" diff --git a/render_epub.sh b/render_epub.sh new file mode 100755 index 00000000..8cded0d4 --- /dev/null +++ b/render_epub.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env bash + +set -o errexit #niech ten skrypt przestanie się wykonywać przy pierwszym błędzie +set -o pipefail #jesli któreś polecenie w przetwarzaniu strumieniowym (z |) się wywali to przestań wykonywać + +__dir="$( + cd "$(dirname "$0")" 2>&1 >/dev/null + pwd -P +)" #celem jest ustalenie katalogu gdzie jest wykonywany skrypt i zapisanie na zmiennej dir +__script="$(basename "$0")" #sprawdzenie jak się ten skrypt nazywa + +display_usage() { + echo "Renders a EPUB containing a single song, or a compiled songbook." + echo "Usage: ${__script} " +} #funkcja która wypisuje pomoc + +if [[ $# -gt 1 ]]; then + display_usage + exit 1 +fi + +#cd "${__dir}/src/epub/" +PYTHONPATH="${__dir}" python3 ${__dir}/src/epub/create_epub.py "${@}" + diff --git a/render_epubs.sh b/render_epubs.sh new file mode 100755 index 00000000..c315e00c --- /dev/null +++ b/render_epubs.sh @@ -0,0 +1,14 @@ +#!/bin/bash +set -e -x +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +for s in ${SCRIPT_DIR}/songbooks/*.yaml; do + echo "Rendering: ${s}" >&2 + SONGBOOK_ID=$(PYTHONPATH="${SCRIPT_DIR}" python3 ${SCRIPT_DIR}/src/songbook2id.py "${s}") + ${SCRIPT_DIR}/render_epub.sh "${s}" + if [ -f /opt/homebrew/bin/epubcheck ]; then + epubcheck "${SCRIPT_DIR}/build/${SONGBOOK_ID}.epub" + else + java -jar /usr/bin/epubcheck "${SCRIPT_DIR}/build/${SONGBOOK_ID}.epub" + fi +done \ No newline at end of file diff --git a/render_htmls.sh b/render_htmls.sh new file mode 100755 index 00000000..9ba6a3cc --- /dev/null +++ b/render_htmls.sh @@ -0,0 +1,25 @@ +#!/usr/bin/env bash + +set -o errexit +set -o pipefail + +__dir="$( + cd "$(dirname "$0")" 2>&1 >/dev/null + pwd -P +)" +__script="$(basename "$0")" + +display_usage() { + echo "Renders a Zip file containing songs in html" + echo "Usage: ${__script} " +} #funkcja która wypisuje pomoc + +if [[ $# -gt 1 ]]; then + display_usage + exit 1 +fi + +PYTHONPATH="${__dir}" python3 "${__dir}/src/html/htmls_generator.py" +PYTHONPATH="${__dir}" python3 "${__dir}/src/html/index_generator.py" +cd "${__dir}/build/" +zip -r songs_html.zip songs_html diff --git a/render_pdf.sh b/render_pdf.sh old mode 100644 new mode 100755 index c0d5f3fc..2ac54c59 --- a/render_pdf.sh +++ b/render_pdf.sh @@ -2,33 +2,62 @@ set -o errexit set -o pipefail +set -x -__dir="$(cd "$(dirname "$0")" 2>&1 >/dev/null; pwd -P)" -__script="$(basename "$0")" +__dir="$( + cd "$(dirname "$0")" 2>&1 >/dev/null + pwd -P +)" +__script="$(realpath $(basename "$0"))" + +display_usage() { + echo "Renders a PDF containing a single song, or a compiled songbook." + echo "Usage: ${__script} TITLE XML_SONG_FILES..." + echo " or: ${__script} optional: songbook.yaml" -display_usage() { - echo "Renders a PDF containing a single song, or a compiled songbook." - echo "Usage: ${__script} TITLE XML_SONG_FILES..." } -if [[ $# -lt 4 ]]; then - display_usage - exit 1 +if [[ $# -lt 1 ]]; then + display_usage + exit 1 +fi + +tex_dir=${__dir}/build/songs_tex +mkdir -p ${tex_dir} +tex_file=$(realpath "${tex_dir}")/output.tex + +MAKE_INDEX=true +if [[ "${@: -1}" =~ \.yaml$ || $# -lt 4 ]]; then + papersize=$1 + PYTHONPATH="${__dir}" python3 ${__dir}/src/latex/songbook2tex.py "${papersize}" "${@:2}" >${tex_file} + SONGBOOK_ID=$(PYTHONPATH="${__dir}" python3 ${__dir}/src/songbook2id.py "${@:2}") + JOB="${SONGBOOK_ID}_${papersize}" +else + format=$1 + papersize=$2 + title=$3 + if [[ ${format} == "single" ]]; then + MAKE_INDEX=false + fi + PYTHONPATH="${__dir}" python3 ${__dir}/src/latex/songs2tex.py "${format}" "${papersize}" "${title}" "${@:4}" >${tex_file} + JOB="output" fi -format=$1 -papersize=$2 -title=$3 +(cd ${tex_dir}; rm -rf "${JOB}.aind" "${JOB}.gind" "${JOB}.wind" "${JOB}.aadx" "${JOB}.gadx" "${JOB}.wadx") + +( + cd ${tex_dir} -tex_dir=${__dir}/build -tex_file=${__dir}/build/output.tex + # Run pdflatex three times to recalculate longtables and toc + TEXINPUTS=.:${__dir}/src/latex: pdflatex -shell-escape -jobname=${JOB} -output-directory "${tex_dir}" "${tex_file}" + INDEX_STY=() -sed "s/:title:/${title}/" ${__dir}/src/formats/${format}_${papersize}_p.tex > ${tex_file} -for song in ${@:4}; do - python ${__dir}/src/song2tex.py $song >> ${tex_file} -done -cat ${__dir}/src/formats/${format}_${papersize}_s.tex >> ${tex_file} + if ${MAKE_INDEX}; then + (cd ${tex_dir}; texindy -M lang/polish/utf8-lang aliases.idx) + (cd ${tex_dir}; texindy -M lang/polish/utf8-lang -M ${__dir}/src/formats/no-lg genre.idx) + (cd ${tex_dir}; texindy -M lang/polish/utf8-lang -M ${__dir}/src/formats/no-lg wyk.idx) + fi -# Run pdflatex twice to recalculate longtables -TEXINPUTS=.:${__dir}/src/latex: pdflatex -output-directory ${tex_dir} ${tex_file} -TEXINPUTS=.:${__dir}/src/latex: pdflatex -output-directory ${tex_dir} ${tex_file} \ No newline at end of file + TEXINPUTS=.:${__dir}/src/latex: pdflatex -shell-escape -jobname=${JOB} -output-directory "${tex_dir}" "${tex_file}" + TEXINPUTS=.:${__dir}/src/latex: pdflatex -shell-escape -jobname=${JOB} -output-directory "${tex_dir}" "${tex_file}" +) diff --git a/render_pdfs.sh b/render_pdfs.sh new file mode 100755 index 00000000..39aa5a3e --- /dev/null +++ b/render_pdfs.sh @@ -0,0 +1,7 @@ +#!/bin/bash +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +for s in songbooks/*.yaml; do + ./render_pdf.sh a4 "${s}" + ./render_pdf.sh a5 "${s}" +done \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index b103c18c..3d8a425c 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,7 @@ -Jinja2==2.11.2 -lxml==4.5.0 -MarkupSafe==1.1.1 +Jinja2~=3.1 +#lxml==4.5.0 - `sudo apt-get install python3-lxml` (or similar) works better, as it's not python-native package. +MarkupSafe~=2.1 +lxml +PyICU>=2.7 +pyyaml +regex \ No newline at end of file diff --git a/songbooks/default.songbook.yaml b/songbooks/default.songbook.yaml new file mode 100644 index 00000000..609e356b --- /dev/null +++ b/songbooks/default.songbook.yaml @@ -0,0 +1,15 @@ +songbook: + title: "Śpiewnik" + subtitle: "[wszystkie]" + place: "Warszawa" + url: "https://spiewaj.com" + uuid: "ad0aacee-2534-44f2-bb1e-02ced3775087" + id: "default_all" + publisher: | + 21. Warszawska Drużyna Harcerska ,,Stare Żbiki'' + im. gen. Ignacego Prądzyńskiego + image: + jpg: songbooks/wdw21/znak21.jpg + pdf: songbooks/wdw21/znak21.pdf + songs: + - glob: "/songs/**/*.xml" \ No newline at end of file diff --git a/songbooks/dino.songbook.yaml b/songbooks/dino.songbook.yaml new file mode 100644 index 00000000..f1e0bc7d --- /dev/null +++ b/songbooks/dino.songbook.yaml @@ -0,0 +1,22 @@ +songbook: + id: "dino" + uuid: "7e7bee69-be48-49fd-85af-7ce4ec64d299" + title: "Śpiewnik Dino" + subtitle: "2024" + url: "https://spiewaj.com/#dino" + publisher: | + Nieformalna grupa dinozaurów (ex-)harcerskich + place: Warszawa + image: + svg: "./dino/dino1.svg" + png: "./dino/dino1.png" + pdf: "./dino/dino1.pdf" + songs: + - glob: "songs/en/**/*.xml" + - glob: "songs/pl/bardowie/**/*.xml" + - glob: "songs/pl/harc/**/*.xml" + - glob: "songs/pl/kabaret/*.xml" + - glob: "songs/pl/poezja/*.xml" + - glob: "songs/pl/pop/*.xml" + - glob: "songs/pl/szanty/*.xml" + - glob: "songs/pl/custom/21wdw/Ballada_antysojowa.xml" \ No newline at end of file diff --git a/songbooks/dino/dino1.pdf b/songbooks/dino/dino1.pdf new file mode 100644 index 00000000..cfafbfd8 Binary files /dev/null and b/songbooks/dino/dino1.pdf differ diff --git a/songbooks/dino/dino1.png b/songbooks/dino/dino1.png new file mode 100644 index 00000000..067fe109 Binary files /dev/null and b/songbooks/dino/dino1.png differ diff --git a/songbooks/dino/dino1.svg b/songbooks/dino/dino1.svg new file mode 100644 index 00000000..0af53e8c --- /dev/null +++ b/songbooks/dino/dino1.svg @@ -0,0 +1,102 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/songbooks/smoke.songbook.yaml b/songbooks/smoke.songbook.yaml new file mode 100644 index 00000000..581725c5 --- /dev/null +++ b/songbooks/smoke.songbook.yaml @@ -0,0 +1,15 @@ +songbook: + title: "Śpiewnik testowy" + subtitle: "[smoke]" + place: "Szczekociny" + url: "https://spiewaj.com/#test" + hidden: true + uuid: "ad0aacee-2534-44f2-bb1e-012345678901" + publisher: | + Górniczo-hutnicze zastępy + testowe + image: + jpg: songbooks/wdw21/znak21.jpg + pdf: songbooks/wdw21/znak21.pdf + songs: + - glob: "/songs/**/Bar*.xml" \ No newline at end of file diff --git a/songbooks/spiewnik_lupienicki.songbook.yaml b/songbooks/spiewnik_lupienicki.songbook.yaml new file mode 100644 index 00000000..b788de4d --- /dev/null +++ b/songbooks/spiewnik_lupienicki.songbook.yaml @@ -0,0 +1,23 @@ +songbook: + id: "spiewnik_lupienicki" + uuid: "27f5dd1b-13ec-426b-a6ae-dbf8b43d3883" + title: "Śpiewnik Łupienicki" + subtitle: "2024" + url: "https://spiewaj.com/#spiewnik_lupienicki" + publisher: | + Śpiewnik Łupienicki (test) + place: Łupienice + image: + svg: "./spiewnik_lupienicki/lupienice.svg" + png: "./spiewnik_lupienicki/lupienice.png" + pdf: "./spiewnik_lupienicki/lupienice.pdf" + songs: + - glob: "songs/pl/folk/**/*.xml" + - glob: "songs/pl/bardowie/**/*.xml" + - glob: "songs/pl/harc/**/*.xml" + - glob: "songs/pl/kabaret/**/*.xml" + - glob: "songs/pl/poezja/**/*.xml" + - glob: "songs/pl/pop/**/*.xml" + - glob: "songs/pl/religijne/**/*.xml" + - glob: "songs/pl/szanty/**/*.xml" + diff --git a/songbooks/spiewnik_lupienicki/lupienice.pdf b/songbooks/spiewnik_lupienicki/lupienice.pdf new file mode 100644 index 00000000..d2ce30ec Binary files /dev/null and b/songbooks/spiewnik_lupienicki/lupienice.pdf differ diff --git a/songbooks/spiewnik_lupienicki/lupienice.png b/songbooks/spiewnik_lupienicki/lupienice.png new file mode 100644 index 00000000..aca4a962 Binary files /dev/null and b/songbooks/spiewnik_lupienicki/lupienice.png differ diff --git a/songbooks/spiewnik_lupienicki/lupienice.svg b/songbooks/spiewnik_lupienicki/lupienice.svg new file mode 100644 index 00000000..66e1cc0f --- /dev/null +++ b/songbooks/spiewnik_lupienicki/lupienice.svg @@ -0,0 +1,127 @@ + + + + + + +óA diff --git a/src/latex/znak21.eps b/songbooks/wdw21/znak21.eps similarity index 100% rename from src/latex/znak21.eps rename to songbooks/wdw21/znak21.eps diff --git a/songbooks/wdw21/znak21.jpg b/songbooks/wdw21/znak21.jpg new file mode 100644 index 00000000..39502d7d Binary files /dev/null and b/songbooks/wdw21/znak21.jpg differ diff --git a/src/latex/znak21.pdf b/songbooks/wdw21/znak21.pdf similarity index 100% rename from src/latex/znak21.pdf rename to songbooks/wdw21/znak21.pdf diff --git a/songs/1788.xml b/songs/1788.xml deleted file mode 100644 index 9026dc54..00000000 --- a/songs/1788.xml +++ /dev/null @@ -1,99 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Ta pierwsza morska podróż do Australii! - Łotry przy burtach, prostytutki w kojach - - Wszyscy się bali, łkali i rzygali - W drodze do raju. Przewrotności Twoja - Panie, coś w jeszcze nam nieznanych planach - Miał czarne diabły strzegące wybrzeży - Edenu, który przeznaczyłeś dla nas, - A w który nikt, prawdę mówiąc, nie wierzył! - - - Czym żeśmy, marni, zasłużyli na to? - Ten, co zawisnąć miał za kradzież płaszcza - - Płakał nad swoją niechybną zatratą; - Nie widział Ciebie w robaczywych masztach - Statku, co tylko był więzieniem nowym; - Tej co kupczyła ciałami swych dziatek - - Ani przez mgnienie nie przyszło do głowy, - Że to nadziei - nie rozpaczy statek. - - - Niejeden żołnierz z ponurej eskorty - (Bo czym się ich los od naszego różnił?) - Wiedział, że nigdy już nie ujrzy portu, - Gdzie go podejmą karczmarze usłużni - I płatne dziewki; że zabraknie rumu - Zanim do celu przygnasz okręt szparki. - Z marynarzami pili więc na umór - I - wbrew zakazom - grali o więźniarki. - - - Prawda, nie wszyscy próby Twe przetrwali, - Ale też ciężkoś nas doświadczał, Panie: - Nie oszczędzałeś nam wysokiej fali, - Za którą mnogim przyszło w oceanie - Zakończyć żywot; innym dziąsła zgniły, - Wypadły zęby, rozgorzały wrzody... - Więc znaczą nasz zielony szlak mogiły - Szkorbutu, szału, francuskiej choroby. - - - Nikt nie odnajdzie w ruchomych odchłaniach - Ciał nieszczęśników - oprócz Ciebie, Boże. - Ich żywot grzeszny epitafiów wzbrania, - Lecz - ukarani. Więc wystarczy może, - Żeś się posłużył starszliwym przykładem: - Oni naprawdę dotarli do piekieł, - A umierając nie wierzył z nich żaden, - Że w swym cierpieniu umiera - człowiekiem. - - - Ląd nam się wydał niegościnny, dziki; - Łotr bez honoru, kobieta sprzedajna - Z dnia na dzień - jak się stać ma osadnikiem - Nieznanych światów? Bo rozpoznać Raj nam - Nie było łatwo; znaleść w sobie siłę, - Wbrew przeciwnościom, bez słowa zachęty - By mimo wszystko żyć - nim nam odkryłeś - Kraj szczodry w zboże, złoto i diamenty. - - - Łajdacki pomiot, łotrowskie nasienie - Czerpiąc ze spichrza Twoich dóbr wszelakich - - Choć tyle wiemy własnym doświadczeniem: - W nas jest Raj, Piekło - I do obu - szlaki. - - - - - - - - - - - - - Poezja śpiewana - - - - - Onufry - - - - - - diff --git a/songs/A_my_nie_chcemy_uciekac_stad.xml b/songs/A_my_nie_chcemy_uciekac_stad.xml deleted file mode 100644 index dfb8a497..00000000 --- a/songs/A_my_nie_chcemy_uciekac_stad.xml +++ /dev/null @@ -1,83 +0,0 @@ - - - - Jacek Kaczmarski - Zwrotka 'Dym w dziurce od klucza' nie pojawia się w oficjalnych wersjach, które przeglądałem. - Przemysław Gintrowski - Jacek Kaczmarski; Przemysław Gintrowski - - - - - Stanął w ogniu nasz wielki dom - Dym w korytarzach kręci sznury - Jest głęboka, naprawdę czarna noc - Z piwnic płonące uciekają szczury - - - Krzyczę przez okno, czoło w szybę wgniatam - Haustem powietrza robię w żarze wyłom - Ten kto mnie słyszy ma mnie za wariata - Woła: co jeszcze świrze ci się śniło? - - - Więc chwytam kraty rozgrzane do białości - Twarz swoją widzę, twarz w przekleństwach - A obok sąsiad patrzy z ciekawością - Jak płonie na nim kaftan bezpieczeństwa - - - Dym w dziurce od klucza, a drzwi bez klamek - Pękają tynki wzdłuż spoconej ściany - Wsuwam swój język w rozpalony zamek - Śmieje się za mną ktoś jak obłąkany - - - Lecz większość śpi nadal, przez sen się uśmiecha - A kto się zbudzi nie wierzy w przebudzenie - Krzyk w wytłumionych salach nie zna echa - Na rusztach łóżek milczy przerażenie - - - Ci przywiązani dymem materacy - Przepowiadają życia swego słowa - Nam pod nogami żarzą się posadzki - Deszcz iskier z sufitu osiada na głowach - - - Dym coraz gęstszy, obcy ktoś się wdziera - A my wciśnięci w najdalszy sali kąt - Tędy -- wrzeszczy -- niech was jasna cholera! - A my nie chcemy uciekać stąd - - - - A my nie chcemy uciekać stąd - Krzyczymy w szale wściekłości i pokory - Stanął w ogniu nasz wielki dom - Dom dla psychicznie i nerwowo chorych - - - - - - - - AdamOnufry - - - - Dodaje rozmieszczenie akordów.Nie jestem na 100% pewien płyty - - - - - - chord positioning - - - - - Przybycie Tytanów - Poezja śpiewana - diff --git a/songs/Ach_kiedy_znowu_rusza.xml b/songs/Ach_kiedy_znowu_rusza.xml deleted file mode 100644 index c9750612..00000000 --- a/songs/Ach_kiedy_znowu_rusza.xml +++ /dev/null @@ -1,63 +0,0 @@ - - - Ach, kiedy znowu ruszą... - Edward Stachura - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Minęło wiele miesięcy - Ale mnie nic nie minęło - Czas dla mnie w miejscu przystanął - Takie jest chłopcy, takie jest piekło - Na odgłos kroków po schodach - Serce wciąż skacze do gardła - Że może to jednak to ona - Ona to piękna moja zagłada - - - Ach, kiedy znowu ruszą dla mnie dni - Noce i dni - I pory roku krążyć zaczną znów - Jak obieg krwi - Lato jesień zima wiosna - Do Boliwii droga prosta - Wiosna lato jesień zima - Nic mi nie przypomina - - - Ni żyć już można mi umrzeć - Wypłakane łzy doszczętnie - Oddycham ledwie i z bólem - Kością mi w gardle staje powietrze - Czy tak już będzie i będzie - Boże mój Boże mój Boże - Zawsze i wszędzie w obłędzie - Boże mój wbiłeś we mnie wszytkie noże - - - - - - - - Adam - - - - - - - - - chords - - - - - Stare Dobre Małżeństwo - - diff --git a/songs/Ambasadorowie.xml b/songs/Ambasadorowie.xml deleted file mode 100644 index 7c4c135a..00000000 --- a/songs/Ambasadorowie.xml +++ /dev/null @@ -1,82 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Jeszcze pod ręką globus - z taką mapą świata, - Na jaką stać strategię, plany i marzenia. - Jeszcze insygnia władzy, sobolowa szata, - Gęsty, trefiony włos i ręki gest bez drżenia. - Jeszcze w zasięgu dłoni zegar - jeszcze wcześnie, - Pewności siebie ruch wskazówki nie odbiera. - Wzrok - lustro duszy - widzi wszystko nawet we śnie, - Któremu spokój niesie Cyfra i Litera. - - - Tyle zrobili już, jak na swe młode lata, - Ulega dziejów wosk ich nieomylnym śladom - - To George de Selve - obiecujący dyplomata - I Jean de Dinteville - francuski ambasador. - - - Dyskretny przepych - tylko echem dostojeństwa, - Turecki dywan, włoska lutnia - znak obycia. - W milczących ustach bezwzględnego smak zwycięstwa, - W postawach - wielkość - osiągnięta już za życia. - Ciężka kotara obu wspiera tym - co kryje. - Patrzą przed siebie śmiało, pewni swoich racji, - Wszak dyplomacja włada wszystkim dziś - co żyje, - A oni - kwiat szesnastowiecznej dyplomacji! - - - Nie wiedzą, co to ból, co dżuma, albo katar. - Zachciankom wielkich - świat uczyni zawsze zadość! - To George de Selve - obiecujący dyplomata - I Jean de Dinteville - francuski ambasador. - - - Lecz w nastrojonej lutni nagle struna pęka - I żółkną brzegi kart w otwartej wiedzy księdze... - Za krucyfiksem błądzi mimowolnie ręka - Strzałka zegara iść zaczyna coraz prędzej! - Straszliwy kształt przed nimi zjawia się w pół kroku - I niszczy spokój - czy artysta się wygłupia? - Nie, to nie żart! Na kształt ten trzeba spojrzeć z boku! - Żeby zobaczyć jasno, że to czaszka trupia! - - - Byli - i nie ma ich, ach - cóż za wielka strata! - Jak nazywali się? Któż dzisiaj tego świadom? - Ach! George de Selve! Obiecujący dyplomata... - Ach! Jean de Dinteville, francuski ambasador... - - - - - - - - - - - - - - Poezja śpiewana - - - - - Onufry - - - - - - diff --git a/songs/Autobiografia.xml b/songs/Autobiografia.xml deleted file mode 100644 index 4f1f804f..00000000 --- a/songs/Autobiografia.xml +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - Perfect - - - - - Miałem dziesięć lat gdy usłyszał o mnie świat - W mej piwnicy był nasz klub - Kumpel radio zniósł, usłyszałem ,,Blue suede shoes'' - I nie mogłem w nocy spać - - - Wiatr odnowy wiał, darowano resztę kar - Znów się można było śmiać - W kawiarniany gwar jak tornado jazz się wdarł - I ja też chciałem grać - - - Ojciec Bóg wie gdzie martenowski stawiał piec - Mnie paznokieć z palca zszedł - Z gryfu został wiór grałem milion różnych bzdur - I poznałem co to seks - - - Pocztówkowy szał, każdy z nas ich pięćset miał - Zamiast nowej pary jeans - A w sobotnią noc był Luksemburg, chata, szkło - Jakże się chciało żyć - - - Było nas trzech, w każdym z nas inna krew - Ale jeden przyświecał nam cel - Za kilka lat mieć u stóp cały świat - Wszystkiego w bród - - - Alpagi łyk, dyskusje po świt - Niecierpliwy w nas ciskał się duch - Ktoś dostał w nos, to popłakał się ktoś - Coś działo się - - - Poróżniła nas, za jej Poli Raksy twarz - Każdy by się zabić dał - W pewną letnią noc gdzieś na dach wyniosłem koc - I dostałem to com chciał - - - Powiedziała mi, że kłopoty mogą być - Ja jej, że egzamin mam - Odkręciła gaz, nie zapukał nikt na czas - Znów jak pies byłem sam - - - Stu różnych ról czym ugasić mój ból - Nauczyło mnie życie jak nikt - W wyrku na wznak przechlapałem swój czas - Najlepszy czas - - - W knajpie dla braw Klezmer kazał mi grać - Takie rzeczy, że jeszcze mi wstyd - Pewnego dnia zrozumiałem, że ja - Nie umiem nic - - - Słuchaj mnie tam, pokonałem się sam - Oto wyśnił sie wielki mój sen - Tysięczny tłum spija słowa z mych ust - Kochają mnie - - - W hotelu fan mówi: na taśmie mam - To jak w gardłach im rodzi się śpiew - Otwieram drzwi i nie mówię już nic - Do czterech ścian - - - - - - - - - - diff --git a/songs/Bagno.xml b/songs/Bagno.xml deleted file mode 100644 index 33253fff..00000000 --- a/songs/Bagno.xml +++ /dev/null @@ -1,122 +0,0 @@ - - - - 21. WDH ,,Stare Żbiki'' - Piosenka wykonywana na specyficznie nastrojonej gitarze. - 21. WDH ,,Stare Żbiki'' - 21. WDH ,,Stare Żbiki'' - - - - - Wujek Euzebiusz dał mi kilka cegieł - Żebym zbudował zamek bo miałem kilka cegieł - Które dał mi wujek Euzebiusz - Więc zbudowałem zamek na skalistym podłożu - Ale utonął w bagnie bo podłoże było skaliste - Prawie jak dusza wujka Euzebiusza - - - Wujek Euzebiusz, je je je... - - - Więc chciałem więcej cegieł - Od wujka Euzebiusza - Ale wujek Euzebiusz - Niestety utonął w bagnie - Bo podłoże było skaliste - Więc resztę cegieł - Wziąłem od ciotki Matyldy - - - Ciotka Matylda, je je je... - - - Więc zbudowałem zamek nowy - Na skalistym podłożu - Ale utonął w bagnie bo podłoże było skaliste (prawie) - A ciotka Matylda wyleciała w powietrze - Bo paliła fajkę w atmosferze pełnej metanu - I była duża dziura do której wpadła - Ciotka Matylda - - - Duża dziura, je je je... - - - Więc następne cegły wyłowiłem z bagna wędką - Ale ciotki Matyldy i wujka Euzebiusza - Nie wyłowiłem z bagna bo byli brzydcy i starzy - I śmierdzieli tak bardzo jak śpiwór Szymona - - - Śpiwór Szymona, je je je... - - - Poszedłem po rozum do Tłuszcza - I zbudowalem cegielnię z cegieł wyjętych z bagna - By zrobić więcej cegieł - I zbudowałem zamek na skalistym podłożu - Ale utonął w bagnie bo podłoże było skaliste - Jak kamień nerkowy małego ślicznego zajączka - - - Kamień nerkowy, je je je... - - - Więc wyłowiłem osła i krowę prosto z bagna - I poszła na dno cegielnia - Z zasady zachowania masy na dnie bagna - A potem z osła i krowy wyłonił się nagle m - A z mułu zrobiłem cegły - - - Osioł i krowa, je je je... - - - I zbudowałem zamek - Ale byłem sprytniejszy i postawiłem zamek - Na żabiej łapce i stał piękny zamek - Sięgął wieżami nieba i ten zamek stał tak długo - Aż grzmotnął w niego piorun - - - Grzmotnął piorun, je je je... - - - Ale zamek miał piorunochron piękny chromowy piorunochron - ugi jak kamień nerkowy małego ślicznego zajączka - Lecz było to stresujące szczególnie dla żabiej łapki - Która nagle skoczyła o pięć mil dalej - - - Żabia łapka, je je je... - - - A pięć mil dalej też było skaliste bagno i zamek - Poszedł na dno bo nie wytrzymał napięcia powierzchniowego - A pieśń już kończyć trzeba - Bo kartka nam się kończy na której są zapisane - Godziny porannego budzenia - - - - Czary--mary, zmieniamy gitary - - - - - - - - - - - chord positioning - - - Onufry - - - - diff --git a/songs/Bajka.xml b/songs/Bajka.xml deleted file mode 100644 index 8c0df026..00000000 --- a/songs/Bajka.xml +++ /dev/null @@ -1,71 +0,0 @@ - - - - - Piosenka pochodzi z 19 Ogólnopolskiego Studenckiego Przeglądu Piosenki Turystycznej Yapa '94.Gość spiewał ją przygrywając sobie na bembenku.Proszę nie spodziewać się akprdów :) - - Paweł Nowaczyk - - - - - Żył raz kiedyś król o wzroku jak nikt na świecie - Lecz było to powodem że kłopot wielki miał - Gdy rano przetarł oczy przez okno z zamku wyjżał - Gdzieś na krańcach świata widział łańcuch wielkich gór - Źle to kiedy coś przeciw królewskiej woli staje - I powstrzymuje bieg jego spojrzenia - Posłał więc król po dwóch swoich synów - A gdy stanęli przed nim do starszeg rzekł: - - - - Gdzieś na krańcach świata są wysokie góry - Idź tam i powiedz mi co za nimi jest - - - - Spełnił wolę ojca pierwszy jego syn - Szedł długo na kamieniach raniąc swoje stopy - Wspinał się wytrwale a gdy na szczycie był - Mógł zobaczyć ogromne spienione fale morza - Gdy wrócił znów do domu w ramiona ojca wpadł - Mów szybko co jest dalej chcę to wiedzieć teraz - A gdy zdyszany syn powiedział co jest za górami - Do drugiego z nich rzecze ojciec tak - - - - Tam gdzie kończy się świat jest ogromne morze - Płyń tam i powiedz mi co też za nim jest - - - - Choć drogę miał trudniejszą ojca prośbę spełnił - Przemykał się swym statkiem przez cisze i sztormy - Aż nadzszedł wreszcie dzień i marynarz z masztu krzyknął - Kapitanie ląd przed nami widzę łańcuch wielkich gór - Więc wyprawił swoje sługi by niosły wieść do króla - A kiedy sam się zjawił jak wryty stanął w drzwiach - Król prawie cały był zżarty przez ciekawość - Usta tylko drgały mówiąc rozkaz ten - - - - - - - - Adam - - Tekst i muzyka najprawdopodobniej należą do wykonawcy.Ale tego się pewnie nigdy nie dowiemy :( - - - chord positioning - - - - - Yapa '94 - - diff --git a/songs/Bal.xml b/songs/Bal.xml deleted file mode 100644 index 9ca3d003..00000000 --- a/songs/Bal.xml +++ /dev/null @@ -1,53 +0,0 @@ - - - - W. Wiśniewski - To, że piosenk ma 4 akordy na krzyż nie znaczy że należy ją rąbać jak drewno !!! - Tomek Lewandowski - Tomek Lewandowski - - - - - Moje myśli proszę was, siądźcie jak kruki koło mnie - I z wierszami wraz zapytajcie co słychać u mnie - Ściany przyjaciółki mego domu, jeżeli potraficie - Zapytajcie chociaż raz, jak tam świat mój, jak moje życie - - - - A u mnie wir a u mnie bal - Trwa stypa po miłości - I od toastów huczy stół - I ja jedyny z moich gości - - - - Dziś nic dla ciebie moja pani, nie pogrążysz mnie w żadnym grobie - Odnalazłem dłoń własną dłoń wyciągniętą ku sobie - Rano wyjdę już spokojny, z uśmiechem przyklejonym do twarzy - I rozdam krukom wesołe wiersze na sen, na spełnienie marzeń - - - - - - - - Adam - - - - - - - - - chords - - - - - Miniony Czas - - diff --git a/songs/Ballada_antysojowa.xml b/songs/Ballada_antysojowa.xml deleted file mode 100644 index f988bfcf..00000000 --- a/songs/Ballada_antysojowa.xml +++ /dev/null @@ -1,78 +0,0 @@ - - - - Jakub Pochrybniak - Powstało w czasie obozu 21. WDH w Rumunii w 2003 roku, gdy kwatermistrz zagroził podaniem na stół po raz siódmy w tygodniu kotletów sojowych. - Krzysztof Myszkowski - 21. WDH "Stare Żbiki" - - - - - Brnąłem do ciebie, barze, - Przez mrozy i wiatry, - Przez śnieżyce i zaspy - Fagarasz i Tatry - Przez bezbarwne, bez smaku - Kotlety sojowe - I wreszcie mięso w barze - O tyle lepsze od soi, że aż odbiera mowę - - - A teraz jeść, nareszcie jeść - Mięsiwa --- nie soję - Smakowe kubki cieszą się - A jelita z tęsknoty aż stoją - Cięlęcina, wołowina - Zapachem swym nęci - Od mięsa krów, szalonych krów - Wprost w głowie się kręci Vivat mięso! - - - yną przeze mnie kęsy - Rozkoszy dodając - Wielka jest kiełbasy moc - O jej smaku nie wspominając - Tkwi w moim wnętrzu mięso - Z mięsa siła ogromna powstaje - Kwatermistrz --- soi z Tesco fan - Nawet nie wie ile dobre mięso daje - - - Mięso, mięso wspaniałe jest - A soja nie całkiem - Jak soję zjesz, to bardzo chcesz - Kwatermistrza uderzyć wałkiem - Marzy mi się, marzy mi się - Z kiełbasą fasolka - Jeśli kwatermistrz soję da - To będzie rozpierdolka - - - - - - - - - - - Przeróbka - - - - - - - chord positioning - - - Taboret na podstawie orginałuKuba na podstawie pamięci i zdrowego rozsądkuOnufry na podstawie poprawek z KK - - - - - Porozmieszczane. Metrum jak zwykle. Sugerowałbym G0 zamiast Gzm7 - taka jest ogólnie przyjęta notacja. Nie wiem, co się pochrzaniło ze sprawdzającymi. Co poza tym? Nie wiem, co robisz z myślnikami, więc wstawiłem potrójny jako pauzę (LaTeX tak właśnie tworzy pauzy, jak wiesz). - - Ballada majowa - diff --git a/songs/Ballada_majowa.xml b/songs/Ballada_majowa.xml deleted file mode 100644 index 3c2ebe65..00000000 --- a/songs/Ballada_majowa.xml +++ /dev/null @@ -1,63 +0,0 @@ - - - - Józef Baran - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Brnąłem do ciebie maju - Przez mrozy i biele, - Przez śnieżyce i zaspy - I lute zawieje - Przez bezbarwne szpitalne - Korytarze stycznia - W tych korytarzach słońce - Gasło ustawicznie - - - - A teraz maj dokoła maj - Wyświęca ogrody - I cały ja i cały ja - Zanurzony w Jordanie pogody - A teraz maj i maj i maj - Dokoła się święci - Od wonnych bzów szalonych bzów - Wprost w głowie się kręci... - - - - I płyną przeze mnie dmuchawce - Jak dzieciństwa echa - I wielka jest majowa moc - Kiedy niebo się do ziemi uśmiecha - Śpi w twoim wnętrzu chłopiec - W chłopcu pierwszy zachwyt poznaję - Z twoich ziaren wyrosną sady - Strudzonemu pielgrzymką ulżyj - Dodaj wiary - - - - - - - - Czarny blues o czwartej nad ranem - - - - - - chord positioning - - - ADAM - - Ble... a kapodaster i metrum - - diff --git a/songs/Ballada_o_Dzikim_Zachodzie.xml b/songs/Ballada_o_Dzikim_Zachodzie.xml deleted file mode 100644 index c5efdde6..00000000 --- a/songs/Ballada_o_Dzikim_Zachodzie.xml +++ /dev/null @@ -1,95 +0,0 @@ - - - - Wojciech Młynarski - - Tadeusz Suchocki - Wojciech Młynarski - - - - - Potwierdzają to setne przykłady - Że westerny wciąż jeszcze są w modzie - Wysłuchajcie więc państwo ballady - O tak zwanym najdzikszym zachodzie - Miasto było tam jakich tysiące - Wokół preria i skały naprzeciw - Jak gdzie indziej świeciło tam słońce - Marli starcy, rodziły się dzieci - - - I tym tylko od innych różni się ta ballada - Że w tym mieście gdzieś na prerii krańcach - Na jednego mieszkańca jeden szeryf przypadał - Jeden szeryf na jednego mieszkańca - - - Konsekwencje ten fakt miał ogromne - Bo nikt w mieście za spluwę nie chwytał - I od dawna już każdy zapomniał - Jak wygląda prawdziwy bandyta - Choć finanse poniekąd leżały - Gospodarka i przemysł był na nic - Ale każdy, czy duży, czy mały - Czuł się za to bezpieczny bez granic - - - Bo tym tylko od innych różni się ta ballada - Że w tym mieście gdzieś na prerii krańcach - Na jednego mieszkańca jeden szeryf przypadał - Jeden szeryf na jednego mieszkańca - - - Jeśli państwa historia ta nudzi - To pocieszcie się tym, że nareszcie - Którejś nocy krzyk ludzi obudził - Bank rozbity, bandyci są w mieście - Dobrzy ludzie na próżno wołacie - Nikt nie wstanie za spluwę nie chwyci - Skoro każdy świadomość zatracił - Czym się różnią od ludzi bandyci - - - A tym tylko od innych różni się ta ballada - Że w tym mieście gdzieś na prerii krańcach - Na każdego człowieka nagle strach upadł blady - Od szeryfa do zwykłego mieszkańca - - - Potwierdzają to setne przykłady - Że westerny wciąż jeszcze są w modzie - Wysłuchaliście państwo ballady - O tak zwanym najdzikszym zachodzie - Miasto było tam jakich tysiące - Ludzkie w nim krzyżowały się drogi - Lecz nie wszystkim świeciło tam słońce - Bo bandyci krążyli bez trwogi - - - Wyciągnijmy więc morał w tej balladzie ukryty - Gdy nie grozi nam żadne rififi - Że czasami najtrudniej rozpoznać bandytę - - Gdy dokoła sami szeryfi - - - - - - - - Adam - - - - - - chords - - - - - Wojciech Młynarski - Prawie Całość CD_2 - - diff --git a/songs/Ballada_o_arenie_cyrkowej.xml b/songs/Ballada_o_arenie_cyrkowej.xml deleted file mode 100644 index bc56d82a..00000000 --- a/songs/Ballada_o_arenie_cyrkowej.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - Józef Baran - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Na koniec rozwiązano teatr - Więc cała w sztucznych ogniach teraz - Kręci się arena cyrkowa - Naszych czasów metafora - - - Nic tu na pewno wszystko na niby - Małpka jest w cyrku idolem - Karzeł podkręca szatańską korbkę - Arena toczy się kołem - - - Niczym piłeczki w palcach żonglerów - Duszyczki nasze wirują w koło - Życie przestało być sztuką - I stało się sztuczką cyrkową - - - Dwie siostry syjamskie prawda kłamstwo - Wbiegają w zwinnych podskokach - Nikt nie odróżni jednej od drugiej - Są w jednakowych trykotach - - - Bóg gdyby nawet w krzaku ognistym - Pojawił się między nami - Mówilibyśmy że to magik - Kolejną sztuczką nas mami - - - Lecz dokąd można w cyrku żyć - Pytamy stojąc na głowie - Słyszymy drwiący błazna śmiech - I to jedyna odpowiedź - - - - - - - Adam - - - - - - - - - chords - - - - Makatki - - diff --git a/songs/Ballada_o_czesku_piekarzu.xml b/songs/Ballada_o_czesku_piekarzu.xml deleted file mode 100644 index 06e42043..00000000 --- a/songs/Ballada_o_czesku_piekarzu.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - Wolna Grupa Bukowina - - - - - - Chleba takiego jak ten od Cześka - Nie kupisz nigdzie nawet w Warszawie - Bo Czesiek piekarz nie piekł lecz tworzył - Bochny jak z mąki słonecznej kołacze - Kłaniali mu się ludzie gdy wyjrzał - Przez okno w kitlu łyknąć powietrza - A kromkę masłem smarując każdy - Mówił: nad chleby ten chleb od Cześka - - - chleb się chlebie chleb się chlebie - bo nad chleb być może co! - chleb się chlebie chleb się chlebie - niech ci nigdy nie zabraknie - drożdży wody rąk i ziarna (mruczał Czesiek tak noc w noc) - - - A o porankach chlebem pachnących - Gdy pora idzie spać na piekarzy - Zaczerwienione przymykał oczy - Czesiek, i siadał z dłutem przy stole - Ciągle te same oczy i trochę - Za duły nos w drewnie cierpliwym - Pieściły ręce dziesiątki razy - W poranki świeżym chlebem pachnące - - - chleb się chlebie chleb się - - - nikt takich słów jak miasto miastem - nie znał i źle się dzieje mówili - na obraz czerniał Czesiek razowca - kruszał podobnie bułce zleżałej - - - Gdy go znaleźli na pasku z wojska - dłuto jak w bochen wbite miał w garści - i nie wie nikt co Cześka wzięło - lecz śpiewa każdy jak miasto miastem - - - chleb się chlebie chleb się chlebie... | x2 - - - diff --git a/songs/Ballada_o_dziewczynie_co_pila_gorace_mleko.xml b/songs/Ballada_o_dziewczynie_co_pila_gorace_mleko.xml deleted file mode 100644 index 2d7265a9..00000000 --- a/songs/Ballada_o_dziewczynie_co_pila_gorace_mleko.xml +++ /dev/null @@ -1,37 +0,0 @@ - - - Autor Nieznany - - - C e Sa male stacje wielkich kolei - F C Nieznane jak obce imiona - F C Male stacje wielkich kolei - F G Jakis napis i lampa zielona - C e Na takiej stacji dawno juz temu - F C Z daleka jadac daleko - F C Widzialem dziewczyne w niebieskim szaliku - G C Jak pila gorace mleko - F C Teraz tamtedy nigdy nie jezdze - F C Bo mieszkam naprawde daleko - - - GC Jak pila gorace mleko - F C I nie raz chcialbym aby tu bylo - F C Bo moze to mialoby sens - F C Jak ona smiesznie to mleko pila /x - G C Gapiac sie na mnie spod rzes /2 - - - C e Mam swoje sprawy inne podroze - F C I nie tamtedy mi droga - F C Lubie ulice wesole i dlugie - F G I kolorowe swiatla na drogach - C e Moze ma chlopca tamta dziewczyna - F C A moze wybrala sie w swiat - F C A moze poprostu moze jest glupia - G C Jak jej 17 lat - F C Z reszta to teraz nie ma znaczenia - F C Bo mieszkam naprawde daleko... - - - diff --git a/songs/Ballada_o_trzezwym_diable.xml b/songs/Ballada_o_trzezwym_diable.xml deleted file mode 100644 index 164d4757..00000000 --- a/songs/Ballada_o_trzezwym_diable.xml +++ /dev/null @@ -1,103 +0,0 @@ - - - - Krzysztof Daukszewicz - W śpiewniku Daukszewicza pod koniec każdej czwartej linijki zamiast CG jest E. Ale mi brzmi lepiej tak.W tymże śpiewniku brak zwrotki o ministrze wyznań, której oryginalność budzi zatem moją wątpliwość. - Krzysztof Daukszewicz - Krzysztof Daukszewicz - - - - - Pod wieczór dobrze było gdy - Na polu pełnym zbóż - Z diabłem się spotkał Dobry Pan - I Jego Anioł Stróż - - - Diabeł był zdrowy jak ten rydz - Po prostu czart na schw - Anioł zalany w drobny mak - Na nogach ledwo st - Uuu... Na nogach ledwo st - - - Chłop gdy usłyszał Pana głos - Poprosił ich na stronę - I poczęstował z flachy wprost - Świeżutkim samogonem - - - Pociągnął zdrowo Anioł Stróż - I flachę Panu d - A czart do gardła nie lał nic - A czart się tylko śmi - Ha ha... A czart się tylko śmi - - - Robotnik co z roboty szedł - Przez drogi asfaltowe - Wyciągnął z torby chleba pół - I tyleż wyborowej - - - Pociągnął zdrowo Anioł Stróż - I flachę Panu d - A czart do gardła nie lał nic - A czart się tylko śmi - Ha ha... A czart się tylko śmi - - - Ksiądz proboszcz który wracał z mszy - Prywatnym samochodem - Zaprosił na plebanię i - Ugościł starym miodem - - - Pociągnął zdrowo Anioł Stróż - I flachę Panu d - A czart do gardła nie lał nic - A czart się tylko śmi - Ha ha... A czart się tylko śmi - - - Minister wyznań witał się - Z Panem jak z własnym bratem - A potem piękny toast wzniósł - Wytwornym ,,Araratem'' - - - Pociągnął zdrowo Anioł Stróż - I flachę Panu d - A czart do gardła nie lał nic - A czart się tylko śmi - Ha ha... A czart się tylko śmi - - - A rano gdy ich dopadł kac - W przydrożnym wiejskim rowie - Anioł do Pana rzecze tak - Mój dobry Panie powiedz - - - Czy diabeł sobie wszył czy co - Że trzeźwym musi b - Pan odpowiedział spójrz na kraj - On już nie musi pić. - - - - - - - - - - chord positioning - - - Onufry - - Zgodność ze śpiewnikiem "Piosenki z Życiorysem", poza akordami na końcu czwartej linijki. - - diff --git a/songs/Bar_w_Beskidzie.xml b/songs/Bar_w_Beskidzie.xml deleted file mode 100644 index 9368d0d6..00000000 --- a/songs/Bar_w_Beskidzie.xml +++ /dev/null @@ -1,89 +0,0 @@ - - - Lej się chmielu - Wiesław Jarosz - Piosenka opisuje bar "Leśny" w Krempnej, który, wg zeznań świadków, nie ma już tego klimatu, co ongi. - Wiesław Jarosz - EKT Gdynia - - - - - - La la la... - - Jeśli chcesz z gardła kurz wypłukać - Tu każdy wskaże ci drogę - W bok od przystanku PKS--u - W prawo od szosy asfaltowej - Kuszą napisy ołówkiem kopiowym - Na drzwiach od dziesiątej otwartych - Dziś polecamy kotlet mielony - I lokal kategorii czwartej - - - - Lej się chmielu, lej się chmielu - Nieś muzyko po bukowym lesie - Panna Zosia ma w oczach dwa nieba - Trochę lata z nowej beczki przyniesie - - - - La la la... - W środku chłopaki rzucają łaciną - O sufit i o cztery ściany - Dym z extra mocnych strzela jak szampan - Bledną obrusy lniane - Za to wieczorem gdy lipiec duszny - Okna otworzy na oścież - Gwiazdy wpadają do pełnych kufli - Poobgryzanych jak paznokcie - - - - La la la... - Kiedy chłopaki na nogach z waty - Wracają po mokrej kolacji - Świat się jak okręt morski kołysze - Gościniec dziwnie ślimaczy - A czasem któryś ze strachem na wróble - Pogada o polityce - Jedynie cerkiew marszczy zgorszona - Szorstkie od gnotów lice - - - - - La la la... - - - - - - - - - OnufryAdamOnufry - - - - - Adam-->Poprawiłem akordy i ułożenia wstawek instrumentalnych -Onufry -> Poprawiłem strukturę, żeby refren był refrenem. - - - - - - - - - chord positioning - - - - - Ja Stawiam - Piosenka turystyczna górska - diff --git a/songs/Bartne.xml b/songs/Bartne.xml deleted file mode 100644 index 96e6fbe1..00000000 --- a/songs/Bartne.xml +++ /dev/null @@ -1,83 +0,0 @@ - - - - Bogusław Diduch - - Mirosław Czyżykiewicz; Bogusław Diduch - Ostatnia wieczerza w karcznie przeznaczonej do rozbiórki - - - - - Na zachodzie słońce jeszcze się toczy - I butelka nad ławą rzuca cień - Wojtek Bellon zagląda mi w oczy - W Bartnem pod bacówką gaśnie dzień - Mówią mi, że gdy gram jego song - Głos mi drży i do oczu płyną łzy - Wojtek przez głośniki wypiek Cześka sławi - Jego pieśń ponad góry niosą mgły - - - Utonęły w zieleni gór i puchu nieba - W morzu liści i w wełnianym swetrze z traw - Moja pamięć moje myśli niezbadane - Zaklęte w melodii ruskich chat - Gdzieś na krańcu świata gdzie nie widać piekieł - Tylko niebo na ikonach srebrem lśni - Święty spokój ofiaruje nam Mikołaj - Święty spokój w jego skośnych oczach tkwi - - - Dobry Pan mnie wiedzie wyboistą drogą - Dobry Pan życzenia moje zna - W górach myśli poszybują ku pradawnym bogom - A w kopułach cerkwi wieczność trwa - Na tej drodze różne słowa już padały - Słowa złe i dobre, miłość szła i śmierć - Tylko buki w górach niewzruszone stoją - Jakby chciały się do nieba wznieść - - - Nikt nie spieszy się, nie zżyma, nie złorzeczy - Życie musi mieć swój smak i stały takt - Wprawdzie życia tutaj nie da się zaprzeczyć - Każde słowo znaczy to, co znaczyć ma - Nie ma miejsca na spojrzenia ukradkowe - Tutaj ludziom musisz patrzeć prosto w twarz - Tutaj serce na wszystko masz gotowe - Tu na szczytach blisko nieba wiecznie trwasz - - - - - - - - - - - - - - - - - chord positioning - - AnonimAdamOnufry - - - - - - Anonim-->Zaznaczyc, ze recytacja, moze podzielic zwrotki na bloko 4-linijkowe..., Czy akordy w recytacji sš ok? ---------Adam--> poprawiłem akordy w recytacji, refrenie i wstawiłem ozdobniki instrumentalne ---------Onufry-> Poprawiłem literówki ortograficzne w nazwie zespołu, rozmieściłem akordy, ustandaryzowałem zapis ozdobników, wstawiłem metrum ---------Onufry-> Poprawiłem imię autora, wyłaczyłem recytację z numeracji zwrotek. - - - - - Piosenka turystyczna górska - diff --git a/songs/Bawitko.xml b/songs/Bawitko.xml deleted file mode 100644 index 1e0af076..00000000 --- a/songs/Bawitko.xml +++ /dev/null @@ -1,92 +0,0 @@ - - - - Andrzej Poniedzielski - - Andrzej Poniedzielski - Andrzej Poniedzielski - - - - - Wagą zabraną Temidzie - Bawimy się w sprawiedliwość - Na jednej szali zło kładziemy - - Na drugiej dobro i litość - - - - Wszyscy się cieszą z równowagi - Gardła zdzieramy w wiwatach - Wszyscy się cieszą z równowagi - - Wskazówkę puszczamy po latach - - - - - Oj nieładnie człowieku nieładnie - - Oj nieładnie człowieku brzydko - - Ty się całe życie tylko bawisz - - - Czasem sobie zmieniasz bawitko - - - - Księgami bawimy się w mądrość - Zabawa to dla upartych - Z ksiąg budujemy nauki i domy - - A przecież księgi to karty - - - - Raz huczą brawa, raz działa - Już się gubimy w erratach - Na ile to mądre na ile starczy - - Ktoś nas osądzi po latach - - - - - Jest jeszcze jedna zabawa - Też popularna choć nienowa - Do niej potrzebne jest dwoje ludzi - - I słowa, i słowa, i słowa - - - - Słowami bawimy się w miłość - owa składamy w kwiatach - Potem przyprószą je liście jesieni - - - Odgrzebujemy po latach - - - - - - - - - Adam - - Adam -> Ostatni refren bis=2 ale nie wiem jak to zrobić z kodu dla refrenu więć musisz się to zrobić sam - - - - chord positioning - - - - - 13 łatwych utworów tanecznych - - diff --git a/songs/Bellonika_z_miastem.xml b/songs/Bellonika_z_miastem.xml deleted file mode 100644 index 77478e68..00000000 --- a/songs/Bellonika_z_miastem.xml +++ /dev/null @@ -1,65 +0,0 @@ - - - - Krzysztof Jurkiewicz - W akordach na stronie zespołu zamiast d-mol występuje D7-dur, ale to chyba jakaś literówka...W refrenie na stronie, tak jak w tekście w śpiewniku, w ostatniej linijce jest słowo bezpieczny - zawsze śpiewaliśmy spokojny, i IMHO lepiej brzmi, ale tu zapisuję zgodnie z oryginałem. - Krzysztof Jurkiewicz - Słodki Całus od Buby - - - - - Która to znów piosenka - Dla której Joanny - Za oknem pierwszy tramwaj - Oddzwonił nowy dzi - Która to noc bezsenna - Która kartka biała - Na wątłym płatku niesie - Jak ołów ciężką treść - - - Za oknem wielkiego miasta szum - I uciec by się chciało - W ramionach Twoich jak w górach - Bezpiecznie schronić się - Za oknem wielkiego miasta chłód - I tylko Twoje ciało - W półmroku obiecuje - Spokojny ciepły sen - - - Która to znowu wojna - Za jaką znów sprawę - Co nic nam nie przyniesie - Prócz paru smutnych dat - Która to noc bezsenna - Prześcieradło blade - Całując Twoje włosy - Powoli zmieniam świat - - - - - - - - - - Słodki Całus od Buby - Poezja śpiewana - - - - chord positioning - - - OnufryAdam - - - - Adam--> Poprawiłem zlewkę "Iuciec", tekst zgodnie z kasetą czyli dla mnie oryginałem (Do Taboreta tu też drugi refren dwa razy:) -Onufry- > Wszystkie 'Ty' i pochodne wielką literą. - - - diff --git a/songs/Beskid.xml b/songs/Beskid.xml deleted file mode 100644 index c41cf44e..00000000 --- a/songs/Beskid.xml +++ /dev/null @@ -1,65 +0,0 @@ - - - Andrzej Wierzbicki - - - A w Beskidzie rozzłocony buk - A w Beskidzie rozzłocony buk - Będę chodził bukowiną z dłutem w ręku - By w dziewczęcych twarzach uśmiech rzeźbić - Niech nie płaczą j - Niech się cieszą po kapliczkach moich dróg. - - - W Beskidzie malowany cerkiewny dach - W Beskidzie zapach miodu w bukowych pniach - Tutaj wracam gdy ruda jesień - Na przełęcze swój tobół niesie - Słucham bicia dzwonów w przedwieczorny czas - - - W Beskidzie malowany wiatrami dom - W Beskidzie tutaj słowa inaczej brzmią - Kiedy krzyczę w jesienną ciszę - Kiedy wiatrem szeleszczą liście - Kiedy wolność się tuli w ciepło moich rąk - Gdy jak źrebak się tuli do mych rąk. - - - A w Beskidzie zamyślony czas - A w Beskidzie zamyślony czas - Będę chodził gór poddaszem - By zerwanych marzeń struny - Przewiązywać w niespokojne dłonie drzew - Niech mi grają na rozstajach moich dróg. - - - - - - - - - Onufry - - - - - - - - chord positioning - - - - - - Andrzej Wierzbicki - Andrzej Wierzbicki - - - - YAPA - turystyczne przeboje, cz. 1 - Piosenka turystyczna górska - Występują dość różne wersje tekstu tej piosenki. Postarałem się dobrać skrzyżowanie najpopularniejszego z najsensowniejszym - acz niestety nie słyszałem nagrania, więc trudno mi stwierdzić, na ile trafiłem w oryginał.Występują też różne wersje akordów. U nas gra się takie, częściej spotykana jest tonacja G-dur zamiast C-dur.W refrenie występuje drugi głos. - diff --git a/songs/Beskid_jesienia.xml b/songs/Beskid_jesienia.xml deleted file mode 100644 index 54bbc582..00000000 --- a/songs/Beskid_jesienia.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - Już pustką świecą hale, samotny gnie się świerk, - Na granitowej skale, zmęczony rogacz legł. - Słoneczko ledwie wstaje a już się kładzie spać, - Już tylko wiatr po polanie zaczyna liście gnać. - - - O, już się złoci hora, gromadki szuka ptak, - Już to jesienna pora i bliskiej zimy znak - - - Buki jak ogień gorzą, modrzewiom żółknie włos, - Rano wschodzącą zorzę liliowy wita wrzos. - Szałasy smutne stoją, ogień nie trzaska w nich, - Pasterze już nie poją w źródłach owieczek swych. - - - - Ucichła już trąbita, juhasów zamilkł śpiew. - Tylko na skalnych szczytach wiatr śpiewa pośród drzew. - Z południa Tatry dumne patrzą na Beskid swój, - A chmurki jak rozumne zdobią go w złoty strój. - - - - - - - - - - - - - - Onufry - - - - - - diff --git a/songs/Biala_lokomotywa.xml b/songs/Biala_lokomotywa.xml deleted file mode 100644 index 92ea80d9..00000000 --- a/songs/Biala_lokomotywa.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - Edward Stachura - Piosenka występuje też w innych wykonaniach, np. SDMu czy oryginalnym Stachury. Wtedy oczywiście inne chwyty. - Marek Gałązka - Marek Gałązka i Grupa Balladowa "Po Drodze" - - - - - Sunęła poprzez czarne łąki - Sunęła przez spalony las - Mijała bram zwęglone szczątki - Płynęła przez wspomnienia miast - Biała lokomotywa - Skąd wzięła się w krainie śmierci - Ta żywa zjawa, istny cud - Tu pośród pustych marnych wierszy - Tu gdzie już tylko czarny kurz - Biała lokomotywa - - - Ach czyj, ach czyj to jest - Tak piękny hojny gest - Kto mi tu przysłał ją - - Bym się wydostał stąd - Ach któż, no któż to może b - Beze mnie kto nie umie ż - I bym zmartwychstał błaga mnie - - By mnie obudził jasny zew - Białej lokomotywy - - - Suniemy poprzez czarne łąki - Suniemy przez spalony las - Mijamy bram zwęglone szczątki - Płyniemy przez wspomnienia miast - Z białą lokomotywą - Gdzie brzęczą pszczoły, pluszcze rzeka - Gdzie słońca blask i cienie drzew - Do tej, co na mnie w życiu czeka - Do życia znowu nieś mnie ni - Biała lokomotywo - - - - - - - - OnufryAdamAlek - - Adam-->poprawiłem akordy, rozkład refrenów i drobiazgi po lewej - - - - chord positioning - - - - - (1980 - 1988) - Poezja śpiewana - diff --git a/songs/Bieszczadzki_rajd.xml b/songs/Bieszczadzki_rajd.xml deleted file mode 100644 index 4c314d48..00000000 --- a/songs/Bieszczadzki_rajd.xml +++ /dev/null @@ -1,57 +0,0 @@ - - - - Piotr Frankowicz, Julian Jaworz-Dutka - Piosenka powstała lub/i była śpiewana podczas "Harcerskiej Operacji Bieszczady 40". - Piotr Frankowicz, Julian Jaworz-Dutka - Wołosatki - Grube Dudy - - - - - Zebrało się nas tutaj wielu takich jak ty - Siadaj z nami przyjacielu a zaśpiewamy ci - - - - Rajd rajd bieszczadzki rajd - Czy to w słońce czy to w deszcz - - Idziesz z nami przyjacielu - Bo sam chcesz - - - - Każdy harcerz przeżyć chce ten bieszczadzki rajd - Aby wzmocnićswoje siły jemy dużo pajd - - - - Czasem chleba nam brakuje ale fajno jest - Ktoś nas wtedy poratuje to braterski gest - - - - Może kiedyś tu za rok wszysczy się spotkamy - Obsiądziemy ogień w koło i tak zaśpiewamy - - - - - - - - Adam - - Adam-->piosenka jest na płycie analogowej, więc jeśli ktoś ma odpowiednie ustrojstwo to można by przegrać ja na nośnik dla ludzi :) - - - - chords - - - - - Bieszczady jak co roku... - - diff --git a/songs/Bieszczadzkie_anioly.xml b/songs/Bieszczadzkie_anioly.xml deleted file mode 100644 index e0d0b9e6..00000000 --- a/songs/Bieszczadzkie_anioly.xml +++ /dev/null @@ -1,84 +0,0 @@ - - - - Adam Ziemianin - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Anioły są takie ciche, zwłaszcza te w Bieszczadach - Gdy spotkasz takiego w górach, wiele z nim nie pogadasz - Najwyżej na ucho ci powie, gdy będzie w dobrym humorze - Że skrzydła nosi w plecaku nawet przy dobrej pogodzie - - - Anioły są całe zielone, zwłaszcza te w Bieszczadach - W trawie łatwo się kryją i w opuszczonych sadach - W zielone grają ukradkiem, nawet karty mają zielone - Zielone mają pojęcie, a nawet zielony kielonek - - - Anioły bieszczadzkie, bieszczadzkie anioły - Dużo w was radości i dobrej pogody - Bieszczadzkie anioły, anioły bieszczadzkie - Gdy skrzydłem cię dotkną, już jesteś ich bratem - - - Anioły są całkiem samotne, zwłaszcza te w Bieszczadach - W kapliczkach zimą drzemią, choć może im nie wypada - Czasem taki anioł samotny zapomni, dokąd ma lecieć - I wtedy całe Bieszczady mają szaloną uciechę - - - Anioły, bieszczadzkie, bieszczadzkie anioły - Dużo w was radości i dobrej pogody - Bieszczadzkie anioły, anioły bieszczadzkie - Gdy skrzydłem cię trącą, już jesteś ich bratem - - - Anioły są wiecznie ulotne, zwłaszcza te w Bieszczadach - Nas też czasami nosi po ich anielskich śladach - One nam przyzwalają i skrzydłem wskazują drogę - I wtedy w nas się zapala wieczny bieszczadzki ogień - - - Anioły, bieszczadzkie, bieszczadzkie anioły - Dużo w was radości i dobrej pogody - Bieszczadzkie anioły, anioły bieszczadzkie - Gdy skrzydłem cię musną, już jesteś ich bratem - - - - - - - - - - - Taboret na bazie korekty Michała - Poprawione wg śpiewnika ze Szkocji - Krzysiek - - - Jakie metrum? -Trzeba to przegrać z gitarą. - - - - - - chords - - - BieszczadyGóry - - - - - - Bieszczadzkie anioły - Piosenka turystyczna górska - diff --git a/songs/BlladaWrz.xml b/songs/BlladaWrz.xml deleted file mode 100644 index d4043565..00000000 --- a/songs/BlladaWrz.xml +++ /dev/null @@ -1,97 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - ugośmy na ten dzień czekali - Z nadzieją niecierpliwą w duszy, - Kiedy bez stów Towarzysz Stalin - Na mapie fajką strzałki ruszy. - - - Krzyk jeden pomknął wzdłuż granicy, - I zanim zmilkł zagrzmiały działa. - To w bój z szybkością nawałnicy - Armia Czerwona wyruszała. - - - - A cóż to za historia nowa? - Zdumiona spyta Europa, - - Jak to? To chłopcy Mołotowa - I sojusznicy Ribbentroppa. - - - - Zwycięstw się szlak ich serią znaczy - Sztandar wolności okrył chwałą. - owami polskich posiadaczy - Brukują Ukrainę całą. - - - Pada Podole, w hołdach Wołyń, - Lud pieśnią wita ustrój nowy. - Płoną majątki i kościoły - I Chrystus z kulą w tyle głowy. - - - Nad polem bitwy dłonie wzniosą - We wspólną pięść co dech zapiera - - Nieprzeliczone dzieci Soso, - Niezwyciężony miot Hitlera. - - - - Już starty z map wersalski bękart, - Już wolny Żyd i Białorusin, - Już nigdy więcej Polska ręka - Ich do niczego nie przymusi. - - - Nową im wolność głosi "Prawda", - Świat cały wieść obiega w lot, - Że jeden odtąd łączy sztandar - Gwiazdę, sierp, hakenkreuz i młot. - - - Tych dni historia nie zapomni, - Gdy stary ląd w zdumieniu zastygł - - I święcić będą nam potomni - Po pierwszym września - siedemnasty. - - - - - - - - - - - - - - - Poezja śpiewana - - - - chords - - - Onufry - - - Akordy wg śpiewnika Encore, ja za nie głowy nie dam, bo tego nie gram. - - - diff --git a/songs/Blues_dla_malej.xml b/songs/Blues_dla_malej.xml deleted file mode 100644 index f2200e8b..00000000 --- a/songs/Blues_dla_malej.xml +++ /dev/null @@ -1,60 +0,0 @@ - - - Adam Ziemianin - Krzysztof Myszkowski - Live in Łowicz - Stare Dobre Małżeństwo - - - Wystukaj po torach do mnie list - Wtedy naprawdę nie wyjedziesz cała - Niech będzie w nim lokomotywy gwizd - Tylko to zrób jeszcze dla mnie Mała - Wystukaj po torach do mnie list - Choćby w alfabecie Morse'a - Moja ulica jeszcze twardo śpi - Jeśli tak chcesz w liście zostań - - - A mogliśmy Mała razem łąką iść - Świt witać po kolana w rosie - A mogliśmy Mała razem piwo pić - Dom nasz zamienić na sto pociech - A mogliśmy Mała konie kraść - Z niebieskiego boskiego pastwiska - A mogliśmy Mała w środku lata - Zbudować słoneczną przystań - - - Napisz od serca do mnie list - I zamieszkaj w tym liście cała - Niech śmiechu dużo będzie w nim - Obiecaj mi to dzisiaj Mała - Napisz od serca do mnie list - Lecz proszę nie wysyłaj go nigdy - W szufladzie zamknij go na klucz - Niech czeka wciąż lepszych dni - - - - - - - - Onufry - - - - - chord positioning - - - - - - - - - Poezja śpiewana - - diff --git a/songs/Blues_niepotrzebnych_powrotow.xml b/songs/Blues_niepotrzebnych_powrotow.xml deleted file mode 100644 index 361deec9..00000000 --- a/songs/Blues_niepotrzebnych_powrotow.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - Elżbieta Adamiak - - - Dopala się świeca, maleńki płomień drży - Powoli zza pieca wychodzą szare sny - Zacięła się płyta, adapter się biedzi - Stukają w podłogę zmęczeni sąsiedzi - Więc idź już, nie wracaj, nie przeszkadzaj mi - - - - - - Nie było cię długo, przestałam liczyć dni - Wolałeś tę drugą, kwiaciarkę z vis a vis - Zapomniał korytarz, jak brzmią twoje kroki - Nie poznał cię nawet twój fotel głęboki - Więc po co tu siedzisz, dziwisz nocne ćmy - - - - - - Posłuchaj, latarnie wołają cię zza mgły - Nie patrz tak na mnie, wiesz przecież, gdzie są drzwi - Potrafię bez ciebie oddychać i śpiewać - Choć coraz bezbarwniej jest ptakom na drzewach - A tamte dwie krople, to wcale nie są łzy - - - - - - - - - - - - Onufry - - - - - chord positioning - - - - - - - - - - - - - - diff --git a/songs/Bombonierka.xml b/songs/Bombonierka.xml deleted file mode 100644 index 10ff1532..00000000 --- a/songs/Bombonierka.xml +++ /dev/null @@ -1,78 +0,0 @@ - - - - Basia Stępniak-Wilk - - - Grzegorz Turnau, Basia Stępniak-Wilk - - - - - A gdy patrzę tak - Śmiejesz się - Śmiejesz się - - - Dzień pogania noc świtem purpurowym - Ty jak czarny kot kończysz łowy - Nic mi do twych zdrad, chociaż dziwi, że - Ich gorzkawy smak ciągle kusi cię - - - A gdy patrzę tak, śmiejesz się: - Nic mi do twych zdrad - Ale wiem - - - Choć papierków po cukierkach - Tu i ówdzie ślad - Marzy ci się bombonierka - Taka jak ja - Niby nic, a jednak zerkasz - Jak się dostać do pudełka - Odkryć tajemnicę słodką - Delikatnie zdjąć złotko - - - Choć papierków po cukierkach - Ślad i tam i tu - Marzy ci się bombonierka - Istny cud - Żeby tak nasycić się - Ale wciąż w zapasie mieć - I rozgryzać tę zagadkę - Tę zagadkę - Po ostatnią czekoladkę - - - Noc pogania dzień szafirowym zmierzchem - Tobie kocich gier nie dość jeszcze - Nic mi do twych zdrad, chociaż dziwi, że - Ostry kolor kłamstw nie razi cię - - - - - - - - - - - - - - Inna - - - chord positioning - - - Onufry - - - - - - diff --git a/songs/Bosman.xml b/songs/Bosman.xml deleted file mode 100644 index 55b2bf3f..00000000 --- a/songs/Bosman.xml +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - Na pokładzie od rana - Ciągle słychać bosmana, - Bez potrzeby cholernie się drze. - Choćbyś ręce poranił, - Bosman zawsze cię zgani - I powiada: ,,Zrobione jest źle!'' - - - ,,Jeszcze raz czyścić działo, - Cóż wam chłopcy się stało? - Jak do żarcia, to każdy się rwie. - To nie balia niemiecka, - Trzeba wiedzieć od dziecka, - Że to okręt wojenny RP.'' - - - Ale czasem się zdarzy, - Że się bosman rozmarzy - Każdy bosman uczucie to zna. - Gdy go wtedy poprosisz, - Swą harmonię przynosi, - Siada w kącie na rufie i gra. - - - Opowiada o morzach, - O bezkresnych przestworzach - I o walkach, co przeżył on sam. - O dziewczętach z Bombaju, - Co namiętnie kochają - I całują tak mocno do krwi. - - - A gdy spytasz go tylko, - O czym marzył przed chwilką, - Czemu nagle pojaśniał mu wzrok? - Mówi: ,,W Gdyni, w Orłowie, - Będę chodził na głowie, - Tak mi przypadł do serca ten port.'' - - - Bosman skończył, wiatr ścicha, - Aż tu nagle, u licha! - Pojaśniało coś nagle we mgle - Poznał bosman, jak cała - Polska w blaskach wstawała, - Na pokładzie okrętu RP. - - - - - - - - - - - - - - - - - - - Szanta - - diff --git a/songs/Broadway.xml b/songs/Broadway.xml deleted file mode 100644 index dc1a99b4..00000000 --- a/songs/Broadway.xml +++ /dev/null @@ -1,82 +0,0 @@ - - - - Krzysztof Daukszewicz - W śpiewniku Daukszewicza ciut inne chwyty, ale tam chwyty nawet nie zgadzają się ze sobą (te nad tekstem inne niż te nad nutami), że nie wspomnę o melodii, więc zostawiam tak, jak u nas się śpiewa. -Ponoć refreny są różne, np. zaczynają się od słów ,,Cały Broadway'', ,,Ach ten Broadway'' itp., trzeba by je sprawdzić ze śpiewnikiem -- Alek - Krzysztof Daukszewicz - Krzysztof Daukszewicz - - - - - Po ulicy przetaczał się bajecznie barwny tłum - Migotała reklama jakiejś wody ,,Silver moon'' - I drapacze drapały wierzchołkami brzuchy chmur - Kiedy dołem przejeżdżał gigantyczny wozów sznur - - - Taki Broadway to Broadway z kolorowych pięknych kart - Taki Broadway to Broadway którym się zachwyca świat - - - A na rogu ulicy może być czterdzieści dwa - Stary murzyn wirtuoz na gitarze bluesa grał - Tak namiętnie jak tylko czarny umie bluesa grać - Całe serce w to włożył żeby innym ludziom dać - - - Taki Broadway ten Broadway z kolorowych pięknych kart - Taki Broadway ten Broadway którym się zachwyca świat - - - Czasem ktoś się zatrzymał i na życie quartra dał - Czasem słyszał jak mówią, że ten czarny dobrze gra - Wtedy ruszał do baru bo już nie mógł tego znieść - Że nie czują przechodnie jaka w bluesach drzemie treść - - - - Aż któregoś popołudnia kiedy grał za marny grosz - Stanął przy nim z gitarą niepozorny biały gość - I choć na tej gitarze prawie jak amator grał - To wyśpiewał genialnie to co czarny w sercu miał - - - - - - - A gdy skończył się koncert stary Murzyn go zaprosił - Na kolejne popołudnie i te bluesy na dwa głosy - Potem spytał go jeszcze skąd znasz me niedole - I usłyszał odpowiedź ,,bracie I'm from Poland'' - - - - - - - Krzysztof Daukszewicz - - - Bieda - - - - - chord positioning - - - OnufryAdamAlekKrzysiek - - - - - - Adam-->Różne tam takie słówka, żeby dało się po ludzku śpiewać - Sprawdzane wg śpiewnika Daukszewicza, ale ten śpiewnik jest tragiczny...Refreny mają różne początki, czasem występuje jakieś Ech, albo coś, ale chyba nie warto mówić, że to nie refren i pisać za każdym razem. - On - - - diff --git a/songs/Burza.xml b/songs/Burza.xml deleted file mode 100644 index a7cc4533..00000000 --- a/songs/Burza.xml +++ /dev/null @@ -1,78 +0,0 @@ - - - - Maciej Służała - - Maciej Służała - Krążek - - - - - Znów chmury zmęczone przysiadły na grani - Ciężkimi brzuchami pieszczą górskie grzbiety - Już drzewa jęknęły smagnięte wichrami - I trawy przerażone knują głośne szepty - - - Umilkły już ptaki w gniazdach cicho siedzą - Świat czeka w napięciu z licem pociemniałym - Zbudziły się biesy, z driadami tańczą - Już błysk srebrnej nici zalśnił oniemiały - - - Pierwsze ciężkie krople dopadły już ziemi - Jak ślepi mocarze chcą powalić wszystko - Już strumienie wody leją się za nimi, - Szumiąc potokami spływają z gór szybko - - - Nowa srebrna nić przecięła czerń nieba - - Echo przerażone ryczy dzikim grzmotem - Drzewa w wiatru graniu szamoczą się z deszczem - Jak rycerze antyczni zmagając się z sobą - - - Jak turkot karety znów grzmot się przewalił - I znów atakują kropli ciężkich fale - A te, co dopadły straciwszy swą siłę - Strumieniem wezbranym z góry odpływają - - - I fala za falą i w dół jak lawina, - Lecz sił już nie starcza ni kroplom ni wiatrom - - I nagle blask słońca przez chmury przenika - - I tęcza w deszczowych drobinkach jak flaga - - - - I cisza i spokój i znów świergot ptaka - I słońce szaleje wśród zroszonej trawy - I drzewa co z włosów wytrzepują krople - I wszystko się cieszy po deszczowej kurzawie - - I cisza - - - - - - - OnufryKrzysiek - - - - Sprawdzono wg tekstu ze strony krążka - - - chord positioning - - - - - Baśn - Poezja śpiewana - diff --git a/songs/Chlopaki_nie_placza.xml b/songs/Chlopaki_nie_placza.xml deleted file mode 100644 index bf999da9..00000000 --- a/songs/Chlopaki_nie_placza.xml +++ /dev/null @@ -1,54 +0,0 @@ - - - T.Love - - - Mówisz, życie jak cukierek - Gorzkie jest czasami - Mówisz panna zostawiła - Kumple dawno cię olali - Ale nie bój nic - minie jakiś czas - Poczuj chłodny świt, wszystko przejdzie ci - - - U-u-u chłopaki - U-u-u nie płaczą - U-u-u chłopaki - U-u-u nie płaczą - Nie nie nie nie nie nie - - - Nie masz kaski - odpuść sobie - Jutro przecież też jest dzień - Może kiedyś ci pomogę - Może ty nie wystawisz mnie - Ale nie bój nic - minie jakiś czas - Poczuj chłodny świt, wszystko przejdzie ci - - - U-u-u chłopaki - U-u-u nie płaczą - U-u-u chłopaki - U-u-u nie płaczą - Nie nie nie nie nie nie - - - - - - - - - - - - - - - - - - - - - diff --git a/songs/Chodz_pomaluj_moj_swiat.xml b/songs/Chodz_pomaluj_moj_swiat.xml deleted file mode 100644 index a3fa501e..00000000 --- a/songs/Chodz_pomaluj_moj_swiat.xml +++ /dev/null @@ -1,57 +0,0 @@ - - - Dwa Plus Jeden - - - Piszesz mi w liście, że kiedy pada - Kiedy nasturcje na deszczu mokną - Siadasz przy stole, wyjmujesz farby - I kolorowe otwierasz okno - - - Trawa i drzewa są takie szare - Barwę popiołu przybrało niebo - W ciszy tak smutno szepce zegarek - O czasie co mi go wcale nie trzeba - - - Więc chodź pomaluj mi świat - Na żółto i na niebiesko - Niech na niebie stanie tęcza malowana twoja kredką - - - Więc chodź pomaluj mi życie - Niech świat mój się zarumieni - Niech na niebie zalśni tęcza kolorami całej ziemi - - - Za siódmą górą i siódmą rzeka - Swoje sny zamieniasz na pejzaże - Niebem się wlecze wyblakłe słońce - Oświetla ludzkie wyblakle twarze - - - - - - - - - - - - - - - - Krzysiek Cz. - - - - - - - - - - diff --git a/songs/Czarny_blues_o_czwartej_nad_ranem.xml b/songs/Czarny_blues_o_czwartej_nad_ranem.xml deleted file mode 100644 index c1bf17a1..00000000 --- a/songs/Czarny_blues_o_czwartej_nad_ranem.xml +++ /dev/null @@ -1,77 +0,0 @@ - - - - Adam Ziemianin - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Czwarta nad ranem, może sen przyjdzie - - Może mnie odwiedzisz - Czwarta nad ranem może sen przyjdzie - - Może mnie odwiedzisz - - - Czemu Cię nie ma na odległość ręki - Czemu mówimy do siebie listami - Gdy Ci to śpiewam u mnie pełnia lata - Gdy to usłyszysz będzie środek zimy - - - Czemu się budzę o czwartej nad ranem - I włosy twoje próbuję ugłaskać - Lecz nigdzie nie ma twoich włosów - Jest tylko blada nocna lampka - Łysa śpiewaczka - - - Śpiewamy bluesa bo czwarta nad ranem - Tak cicho żeby nie zbudzić sąsiadów - Czajnik z gwizdkiem świruje na gazie - Myślałby kto że rodem z Manhattanu - - - - Herbata czarna myśli rozjaśnia - A list twój sam się czyta - Że można go śpiewać, za oknem mruczą bluesa - Topole z Krupniczej - - - I jeszcze strażak wszedł na solo - Ten z Mariackiej wieży - Jego trąbka jak księżyc biegnie nad topolą - Nigdzie się jej nie spieszy - - - Już piąta, może sen przyjdzie - - Może mnie odwiedzisz - Już piąta, może sen przyjdzie - - Może mnie odwiedzisz - - - - - - - Onufry - - - - - - chord positioning - - - - - Czarny blues o czwartej nad ranem - Poezja śpiewana - diff --git a/songs/Czasem_nagle_smutniejesz.xml b/songs/Czasem_nagle_smutniejesz.xml deleted file mode 100644 index dfdb804a..00000000 --- a/songs/Czasem_nagle_smutniejesz.xml +++ /dev/null @@ -1,59 +0,0 @@ - - - - Adam Ziemianin - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Czasem nagle smutniejesz - To jakby dnia ubywa - I nie wiem jak ci pomóc - Więc tylko proszę wybacz - - - Czasem łzy w twoich oczach - Na krótką chwilę goszczą - I nie wiem czy coś mówić - I nawet nie wiem po co - - - - Puszczam więc wtedy latawce - - Ze śmiechu mego śmieszne - - I znowu dnia przybywa - Powietrze staje się lżejsze - - - I lżejsza staje się wędrówka - Z plecakiem wciąż coraz cięższym - Nad domem przysiadła tęcza - Na nieba niebieskiej gałęzi - - - - - - - - - chord positioning - Taboret wg. OnufregoAlek - - - - - - chords - - - - - - - diff --git a/songs/Dobosz.xml b/songs/Dobosz.xml deleted file mode 100644 index a2f81b67..00000000 --- a/songs/Dobosz.xml +++ /dev/null @@ -1,79 +0,0 @@ - - - - - Nie mam pojęcia, czyj jest ten tekst i ta muzyka. Wysyłam maila z zapytaniem do Rzeszowa, może tam wiedzą... - - - - - - - Przez czarne miasta białe wsie - Po zaśnieżonych drogach - Przeciwko sobie armie dwie - Uparcie szły na wroga - I siały armie śmierć ze sobą - Po miastach i po wioskach - A w każdej armii kroczył dobosz - Co werbel miał i rozkaz - - - Doboszu graj doboszu idź - Choćby się świat zawalił - Trzeba nam iść i w werbel b - Przed siebie dalej i dalej - Poprzez bitewny zgiełk i kurz - Do broni krzycz do broni - Bo tamten dobosz to twój wróg - I śmierć mu werbel dzwoni - - - Aż wreszcie na rozstajach dróg - Armia się z armią zwarła - I przyczajona w bębnach śmierć - Skoczyła im do gardła - I krew na śniegu zbiegła strugą - I zamilkły armie obie - Tylko dwa bębny długo długo - Warczały przeciw sobie - - - - Koło dobosza dobosz legł - Na skraju wsi pod dębem - I z drzewa się posypał śnieg - I werblem zbudził bęben - I zagrał bęben naprzód naprzód - I toczy się po drogach - A drugi mu wtóruje w marszu - A drugi zagrał odzew - - - - Spokojnie leżą armie dwie - Pod krzyżem na rozstajach - I tylko nocą poprzez śnieg - Dwa bębny werblem grają - Jednaki odzew grają... - - - - - - - - - - - - - - chord positioning - - - Onufry - - - - diff --git a/songs/Dzielna_Margot.xml b/songs/Dzielna_Margot.xml deleted file mode 100644 index 70f7bd81..00000000 --- a/songs/Dzielna_Margot.xml +++ /dev/null @@ -1,95 +0,0 @@ - - - - Georges Brassens - - - - - - - - W naszej wsi bezbronnego kotka - Znalazła w trawie raz Margot - A że sama była sierotką - Wzięła go - Był malutki jeszcze więc chciała - Jakąś poduszkę zdobyć mu - A jedyną jaką znalazła - Był jej biust - Kotet wziął ją za swoją mamę - I ssać zaczął dzielną Margot - Ona zaś ze wzruszenia nagle - Straciła głos - Syn sołtysa właśnie przechodził - Ujrzał rzadki obrazek ten - I poleciał z nowiną do wsi - A na drugi dzień - - - Gdy Margot stanik swój rozpinała - By miał kotek biedactwo co ssać - Biegła nas biegła nas cała zgraja - By po pa pa pa pa pa patrzeć - By po pa pa pa pa pa pa - A niewinna Margot przypuszczała - Że do kotka co z jej piersi ssał - Biegła nas biegła nas cała zgraja - By po pa pa pa pa pa patrzeć - By po pa pa pa pa pa pa - - - Nauczyciel lekcje porzucił - Kowal podkowy pole kmieć - I pognali prędko na skróty - Na tę wieść - Nasz listonosz taki uczciwy - Na tę wieść listy ciepną w mig - Których czytać i tak w tej chwili - Nie chciał nikt - Na tę wieść zaufawszy Bogu - Że im odpuści grzeszną myśl - Ministranci w lot dali nogę - W środku mszy - Nawet glinaiarz postrach ludności - Tak z natury tępy jak słup - Staną opodal oszołomiony - Sceną jak ze snu - - - - Ale w pozostałych niewiastach - Wszak każdej zwiał i ----- i mąż - Powolutku jęła narastać - Dzika złość - Wreszcie przyszedł we wsi dzień gniewu - Każda chwyciła tęgi kij - I zatłukłu biedne maleństwo - Z żądzy krwi - A Margot po roku lamentów - By się pocieszyć wzięła ślub - I już tylko się mąż z jej wdzięków - Cieszyć mógł - Z czasem o tym pozapominano - Oprócz starców już mało kto - Mówi dzieciom dziś na dobranoc - O dzielnej Margot - - - - - - - - Krzysiek - na podstawie poprawek w śpiewniku Szkocja - - - - - chords - - - - - - diff --git a/songs/Easy_Rider.xml b/songs/Easy_Rider.xml deleted file mode 100644 index 881818af..00000000 --- a/songs/Easy_Rider.xml +++ /dev/null @@ -1,118 +0,0 @@ - - - - Krzysztof Daukszewicz - - Krzysztof Daukszewicz - Krzysztof Daukszewicz - - - - - A kiedy nic już nie miałem w mieście do roboty - Bo na większość poetów skończył się tu popyt - Wsiadłem w auto i rzekłem pora mi uciekać - Do tej Polski gdzie jeszcze kocha się człowieka - Tam gdzie rowy przydrożne ubarwione mleczem - Zapraszają wędrowca: wstąpcie do miasteczek! - - - Easy Rider - Przeszło mi przez głowę - Easy Rider - upiec jednym słowem - Lecz ciagnęły mnie panny - Ciepłe jak poranek - Kiedy mleko skwaszone - Wnoszą mi na ganek - Easy Rider, Easy Rider - - - W miasteczku pierwszym zamknięty był jedyny hotel - Bo personel miał wolne właśnie w tę sobotę - A w prywatnym mieszkaniu drzwi otworzył blondyn - I zapytał mnie z miejsca jakie masz poglądy - Sprawiedliwość i prawda to jest dla mnie wszystko - Wtedy padła odpowiedź: zjeżdżaj aktywisto - - - Easy Rider - Przeszło mi przez głowę - Easy Rider - upiec jednym słowem - Lecz ciągnęły mnie dalej - Wierzby malowane - I te nasze dziewczyny - Ładne jak z pisanek - Easy Rider, Easy Rider - - - W następnym domku z ogródkiem miejski prokurator - Różom kolce przycinał równo ciął sekator - Przywitałem się grzecznie prosząc o mieszkanie - On zapytał mnie tylko jakie ma pan zdanie - Sprawiedliwość i prawda to jest dla mnie wszystko - Wtedy padła odpowiedź: odejdź ekstremisto - - - Easy Rider - Przeszło mi przez głowę - Easy Rider - upiec jednym słowem - Lecz ciągnęło mnie jeszcze - Do gościnnych wiosek - Gdzie częstują każdego - Miodem i bigosem - Easy Rider, Easy Rider - - - Solidny dom z pruskiej cegły siatką ogrodzony - I na bramie tabliczka: obcym wstęp wzbroniony - I na ganku gospodarz czerstwy jak bochenek - Wziął przywitał pytaniem co najbardziej cenię - Sprawiedliwość i prawda to jest dla mnie wszystko - Burek bierz miastowego będzie widowisko - - - Easy Rider - Przeszło mi przez głowę - Easy Rider - upiec jednym słowem - Lecz ciągnęło mnie jeszcze - W strony te dalekie - Gdzie tak swojsko nam pachnie - Sianem i człowiekiem - Easy Rider, Easy Rider - - - A kiedy minął już miesiąc w mej samotnej drodze - Gdzieś na szlaku zatrzymał pojazd mój wędrowiec - Sprawiedliwość i prawda rzekłem do rodaka - I był pierwszym co spytał: dobrze, ale jaka? - I podzielił się ze mną chlebem i kłopotem - To był też Easy Rider tylko na piechotę - Easy Rider - - - - - - - - - - Pralnia - - - - - chord positioning - - - OnufryKrzysiek - - - - Sprawdzane ze śpiewnikiem Daukszewicza - - diff --git a/songs/Emeryt.xml b/songs/Emeryt.xml deleted file mode 100644 index 3742331a..00000000 --- a/songs/Emeryt.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - Tomasz Piórski - - Ryszard Muzaj - EKT Gdynia - - - - - Leżysz wtulona w pościel - Coś cichutko mruczysz przez sen - Łóżko szerokie, a pościel świeża - Za oknem prawie dzień - A jeszcze niedawno koja - W niej pachnący rybą koc - Fale bijące o pokład - I bosmana zdarty głos - - - To wszystko było minęło zostało tylko wspomnienie - Już nie poczuję wibracji pokładu gdy kable grają - Już tylko dom i ogródek i tak aż do śmierci - A przecież stare żaglowce po morzach jeszcze pływają - - - Nie gniewaj się kochanie - Że trudno ze mną żyć - Że zapomniałem kupić mleko - - I gary zmyć - Lecz jeszcze niedawno pokład - Mym drugim domem był - Tam nie stało się w kolejkach - Tam nie było miejsca dla złych - - - - Upłynie sporo czasu - Nim przyzwyczaję się - Czterdzieści lat na morzu - Zamkniętych w jeden dzień - Skąd lekarz może wiedzieć - Że za morzem tęskno mi - Że duszę się na lądzie - Że śni mi się pokład pełen ryb - - - - Wiem masz do mnie żal - Mieliśmy do przyjaciół iść - Spotkałem kolegę z rejsu - On w morze idzie dziś - Siedziałem potem na kei - Ze łzami patrzyłem na port - Jeszcze przyjdzie taki dzień - Kiedy opuszczę go a na razie - - - To wszystko było minęło zostało tylko wspomnienie - Już nie poczuję wibracji pokładu gdy kable grają - Już tylko dom i ogródek i tak aż do śmierci - - A przecież stare żaglowce po morzach jeszcze pływają - - - - - - - - Alek - - - - - chord positioning - - - - - - Szanta - diff --git a/songs/Francois_Villon.xml b/songs/Francois_Villon.xml deleted file mode 100644 index 3dabd989..00000000 --- a/songs/Francois_Villon.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - Bułat Okudżawa - - - Dopóki nam Ziemia kręci się, - Dopóki jest tak czy siak, - Panie, ofiaruj każdemu z nas - Czego mu w życiu brak. - Mędrcowi darować głowę racz, - Tchórzowi dać konia chciej, - Sypnij grosz szczęściarzom - I mnie w opiece swej miej. - - - Dopóki nam Ziemia obraca się, - O, Panie, daj nam znak. - Władzy spragnionym uczyń, - By władza poszła im w smak. - Hojnych puść między żebraków, - Niech się poczują lżej, - Daj Kainowi skruchę - I mnie w opiece swej miej. - - - Ja wiem, że Ty wszystko możesz, - Ja wierzę w Twą moc i gest, - Jak wierzy żołnierz zabity, - Że w siódmym niebie jest, - Jak zmysł każdy chłonie z wiarą - Twój ledwie słyszalny głos, - Jak wszyscy wierzymy w Ciebie, - Nie wiedząc, co niesie los. - - - Panie zielonooki mój - Boże jedyny spraw, - Dopóki nam Ziemia toczy się - Zdumiona obrotem spraw, - Dopóki czasu i prochu - Wciąż jeszcze wystarcza jej, - Dajże nam wszystkim po trochu - I mnie w opiece swej miej. - - - - - - - - - - - - Modlitwa - Bułat Okudżawa - Bułat Okudżawa - - - A. Mandalian - - - - diff --git a/songs/Gdy_mnie_kochac_przestaniesz.xml b/songs/Gdy_mnie_kochac_przestaniesz.xml deleted file mode 100644 index b6d8cc4d..00000000 --- a/songs/Gdy_mnie_kochac_przestaniesz.xml +++ /dev/null @@ -1,65 +0,0 @@ - - - - Andrzej Sikorowski - - Jan Hnatowicz - Pod Budą - - - - - Gdy mnie kochać przestaniesz to powiedz - Powiedz kiedy mnie kochać przestaniesz - To się człowiek wypłacze jak człowiek - W białym łóżku nad ranem - Nie przysyłaj mi listów ostatnich - Nie owijaj w bawełnę słów paru - Lepiej siądźmy do ciepłej kolacji - Pod okapem wieczoru - - - Na talerzach świecy blask - Dymi waza pełna gwiazd - A pod stołem kot się łasi - Coś stuknęło na tarasie - Może wiatr - Piętro wyżej ćwiczą Liszta - A zawiane towarzystwo - Gdzieś pod bramą wykrzykuje - Stróż im tego nie daruje - Stróż artysta - - - Posiedzimy tak sobie we dwoje - Pośród spraw których nigdy nie bo - Potem w starym zacisznym pokoju - Znowu wyznasz mi mość - Gdy mnie kochać przestaniesz bez racji - Powiedz o tym od razu kochany - Wtedy zjemy kolejną kolację - Na wieczoru dywanie - - - - - - - - - - Pod Budą - Poezja śpiewana - - - - chord positioning - - - Onufry - - - Wszystko OK? - - - diff --git a/songs/Gloria.xml b/songs/Gloria.xml deleted file mode 100644 index 965277c6..00000000 --- a/songs/Gloria.xml +++ /dev/null @@ -1,106 +0,0 @@ - - - - Edward Stachura - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - - - - - - - - - - - - - - - - - Chwała najsampierw komu, komu gloria - Na wysokościach - Chwała najsampierw tobie, trawo przychylna każdemu - Kraino na dół od Edenu - Gloria gloria - - - Chwała tobie słońce odyńcu samotny - Co wstajesz rano z trzęsawisk nocnych - I w górę bieżysz w niebo sam się wzbijasz - I chmury czarne białym kłem przebijasz - I to wszystko bezkrwawo brawo, brawo - I to wszystko złociście i nikogo nie boli - Gloria, gloria in exelsis soli - - - Z słońcem pochwalonym teraz pędźmy razem - Na nim na odyńcu galopujmy dalej - Chwała tobie wietrze, wieczny ty młodziku - Sieroto świata, ulubieńcze losu - Od złego ratuj i kąkoli w zbożu - Łagodnie kołysz tych co są na morzu - Gloria gloria in excelsis eoli - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Z wiatrem pochwalonym teraz pędzimy społem - Na nim na koniku galopujemy polem - Chwała wam ptaszki śpiewające - Chwała wam ryby pluskające - Chwała wam zające na łące - Zakochane w biedronce - - - Chwała wam zimy, wiosny, lata i jesienie - Chwała temu co bez gniewu idzie - Poprzez śniegi, deszcze, blaski oraz cienie - W piersi pod koszulą całe jego mienie - Gloria gloria - - - - - - - - - - diff --git a/songs/Glupi_Gienek.xml b/songs/Glupi_Gienek.xml deleted file mode 100644 index b9fab759..00000000 --- a/songs/Glupi_Gienek.xml +++ /dev/null @@ -1,46 +0,0 @@ - - - Stare Dobre Małżeństwo - - - Gienek gra na gitarze - Miał być szewcem G - Lecz mu nie wyszło - Za oknem jesień - Przybija podkówki - Chyba na przyszłość - - - Gitara Gienka jest taka cienka - Po prostu mało ma strun - Lecz Gienek jej wierzy, - Wie że struna pęka - Zwłaszcza gdy cienka i już - - - Gienek nie będzie już szewcem - Bo wbił sobie w głowę gwóźdź - Woli gitarę mieć za żonę - Z gitarą bierze ślub - - - - - - - - - - - - - - - - - - - - - - diff --git a/songs/Gonic_marzenia.xml b/songs/Gonic_marzenia.xml deleted file mode 100644 index 1d277bb9..00000000 --- a/songs/Gonic_marzenia.xml +++ /dev/null @@ -1,80 +0,0 @@ - - - - Jurij Kukin - - Jurij Kukin - Jurij Kukin - - Za tumanom - - - Na włóczęgę dziś wyruszyć przyszła pora, - Las nas woła śpiewem ptaków, szumem drzew - I wołają nas już pola i jeziora, - Zeszłoroczny nasz wesoły pomnąc śpiew. - Ludzie mają swoje prace, ludzie lubią się bogacić, - Pełne brzuchy mają chcą mieć pełen trzos. - - - - A ja gonię, a ja gonię swe marzenia, - Szukam szczęścia gdzie kaczeńce i gdzie wrzos. - - - - Tak to proste że i gadać szkoda czasu, - Tylko plecak wziąć i iść przed siebie tak. - Szukać wiatru i zapachu szukać lasu, - Jak najdalej z zadymionych wielkich miast. - Zrozum bracie, to tak trzeba łóżkiem trawa, dachem drzewa, - Z wiatrem gonić i z ptakami śpiewać w głos! - - - - Trzeba gonić trzeba gonić swe marzenia - I nie czekać ile trosk przyniesie los! - - - - Tym co iść nie lubią, mówię do widzenia, - Za dni kilka może się spotkamy znów. - Idę w świat, by tam dogonić swe marzenia, - Aby spełnić kilka swoich złotych snów. - Więc z dziewczyną swą pod rękę i z gitarą, i z piosenką, - Precz mi smutki, precz przykrości słońce świeć! - - - - Idę gonić idę gonić swe marzenia - I spokoju szukać pośród starch drzew. - - - - - - - - - - Kuba P.Michał Korch - - - - - - - - - - Nie wiem, kto przetłumaczył. - - - - chord positioning - - - - - Piosenka turystyczna - diff --git a/songs/Gorska_ballada.xml b/songs/Gorska_ballada.xml deleted file mode 100644 index f70d9e2a..00000000 --- a/songs/Gorska_ballada.xml +++ /dev/null @@ -1,81 +0,0 @@ - - - - Leszek Kopeć - - Leszek Kopeć - Leszek Kopeć - - - - - - - - - - - - Przyłączył się do nas na jednej z wędrówek - Razem z nami przemierzał górskie szlaki - Rzadko do kogoś odezwał się słowem - Lecz chyba mu dobrze było z nami - Raz kiedyś w schronisku gdy noc nas zdybała - Otworzył jakiś zeszyt wypłowiały - Spod palców spłynęły mu dźwięki gitary - I słowa nieznane lecz bliskie - - - - Bo zagrał swą balladę - A w niej zamknął echa gór - Bo zagrał swą balladę - Górskich potoków szum - - - - - Od tego wieczoru już zawsze nam śpiewał - O nim samym mówiły piosenki - Jakieś imię dziewczyny wspomnienia dużego miasta - Dym z ognisk i noce nieprzespane - Na jednym ze szlaków pożegnał się z nami - Odszedł drogą inną nieznaną - Odszedł jak Majster Bieda może kiedyś powróci - Zawsze na niego czekamy - - - - By zagrał swą balladę - A w niej zamknął echa gór - By zagrał swą balladę - Górskich potoków szum - - Górskich potoków szum - - - - - - - - - - KubaOnufry - - - - a) drugi refren jest z bisem, a dodatkowa linijka po nim występuje tylko raz - trzeba to jakoś rozwiązać -b) Ja w ogóle zazwyczaj gram tę wstawkę muzyczną po pierwszym refrenie tylko raz, ale chwilowo piszę dwa razy. -Nie mam dostępu do oryginału. - - - - chord positioning - - - - - Na szlaku - Turystyczne przeboje - cz. 3 - Piosenka turystyczna górska - diff --git a/songs/Goryl.xml b/songs/Goryl.xml deleted file mode 100644 index 65a77c72..00000000 --- a/songs/Goryl.xml +++ /dev/null @@ -1,131 +0,0 @@ - - - - Georges Brassens - - Georges Brassens - Zespół Reprezentacyjny Programu Trzeciego Polskiego Radia - Filip Łobodziński - Le Gorille - - - W naszym zoo trzymali goryla - W klatce z bardzo grubych krat - Zaś przed nią baby stawały co chwila - I podziwiały samca bez szat - Zwłaszcza na jedną część jego ciała - Wszystkie bezwstydnie gapiły się wciąż - Nie powiem na co lecz nie było to małe - Każda wzdychała gdzie przy nim mój mąż - - - Strzeż się goryla - - - Lecz oto małpa wychodzi ukradkiem - Ku zaskoczeniu szacownych p - Chyba ktoś źle zamknął klatkę - Jak to się stało nie wiem sam - Goryl stanął wolnością zachwycon - I odezwał się słowem tym - Od dziś nie będę już dziewicą - A oto jak słowo przeszło w czyn - - - - Dyrektor zoo postradał zmysły - I powtarzał ciągle bez tchu - Mój goryl nie miał nigdy samicy - On jest silniejszy niż ludzi stu - Gdy dowiedziały się o tym niewiasty - Zaraz podniosły straszliwy krzyk - I zamiast skorzystać z wielkiej szansy - Idiotki dały drapaka w mig - - - - Nawet te z nich co jeszcze przed chwilą - Marzyły o małpim supermanie - Teraz zwiewały aż się kurzyło - A więc to były tylko marzenia - Ten ich strach był tym mniej zrozumiały - Że przecież goryl to na schwał chłop - Bo nawet Don Juan nie dałby mu rady - Szczęście było dosłownie o krok - - - - Ludzie pierzchnęli we wszystkie strony - Bo dziki samiec przeraził ich tak - Pozostał tylko pewien sędzia młody - I jakaś staruszka (stuletni wrak) - Goryl widząc jedynie tych dwoje - Poczuł gwałtowny erotyki głód - Więc aby żądze swe zaspokoić - Ku nim skierował swój kaczy chód - - - - Starucha czując nagłą ochotę - Westchnęła -- więc jednak zdarzył się cud - Ktoś jeszcze miewa do mnie ciągoty - Już nie liczyłam na szczęścia łut - Ciekawe jaką samicę tu znajdzie - Chyba tę starą przecież nie mnie - Pomyślał sędzia lecz przyszłość zasię - Dowiodła jak bardzo mylił się - - - - Bo zastanówmy się w tym momencie - Gdyby ktoś inny na miejscu małpy - Musiał tu wybrać starucha czy sędzia - Komu z nich szczęścia spróbować dałby - Ja gdybym rozwiązać miał osobiście - Alternatywę taką już dz - Bym wybrał babinę oczywiście - Choć włos się jeży na samą myśl - - - - Ale niestety co prawda goryl - Jest arcymistrzem w miłosnej grze - Lecz jeśli chodzi o smak czy urodę - Wiadomo powszechnie raczej nie - Albowiem zamiast zgwałcić staruchę - Jak to uczynił by byle kto - Ten sędziego ułapił za ucho - I w jakieś krzaki zaciągnął go - - - - Dalszego ciągu zdradzić nie mogę - Chociaż i miejsce na to i czas - Lecz mi nie wolno a wielka szkoda - Bo ubawiło by to was - Jako że sędzia w szczytowym momencie - Zapłakał głośno i krzyknął ,,mamo'' - Zupełnie jak człowiek którego na ścięcie - Skazał był właśnie tego dnia rano - - - - - - - - - Piosenka kabaretowa - - - - chord positioning - - - Onufry - - - - - - diff --git a/songs/Hej_przyjaciele.xml b/songs/Hej_przyjaciele.xml deleted file mode 100644 index 84f1b10d..00000000 --- a/songs/Hej_przyjaciele.xml +++ /dev/null @@ -1,57 +0,0 @@ - - - - Paweł Kasperczyk - - Paweł Kasperczyk - Babsztyl - - - - - Tam, dokąd chciałem już nie dojdę, szkoda zdzierać nóg, - Już wędrówki naszej wspólnej nadchodzi kres. - Wy pójdziecie inną drogą zostawicie mnie, - Odejdziecie — sam zostanę na rozstaju dróg. - - - Hej przyjaciele, przyjaciele, hej, zostańcie ze mną, - Przecież wszystko to co miałem oddałem Wam. - Hej przyjaciele, przyjaciele, hej, choć chwilę jedną, - Znowu w życiu mi nie wyszło, znowu będę sam. - - - Znów spóźniłem się na pociąg i odjechał już, - Tylko jego mglisty koniec zamajaczył mi. - Stoję smutny na peronie z tą walizką jedną - Tak, jak człowiek, który zgubił od domu swego klucz. - - - - Tam, dokąd chciałem już nie dojdę, szkoda zdzierać nóg, - Już wędrówki naszej wspólnej nadchodzi kres. - Wy pójdziecie inną drogą zostawicie mnie, - Zamazanych drogowskazów nie odczytam już. - - - - - - - - Michał Korch - - - - - - - - chord positioning - - - - - - Inna - diff --git a/songs/Hiszpanskie_dziewczyny.xml b/songs/Hiszpanskie_dziewczyny.xml deleted file mode 100644 index 381ea17d..00000000 --- a/songs/Hiszpanskie_dziewczyny.xml +++ /dev/null @@ -1,68 +0,0 @@ - - - - - - - - - - - - Żegnajcie nam dziś hiszpańskie dziewczyny - Żegnajcie nam dziś marzenia ze snów - Ku brzegom angielskim już ruszać nam pora - Lecz kiedyś na pewno wrócimy tu znów - - - I smak waszych ust hiszpańskie dziewczyny - W noc ciemną i złą nam będzie się śnił - Leniwie popłyną znów rejsu godziny - Wspomnienie ust waszych przysporzy nam sił - - - Niedługo ujrzymy znów w dali Cape Deadman - I głowę baranią sterczącą wśród wzgórz - I statki stojące na redzie przy Plymouth - Klarować kotwicę najwyższy czas j - - - - A potem znów żagle na masztach rozkwitną - Kurs szyper wyznaczy na Portland i Wight - I znów stara łajba potoczy się ciężko - Przez fale w kierunku na Beachie Fairlie - - - - Zabłysną nam bielą skał zęby spod Dover - I znów noc w kubryku wśród legend i bajd - Powoli i znojnie tak płynie nam życie - Na wodach i w portach South Foreland Light - - - - I smak waszych ust hiszpańskie dziewczyny - W noc ciemną i złą nam będzie się śnił - Leniwie popłyną znów rejsu godziny - Wspomnienie ust waszych przysporzy nam sił - - - - - - - - Alek za Onufrym - - - - - chord positioning - - - - - - Szanta - diff --git a/songs/Idac_zawsze_idz.xml b/songs/Idac_zawsze_idz.xml deleted file mode 100644 index a381d6ad..00000000 --- a/songs/Idac_zawsze_idz.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - Grzegorz Tomczak - - Grzegorz Tomczak - Grzegorz Tomczak - - - - - Przyszedł do mnie, jak do swego - Twarz z powieści Witkacego mi - I dwie książki. Jak nie patrzeć - Bursa Andrzej i Wojaczek Raf - W oczach miał zmęczenie światem - I chciał ze mną, tak jak z bratem iść w rozmowy szał - Więc od razu bez przymiarki - Takie słowne dwa ogarki mi d - - - Siedząc, zawsze siedź - - Idąc, zawsze idź - Pierwsze kroki stawiaj w chmurach - Choćbyś wiedział, że nie wskórasz - W takich chmurach nic - - Absolutnie nic - Kiedy mówisz, mów - Kiedy milczysz, milcz - Niechaj wielka będzie cisza - Tak by każdy ją usłyszał - ośniej niż twój krzyk - Więc: kiedy milczysz, milcz - - - Milczeliśmy przez godzinę - Popijając połowinę pod kwas - Gdy byliśmy już w rozpędzie - Wstał, powiedział: na mnie będzie już czas - Jeszcze na mnie spojrzał, jak ten - Który miał miasteczka każdy wie, gdzie - Na odchodnym, bez przymiarki - Rzucił słowne dwa ogarki bym pamiętał, że - - - - - - - - OnufryAlek - - - - - - - chord positioning - - - - - Ja to mam szczęście... - Poezja śpiewana - diff --git a/songs/Imperatyw.xml b/songs/Imperatyw.xml deleted file mode 100644 index 222b1a94..00000000 --- a/songs/Imperatyw.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - - Piotr Bakal - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Będziemy szli nieprzerwanie - W ulewie skwarze huraganie - Przez chwiejne mosty grząskie bagna - Chaszcze pustynie i mokradła - Będziemy szli przez zamiecie - Przez grudnie, marce, czerwce, sierpnie - Upalne lata mroźne zimy - Będziemy szli nie zawrócimy - - - Z wiarą w następny zakręt drogi - Co znów okaże się nie ten - W tajne przymierze z Panem Bogiem - W naszego trudu jakiś sens - - - Będziemy szli bez wytchnienia - Upadający ze zmęczenia - Bez gromkich fanfar i okrzyków - Bez pozy dumnych wojowników - Będziemy szli wbrew logice - Powolnym marszem całe życie - Będziemy mówić że już dosyć - I dalej, dalej, dalej kroczyć - - - - - - - - - - - Michał Korch - - - Nigdy nie słyszałem w oryginale... - - - - - - chord positioning - - - - Pod wielkim dachem nieba - poezja śpiewana - diff --git a/songs/Jak_dobrze_nam_(3).xml b/songs/Jak_dobrze_nam_(3).xml deleted file mode 100644 index ce090b26..00000000 --- a/songs/Jak_dobrze_nam_(3).xml +++ /dev/null @@ -1,61 +0,0 @@ - - - - - - - - - - - - Jak dobrze nam zdobywać góry - I młodą piersią chłonąć wiatr - Prężnymi stopy deptać chmury - I palce ranić o szczyt Tatr - - - Mieć w uszach szum, strumieni śpiew - A w żyłach roztętnioną krew - Hejże hej, hejże ha - Żyjmy więc póki czas - Bo kto wie, bo kto wie - Kiedy znowu ujrzę was - - - Jak dobrze nam głęboką nocą - Wędrować jasną wstęgą szos - Patrzeć jak gwiazdy niebo złocą - I czekać co przyniesie los - - - - Jak dobrze nam po wielkich szczytach - W doliny, w progi wracać swe - Przyjaciół jasne twarze witać - O młoda duszo raduj się - - - - Jak dobrze nam tak przy ognisku - Tęczową wstęgę marzeń snuć - Patrzeć jak w niebo iskra tryska - I wokół siebie przyjaźń czuć - - - Mieć w oczach blask i ognia żar - A w duszy mieć młodości czar - Hejże hej, hejże ha - Żyjmy więc póki czas - Bo kto wie, bo kto wie - Kiedy znowu ujrzę was - - - - - - - - - - diff --git a/songs/Jaki_byl_ten_dzien.xml b/songs/Jaki_byl_ten_dzien.xml deleted file mode 100644 index 661565ac..00000000 --- a/songs/Jaki_byl_ten_dzien.xml +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - Turbo - - - - - Późno już, otwiera się mrok, - Sen podchodzi do drzwi na palcach jak kot. - Nadchodzi czas ucieczki na aut. - Gdy kolejny mój dzień wspomieniem się stał. - - - Jaki był ten dzień, co darował co wziął, - Czy mnie wyniósł pod niebo czy rzucił na dno? - Jaki był ten dzień, czy coś zmienił czy nie, - Czy był tylko nadzieją na dobre i złe? - - - Łagodny mrok zasłania mi twarz, - Jakby przeczuł, że chcę być sobą choć raz. - Nie skarżę się, że mam to co mam, - Że przegrałem coś znów, że jestem znów sam. - - - Jaki był ten dzień, co darował co wziął, - Czy mnie wyniósł pod niebo czy rzucił na dno? - Jaki był ten dzień, czy coś zmienił czy nie, - Czy był tylko nadzieją na dobre i złe? - - - - - - - - - - - - - Rock - - - - chord positioning - - - Kasia Kowalska - - - - - - diff --git a/songs/Jalta.xml b/songs/Jalta.xml deleted file mode 100644 index c7973769..00000000 --- a/songs/Jalta.xml +++ /dev/null @@ -1,120 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Jak nowa rezydencja carów - użba swe obowiązki zna - Precz wysiedlono stąd Tatarów - Gdzie na świat wyrok zapaść ma - Okna już widzą słyszą ściany - Jak kaszle nad cygarem lew - Jak skrzypi wózek popychany - Z kalekim demokratą w tle - Lecz nikt nie widzi i nie słyszy - Co robi Góral w krymską noc - Gdy gestem w wiernych towarzyszy - Wpaja swą legendarną moc - - - Nie miejcie żalu do Stalina - Nie on się za tym wszystkim krył - Przecież to nie jest jego wina - Że Roosevelt w Jałcie nie miał s - Gdy się triumwirat wspólnie br - Za świata historyczne kształty - Wiadomo kto Cezara gr - I tak rozumieć trzeba Jałtę - - - W resztce cygara mdłym ogniku - Pływała Lwa Albionu twarz - Nie rozmawiajmy o Bałtyku - Po co w Europie tyle państw - Polacy -- chodzi tylko o to - Żeby gdzieś w końcu mogli żyć - Z tą Polską zawsze są kłopoty - Kaleka troszczy się i drży - Lecz uspokaja ich gospodarz - Pożółkły dłonią głaszcząc wąs - Mój kraj pomocną dłoń im poda - Potem niech rządzą się jak chcą - - - Nie miejcie żalu do Churchilla - Nie on wszak za tym wszystkim stał - Wszak tylko po to tylko był tryumwirat - By Stalin dostał to co chciał - Komu zależy na pokoju - Ten zawsze cofnie się przed gwałtem - Wygra, kto się nie boi wojen - I tak rozumieć trzeba Jałtę - - - Ściana pałacu słuch napina - Gdy do kaleki mówi Lew - Ja wierzę w szczerość słów Stalina - Dba chyba o radziecką krew - I potakuje mu kaleka - Niezłomny demokracji stróż - Stalin to ktoś na miarę wieku - Oto mąż stanu, oto wódz! - Bo sojusz wielkich to nie zmowa - To przyszłość świata, wolność, ład - Przy nim i słaby się uchowa - I swoją część otrzyma strat - - - Nie miejcie żalu do Roosevelta - Pomyślcie ile musiał znieść - Fajka, dym cygar i butelka - Churchill co miał sojusze gdzieś - Wszakże radziły trzy imperia - Nad granicami co zatarte - W szczegółach zaś już siedział Beria - I tak rozumieć trzeba Jałtę - - - Więc delegacje odleciały - Ucichł na Krymie carski gród - Gdy na zachodzie działa grzmiały - Transporty ludzi szły na wschód - Świat wolny święcił potem tryumf - Opustoszały nagle fronty - W kwiatach już prezydenta grób - A tam transporty i transporty - Czerwony świt się z nocy budzi - Z woli wyborców odszedł Churchill - A tam transporty żywych ludzi - A tam obozy długiej śmierci - - - Nie miejcie więc do Trójcy żalu - Wyrok historii za nią stał - Opracowany w każdym calu - Każdy z nich chronił, co już miał - Mógł mylić się, zwiedziony chwilą - Nie był Polakiem ani Bałtem - Tylko ofiary się nie mylą - I tak rozumieć trzeba Jałtę - - - - - - - - - - - - - - - diff --git a/songs/Jasnowlosa.xml b/songs/Jasnowlosa.xml deleted file mode 100644 index 02de66dd..00000000 --- a/songs/Jasnowlosa.xml +++ /dev/null @@ -1,69 +0,0 @@ - - - Tonam & Synowie - - - Na tańcach ją poznałem długowłosą blond - Dziewczynę moich marzeń, nie wiadomo, skąd - Ona się tam wzięła piękna niczym kwiat - Czy jak syrena wyszła z morza czy ją przygnał wiatr - - - Żegnaj Irlandio, czas w drogę mi j - W porcie gotowa stoi moja łódź - Na wielki ocean przyjdzie mi zaraz wyjść - I pożegnać się z dziewczyną na Lough Sholin - - - Ująłem ją za rękę delikatną jak - Latem mały motyl albo róży kwiat - Poszedłem z nią na plażę wsłuchać się w szum fal - Pokazałem jasnowłosej wielki morza czar - - - - Za moment wyruszam w długi, trudny rejs - I z piękną mą dziewczyną przyjdzie rozstać się - Żagle pójdą w górę, wiatr mnie pogna w przód - I przez morza mnie powiedzie, ty zostaniesz tu. - - - - - - - - - - - - - Onufry - - - - - - - - - - - - - - - chord positioning - - - - - - Bogdan Kuśka - Tradycyjna - - - Tonam & Synowie - Szanta - - diff --git a/songs/Jesienny_obrazek.xml b/songs/Jesienny_obrazek.xml deleted file mode 100644 index 2c2d6582..00000000 --- a/songs/Jesienny_obrazek.xml +++ /dev/null @@ -1,68 +0,0 @@ - - - - Maciej Służała - - Maciej Służała - - - - - - Klucz ptaków na niebie wygląda wspaniale - Choć chmury zwiastują deszczową pogodę - Wiatr liście pozrywał i rzucił na trawę - A niebo jest dziwnie różowe - - - Jesienny obrazek malują małe ręce - - Las i ptaki i nic więcej - Jesienny obrazek malują małe ręce - - Las i ptaki i nic więcej - - - - - - - W tym małym obrazku zmieściło się wszystko - Co jesień ze sobą przyniosła na pola - I słońce i deszcz i namiot niebieski - Rozbity pod starą topolą - - - - - - - - Deszcz chyba już pada, lecz słońce wciąż świeci - Zaraz powinna pojawić się tęcza - To cały obrazek spod dziecinnej ręki - I cała to o nim piosenka - - - - - - - - - - - - Alek - - - - - chord positioning - - - - - - - diff --git a/songs/Jest_taki_samotny_dom.xml b/songs/Jest_taki_samotny_dom.xml deleted file mode 100644 index bdb0f07a..00000000 --- a/songs/Jest_taki_samotny_dom.xml +++ /dev/null @@ -1,68 +0,0 @@ - - - - - - - Budka Suflera - - - - - Uderzył deszcz, wybuchła noc, przy drodze pusty dwór - W katedrach drzew, w przyłbicach gór wagnerowski ton - - - Za witraża dziwnym szkłem pustych komnat chłód - W szary pył rozbity czas, martwy, pusty dwór - - - Dorzucam drew, bo ogień zgasł, ciągle burza trwa - Nagle feeria barw i mnóstwo świec, ktoś na skrzypcach gra - - - Gotyckie odrzwia chylą się i skrzypiąc suną w bok - I biała pani płynie z nich, w brylantowej mgle - - - Zawirował z nami dwór, rudych włosów płomień - Nad górami lecę, lecę z nią, różę trzyma w dłoni - - - (A po nocy przychodzi dzień, a po burzy spokój - Nagle ptaki budzą mnie, tłukąc się do okien) - - - (A po nocy przychodzi dzień, a po burzy spokój) - Znowu szary, pusty dom, gdzie schroniłem się - (Nagle ptaki budzą mnie, tłukąc się do okien) - I najmilsza z wszystkich, wszystkich mi, na witraża szkle - - - (A po nocy przychodzi dzień, a po burzy spokój) - Znowu w drogę, w drogę trzeba iść, w życie się zanurzyć - (Nagle ptaki budzą mnie, tłukąc się do okien) - Chociaż w ręce jeszcze tkwi lekko zwiędła róża - - - - (A po nocy przychodzi dzień, a po burzy spokój) - Lecz po nocy przychodzi dzień, a po burzy spokój - (Nagle ptaki budzą mnie, tłukąc się do okien) - Nagle ptaki budzą mnie, tłukąc się do okien - - - - - - - - - - - - - - - - diff --git a/songs/Jeszcze_nie_czas.xml b/songs/Jeszcze_nie_czas.xml deleted file mode 100644 index 482da628..00000000 --- a/songs/Jeszcze_nie_czas.xml +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - Wieczór w granatowym swym płaszczu - Gwiazdy już pozapalał - Z kątów wyłażą zrudziałe smutki - A my gramy na swych gitarach - I ciche nutki zbieramy - By grały nam razem do taktu - Niebieskie myśli odganiamy - Bo przecież jeszcze nie czas - - - Jeszcze nie czas swe marzenia do walizek kłaść - Jeszcze nie czas, by piosenki nasze śpiewał tylko wiatr - Jeszcze nie czas, by gitary spały na dnie szaf - Póki tyle jest muzyki jeszcze w nas - - - A kiedy zabraknie przyjaciół - By wieczór przegadać do rana - To przecież masz jeszcze swoją gitarę - Strun kilka, melodii parę - Gdy piasek nie chce się wsypać - Pod oczy i do snu zaprosić - To trzeba gdzieś odejść, by dłużej nie płakać - I smutku w swym sercu nie nosić - - - - Gdy włożą cię w dębową skrzynkę - Niech włożą razem z gitarą - Niech w niebie ci grają struny srebrzyste - Melodię twą ukochaną - - - - - - - - Alek - - - - - - Tekst zgodny z nagraniem -- Alek - - - - Andrzej Koczewski - Andrzej Koczewski - - - - - - - diff --git a/songs/Kantyczka_z_lotu_ptaka.xml b/songs/Kantyczka_z_lotu_ptaka.xml deleted file mode 100644 index f578da96..00000000 --- a/songs/Kantyczka_z_lotu_ptaka.xml +++ /dev/null @@ -1,104 +0,0 @@ - - - - Jacek Kaczmarski - - Przemysław Gintrowski - Jacek Kaczmarski; Przemysław Gintrowski - - - - - — Patrz, mój dobrotliwy Boże, - Na swój ulubiony ludek, - Jak wychodzi rano w zboże - Zginać harde karki z trudem. - Patrz jak schyla się nad pracą, - Jak pokornie klęski znosi - I nie pyta – Po co? Za co? - Czasem o coś Cię poprosi - - - — Ujmij trochę łaski nieba! - Daj spokoju w zamian chleba! - Innym udziel swej miłości! - Nam – sprawiedliwości! - - - — Smuć się, Chryste Panie, w chmurze - Widząc, jak się naród bawi, - Znowu chciałby być przedmurzem - I w pogańskiej krwi się pławić. - Dymią kuźnie i warsztaty, - Lecz nie pracą a – skargami, - Że nie taka jak przed laty - Łaska Twoja nad hufcami: - - - — Siły grożą Ci nieczyste - Daj nam wsławić się, o Chryste! - Kalwin, Litwin nam ubliża! - Dźwigniem ciężar Krzyża! - - - — Załam ręce, Matko Boska; - Upadają obyczaje, - Nie pomogła modłom chłosta – - Młodzież w szranki ciała staje. - W nędzy gzi się krew gorąca - Bez sumienia, bez oddechu, - Po czym z własnych trzewi strząsa - Niedojrzały owoc grzechu. - - - — Co zbawienie nam, czy piekło! - Byle życie nie uciekło! - Jeszcze będzie czas umierać! - Żyjmy tu i teraz! - - - — Grzmijcie gniewem Wszyscy Święci! - Handel lud zalewa boży, - Obce kupce i klienci - W złote wabią go obroże. - Liczy chciwy Żyd i Niemiec - Dziś po ile polska czystość; - Kupi dusze, kupi ziemie - I zostawi pośmiewisko... - - - — Co nam hańba, gdy talary - Mają lepszy kurs od wiary! - Wymienimy na walutę - Honor i pokutę! - - - — Jeden naród, tyle kwestii! - Wszystkich naraz – nie wysłuchasz! – - Zadumali się Niebiescy - W imię Ojca, Syna, Ducha... - - - - - - - - - - - - - - - Onufry - - - - - - - - - - diff --git a/songs/Karol_Levittoux_(4).xml b/songs/Karol_Levittoux_(4).xml deleted file mode 100644 index 6f00a17e..00000000 --- a/songs/Karol_Levittoux_(4).xml +++ /dev/null @@ -1,110 +0,0 @@ - - - - Jerzy Czech - Nie jestem pewien, czy ta piosenka nie wystąpiła na jakimś nagraniu przed 'Kamieniami'. Ale na kamieniach na pewno jest. - Przemysław Gintrowski - Przemysław Gintrowski - - - - - Zbrodniczy spisek w gimnazjalnej klasie - Zagraża państwu w jego spokój godzi - - Inspiratorów wkrótce wykryć da się - Wciąż niepoprawni Polaczkowie młodzi - Ten Levittoux był hersztem jak się zdaje - Przez niego w duszę sączy się trucizna - Śledztwo prowadźcie zgodnie ze zwyczajem - W mig się przyzna prędko się przyzna - - - Drogi panie Levittoux - Prawdę wyznać chciej - Gdy wspólników podasz tu - Sercu będzie lżej - Milczysz panie Levittoux - Nie unikniesz kar - Młodzież wiodłeś ty ku złu - Smuci się nasz car - - - Mury kazamat dostatecznie grube - Żeby krzyk każdy wytłumić dokładnie - ogosławiony kto przejdzie tę próbę - A kto się złamie przekleństwo nań spadnie - Logika dziejów nakłada kajdany - Sprawiedliwości zgrzytają zasuwy - I ciągle jedna myśl tłucze o ściany - Nic nie mówić, nie mówić, nie mówić - - - Wszakże panie Levittoux - Nie działałeś sam - Gdy cię pozbawimy snu - Wszystko powiesz nam - Miejże rozum Levittoux - Próżny jest twój trud - Żadnej strawy nie dać mu - By go złamał głód - - - Na przesłuchaniu wziął czterysta pałek - Konieczny był tu bezpośredni przymus - Śledztwo da skutek jeśli jest wytrwałe - Bez końca przecież nie może się trzymać - Zwinięty w szmatę leży sztandar ciała - Szarpie go w strzępy ptaszysko dwugłowe - Krwią pokreślona pleców karta biała - Na niej napis nie powiem, nie powiem - - - W końcu z ciebie Levittoux - Tryśnie zeznań zdrój - Zaznasz knuta dzień po dniu - Pęknie upór twój - Chciałeś uciec Levittoux - Coś ci słabo szło - Krzycz do ostatniego tchu - Nas nie wzruszy to - - - Ponad siennikiem migoce kaganek - Mniej boli ogień niźli ran płomienie - Dziś sobie takie rozścielę posłanie - Co moją celę w jeden krzyk zamieni - Skąpo tu światła Moskale mi dali - - Ale wystarczy żeby spłonął człowiek - Patrzcie jak długo ten więzień się pali - Co już nic nie powie, nie powie - - - Zwęglone resztki wyniesiono rano - Ból szybko wsiąka w kamień cytadeli - Po incydencie tym rozkaz wydano - By więźniom światła nie dawać do celi - - - - - - - Onufry - - - - - - - - - chord positioning - - - - - Kamienie - Poezja śpiewana - diff --git a/songs/Kim_wlasciwie_bylas.xml b/songs/Kim_wlasciwie_bylas.xml deleted file mode 100644 index 65a8fc1e..00000000 --- a/songs/Kim_wlasciwie_bylas.xml +++ /dev/null @@ -1,76 +0,0 @@ - - - Madame - Edward Stachura - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - Kim właœciwie... - - - - Lalalala lalalalala, lalalala lalalala, lalala, lalala, lalala - - - - Nikt nie zna ścieżek gwiazd - Wybrańcem kto wśród nas - Zapukał ktoś to do mnie gość - Włóczyłem się jak ci - Czekałem na ten dzi - Już stoisz w drzwiach jak dziwny ptak - - - - Więc bardzo proszę wejdź - Tu siadaj rozgość się - I zdradź mi kim tyś jest madame - Albo nie zdradzaj mi - Lepiej nie mówmy nic - Lepiej nie mówmy nic - - - - Nieśmiało sunie brzask - Zatrzymać chciałbym czas - Inaczej jest czas musi biec - Gdzieś w dali zapiał kur - Niemodny wdziewasz strój - Już stoisz w drzwiach jak dziwny ptak - - - - Więc jednak musisz pójść - Posyłasz mi przez próg - Ulotny uśmiech swój madame - Lecz będę czekać przyjdź - Gdy tylko zechcesz przyjdź - Będziemy razem ż - - Ja będę czekać przyjdź - Gdy tylko zechcesz przyjdź - Będziemy razem ż - - - - - - - - OnufryKrzysiek Cz. - - - - - - - chord positioning - - - - - Dla wszystkch starczy miejsca - Poezja śpiewana - diff --git a/songs/Klasowka_z_fragmentu_wolnosci.xml b/songs/Klasowka_z_fragmentu_wolnosci.xml deleted file mode 100644 index 1a7d0026..00000000 --- a/songs/Klasowka_z_fragmentu_wolnosci.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - Krzysztof Daukszewicz - - - Nie pomni dziś filozof pan - Historyk i teolog - Kto pierwszy krzyknął - Wolność dam! - Czy tyran, czy też prorok? - I co na myśli człek ów miał - Też nikt z nas nie pamięta - Czy łańcuch, co dwie ręce skuł - Czy rozerwane pęta? - - - Lecz: Wolność! Wolny! - Jak pięknie się odmienia - Wolność! Wolny! - Przez wieki bez wytchnienia - Wolność! Wolny! - I nikt jej nie rozbudził - Bo wolność, ludzie - To tylko lep na ludzi - - - Bo ten, co wisiał w cieniu drzew - Przed śmiercią się pocieszał - Że to za wolność, chociaż też - Tak myślał ten, co wieszał - A ten, co wydał rozkaz: śmierć - Szampanem się uraczył - Bo wyrok brzmiał: za wolność! - Więc pan sędzia mu wybaczył - - - - I trwa to już tysiące lat - I nic się tu nie zmienia - Krzyczymy przede wszystkim tak - By spały nam sumienia - Choć każdy wiek przykłady dał - Te przypłacone głową - By wierzyć, że ta wolność - To nie tylko piękne słowo - - - - Więc leją się przez cały czas - Krwi purpurowe strugi - Bo zawsze jednym bywa śmierć - By wolność była drugim - I zawsze jakiś człowiek jest - Co w czasach niespokojnych - Zarzuca sobie pętlę, bo - Naprawdę chce być wolnym - - - - - - - Onufry - - - - - - - - - chord positioning - - - - - - Krzysztof Daukszewicz - Krzysztof Daukszewicz - - - - Prośba - Poezja śpiewana - - diff --git a/songs/KochamWolnosc.xml b/songs/KochamWolnosc.xml deleted file mode 100644 index ca5d2eee..00000000 --- a/songs/KochamWolnosc.xml +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - - Chłopcy z placu broni - - - - - Tak niewiele żądam - Tak niewiele pragnę - Tak niewiele widziałem - Tak niewiele zobaczę - Tak niewiele myślę - Tak niewiele znaczę - Tak niewiele słyszałem - Tak niewiele potrafię - - - Wolność, kocham i rozumiem - Wolności oddać nie umiem - - - Tak niewiele miałem - Tak niewiele mam - Mogę stracić wszystko - Mogę zostać sam - - - - - - - - Kocham wolność - Rock - - - - - Onufry - - - - - diff --git a/songs/Kolysanka_dla_Joanny_I.xml b/songs/Kolysanka_dla_Joanny_I.xml deleted file mode 100644 index b55da363..00000000 --- a/songs/Kolysanka_dla_Joanny_I.xml +++ /dev/null @@ -1,55 +0,0 @@ - - - Wolna Grupa Bukowina - - - Zanim mi sen na oczy spłynie - Moje myśli szybują przez lufcik - Żeby cię ujrzeć w ową chwilę - Gdy włosy czeszesz przed lustrem - - - A kiedy zaśniesz w ciepłej pościeli - Zmęczone długim przelotem - Jak ptaki głowy w skrzydła wtulają - Patrząc na sen twój spokojny - - - Niech ci się przyśnią pory roku - Niech grają we śnie twoim i tańczą - Jesień prężąca liście do lotu - Lato w upale słonecznym - - - A jeśli zima, to w śniegu cała - Wiosna w miłków wiosennych łąkach - - Śpij, moje myśli nad tobą czuwają - Na parapecie za oknem - - - - - - - - Krzysiek Cz. - zgodnie ze śpiewnikiem - - - - - chords - - - - - - - - - - - - - - diff --git a/songs/Kolysanka_dla_misiakow.xml b/songs/Kolysanka_dla_misiakow.xml deleted file mode 100644 index e317a7ec..00000000 --- a/songs/Kolysanka_dla_misiakow.xml +++ /dev/null @@ -1,60 +0,0 @@ - - - Martyna Jakubowska - - - W tym pokoju bardzo cicho dziś - Po trzech dniach nareszcie śpisz - Gdzieś za drzwiami został ból - Całych siebie chcemy dać - Kilku ludzi dobrze nas zna - Tylko czasem słabnie nam puls - - - - Już dobrze, dobrze j - - - - Może trzeba upaść na twarz - Swoje rzeczy ubogiemu dać - I zacząć malować bez farb - Przeklinamy dzień za dniem - Śpisz, bo życie nie jest snem - Taki ciężar tylko zgina ci kark - - - - W kącie siedzi Anioł Stróż - Strzeże naszych ciał i dusz - Za godzinę muszę wyjść - Przyjdź po bliskość moich ust - Chcę Ci dać trochę wiary w cud - Póki możesz moje wino pij - - - - - - - - OnufryKrzysiek Cz. - literówki - - - - - chord positioning - - - - - - - - - - - - - - diff --git a/songs/Koncert_(4).xml b/songs/Koncert_(4).xml deleted file mode 100644 index 50ab783d..00000000 --- a/songs/Koncert_(4).xml +++ /dev/null @@ -1,74 +0,0 @@ - - - - Aleksandra Kiełb - - Aleksandra Kiełb, Krzysztof Myszkowski - - - - - - - - - W kołnierz wtulam twarz - Chowam się przed miastem - Jego cienie żłobią w mojej twarzy wąwóz - Trzeszczy jak ułamek szkła - Mój codzienny niepokój - Jak wydostać się z cienia - Może wtedy - - - - Gdyby koncert grać - Ten na trąbki i skrzypce - Tak by dźwięki ułożyły się w wiersz - Gdyby łyżką światła - Rozweselić to wszystko - Żeby we mnie zaśpiewało coś t - Żeby we mnie zaśpiewało coś t - - - - Rośnie we mnie mgła - Jak ze studzien stu - Nie wiem ilu trzeba ksiąg, by ją rozwi - Jedno wiem, że muszę biec - Póki sił mi wystarczy - Póki tylko ta nuta - Mam ją w sobie - - - - Będę koncert grać - Ten na trąbki i skrzypce - Tak by dźwięki ułożyły się w wiersz - Będę łyżką światła rozweselać to wszystko - Żeby w tobie zaśpiewało coś też - Żeby w tobie zaśpiewało coś też - - - - - - - - - - - Onufry - - - - - - chord positioning - - - - - - - diff --git a/songs/Koniec.xml b/songs/Koniec.xml deleted file mode 100644 index 50df7047..00000000 --- a/songs/Koniec.xml +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - - - - - - - Już ostatni płomień zgasł - Trzeba odejść kryjąc twarz - Przez życzliwie uchylone drzwi - - - Ktoś powiedział nazbyt wiele - Ktoś się poczuł przyjacielem - I z dnia na dzień nie zostało nic - - - Ktoś powiedział nazbyt wiele - Ktoś się poczuł przyjacielem - I z dnia na dzień nie zostało nic - - - Jutro wstanie nowy dzień po staremu - Dzwoni mleczarz butelkami daje zn - I na pewno nic na zewnątrz się nie zmieni - Trzeba sobie tylko jakoś z sobą samym radę d - - - Już ostatni płomień zgasł - To już koniec na mnie czas - Drugi brzeg w oddali dawno znikł - - - Tyle serca kosztowało - Jak wyjść teraz z tego cało - Gdy z dnia na dzień nie zostało nic - - - Tyle serca kosztowało - Jak wyjść teraz z tego cało - Gdy z dnia na dzień nie zostało nic - - - - - - - - - - - chord positioning - - - Kuba - - NIe wiem, jak zaznaczyć, że tam pod koniec część się powtarza itd. - - diff --git a/songs/Korowod.xml b/songs/Korowod.xml deleted file mode 100644 index 1dee2e6c..00000000 --- a/songs/Korowod.xml +++ /dev/null @@ -1,80 +0,0 @@ - - - - Marek Grechuta - - Marek Grechuta - Marek Grechuta - - - - - Kto pierwszy szedł przed siebie - Kto pierwszy cel wyznaczył - Kto pierwszy w nas rozpoznał - Kto wrogów kto przyjaciół - Kto pierwszy sławę wszelką - I włości swe miał za nic - A kto nie umiał zasnąć - Nim nie wymyślił granic? - - - Kto pierwszy w noc bezsenną - Wymyślił wielką armię - Kto został bohaterem - Kto żył i umarł marnie - Kto pierwszy został panem - Kto pierwszy został sługą - Kto musiał wstawać wcześnie - A kto mógł spać za długo? - - - Zapatrzeni w słońce - Zapatrzeni w niebo - Zapatrzeni w tańcu - Zapatrzeni w siebie - Wciąż niepewni siebie - Siebie niewiadomi - Pytać wciąż będziemy - Pytać po kryjomu - - - Kto pierwszy szedł przed siebie - Kto pierwszy cel wyznaczył - Kto pierwszy w nas rozpoznał - Kto wrogów kto przyjaciół - Kto pierwszy możnym radził - A kto był buntownikiem - Kto pierwszy został sobą - Kto pierwszy został nikim? - - - Kto pierwszy był fakirem - Kto pierwszy astrologiem - Kto pierwszy został królem - A kto chciał zostać bogiem - Kto z gwiazdozbioru Wega - Patrząc na Ziemię zgadnie - Kto pierwszy był człowiekiem - Kto będzie nim ostatni? - - - - - - - - Onufry - - - - - - chord positioning - - - - - - - diff --git a/songs/Krajka_(3).xml b/songs/Krajka_(3).xml deleted file mode 100644 index 6f355ce2..00000000 --- a/songs/Krajka_(3).xml +++ /dev/null @@ -1,51 +0,0 @@ - - - - - - - - - - - - Chorałem dzwonków dzień rozkwita - Jeszcze od rosy rzęsy mokre - We mgle turkoce pierwsza bryka - ońce wyrusza na włóczęgę - - - Drogą pylistą, drogą polną - Jak kolorowa panny krajka - ońce się wznosi nad stodołą - Będzie tańczyć walca - - - A ja mam swoją gitarę - Spodnie wytarte i buty stare - Wiatry niosą mnie na skrzydłach - - - - Zmoknięte świerszcze stroją skrzypce - Żuraw się wsparł o cembrowinę - Wiele nanosi wody jeszcze - Wielu się ludzi z niej napije - - - - - - - - Alek - - - - chord positioning - - - - - - diff --git a/songs/Krakow,_Piwna_7.xml b/songs/Krakow,_Piwna_7.xml deleted file mode 100644 index bb552a63..00000000 --- a/songs/Krakow,_Piwna_7.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - Andrzej Sikorowski - - - - - - - - Byłem u wróżki, Piwna 7 - Wysokie kręte schody - Ile mi jeszcze chciałem wiedzieć - Upłynie w Wiśle wody - Jaka mnie kiedyś czeka bieda - Lub jakie urodzaje - Czy mi gitarę przyjdzie sprzedać - Czy lecieć na Hawaje - A wróżka puka - W szkalną kulę - I mówi do mnie czule - - - Przed tobą sława - Wieczna zabawa - Wszystko jak z nut - Pieniędzy w bród - Wspaniałe płyty - Piękne kobiety - Zdrowie jak dzwon - Wygodny tron - - - Żegnam staruszkę lekki cały - I ruszam w dół po schodach - Nagle potykam się o mały - Wyjątek w jej prognozach - I myślę tak spadając z hukiem - Niby dojrzała gruszka - W końcu przyszedłem po naukę - Zatem niech żyje wróżka - Niech częściej puka - W szklaną kulę - I mówi do nas czule - - - - Przed wami sława - Wieczna zabawa - Wszystko jak z nut - Pieniędzy w bród - Wspaniałe płyty - Piękne kobiety - Zdrowie jak dzwon - Wygodny tron - - - - - - - - - - - diff --git a/songs/Kubus.xml b/songs/Kubus.xml deleted file mode 100644 index 179dfa23..00000000 --- a/songs/Kubus.xml +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - - - - - - Na stole stoi wazonik, - Pierdut w wazonik kamieniem, - Jak pięknie wazonik zadzwoni, - Cichutko spadając na ziemię. - Na łóżku śpi sobie babcia, - Lecz babcia jest trochę głucha, - Lecz może mej babci pomoże, - Gdy włożę jej druta do ucha. - - - To walczyk grzecznego Kubusia, - Znanego w całym miasteczku, - Co nocą do majtek nie siusia, - I grzecznie się bawi w piaseczku. - - - Dziadkowi, co od lat trzydziestu - Fajeczkę ćmi nałogowo, - Zamieniam tytoń ,,Amfora'' - Z mieszanką ciut ciut wybuchową. - Gdy dziadek się w nocy obudził, - Fajeczkę zapalił po cichu, - To tak mu buchnęło z cybucha, - Że babci szukał na strychu. - - - - Mój tata to też jest aparat, - Czasami nie wraca do domu, - Lecz ja go tego oduczę, - Do kawy wsypuję mu bromu. - O mamie mojej w tym względzie - Powiedzieć nie mogę nic złego, - Na wszelki wypadek do zupy - Dolewam jej kwasu solnego. - - - - Na górze mieszka sąsiadka, - Której nie lubi mamusia, - Więc jutro jej z samego rana, - W butelkę po mleku nasiusiam. - Malutką córeczkę sąsiadki - Po cichu w bramie zaszkoczę, - Na siłę jej ściągnę majteczki - I gumkę wyciągnę na procę. - - - - I rośnie nam Kubuś malutki, - I rośnie nam Kubuś wspaniały, - I rośnie nam chluba narodu, - Przepraszam dziś naród za mały. - - - - - - - - Michał - - - Nie znalazłem autora - - chord positioning - - - - - piosenka kabaretowa - diff --git a/songs/Lato_z_ptakami_odchodzi.xml b/songs/Lato_z_ptakami_odchodzi.xml deleted file mode 100644 index 97413051..00000000 --- a/songs/Lato_z_ptakami_odchodzi.xml +++ /dev/null @@ -1,63 +0,0 @@ - - - - - - Adam Cichocki - - - - - - Lato z ptakami odchodzi - Wiatr skręca liście w warkocze - Dywanem okrywa szlaki - Szkarłaty wiesza na zboczach - - - Przyoblekam myśli w kolory - W liści złoto w buków purpurę - Palę w ogniu letnie wspomnienia - Idę wymachując kosturem - - - - Idę w góry cieszyć się życiem - Oddać dłoniom halnego włosy - W szelest liści wsłuchać się pragnę - W odlatujących ptaków głosy - - - - ony pot czuję w ustach - Dzień spracowany ucieka - Anioł zapala gwiazdy - Oświetla drogę człowieka - - - Już niedługo rozpalę ogień - Na rozległej górskiej polanie - Już niedługo szałas zielony - Wśród dostojnych buków powstanie - - - - - - - - AlekOnufryKrzysiek Cz. - - - - - Sprawdzono i rozmieszczono akordy refrenu -- Alek - - chord positioning - - - - - - - diff --git a/songs/Lekcja_historii_klasycznej.xml b/songs/Lekcja_historii_klasycznej.xml deleted file mode 100644 index b9a978ce..00000000 --- a/songs/Lekcja_historii_klasycznej.xml +++ /dev/null @@ -1,60 +0,0 @@ - - - Galia - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Galia est omnis divisa in partes tres - Quorum unam incolunt Belgae aliam Aquitani - Tertiam qui ipsorum lingua Celtae nostra Gali apelantur - O ave Caesar, morituri te salutant! - - - Nad Europą twardy krok legionów grzmi - Nieunikniony wróży koniec republiki - Gniją wzgórza galijskie w pomieszanej krwi - A Juliusz Cezar pisze swoje pamiętniki - - - - Pozwól Cezarze gdy zdobędziemy cały świat - Gwałcić rabować sycić wszelkie pożądania - Proste prośby żołnierzy te same są od lat - A Juliusz Cezar milcząc zabaw nie zabrania - - - - Cywilizuje podbite narody nowy ład - Rosną krzyże przy drogach od Renu do Nilu - Skargą krzykiem i płaczem rozbrzmiewa cały świat - A Juliusz Cezar ćwiczy lapidarność stylu - - - - - - - - Onufry - - - Było prawie OK samo, nic nie trzeba było robić, poza jedną zmianą (skasowałem wstawkę instrumentalną i wrzuciłem ją po tekście w ostatniej linijce każdej zwrotki i refrenu, tak się chyba lepiej czyta do gry) - - - - - - - chord positioning - - - - - Krzyk - Poezja śpiewana - diff --git a/songs/Lemkowyna.xml b/songs/Lemkowyna.xml deleted file mode 100644 index 26c7c94f..00000000 --- a/songs/Lemkowyna.xml +++ /dev/null @@ -1,79 +0,0 @@ - - - - Krzysztof Jurkiewicz - - Krzysztof Jurkiewicz - Słodki Całus od Buby - - - - - Dusza moja kamienna - I serce z kamienia - I oczy zmrożone - Granitami szczytów - Zimne echo ulicy - Odbija kroki - I kolana chłodzi posadzka kościoła - - - I cóż mi powiesz - Panienko przeczysta jarzębino - Ikono leśna - Przydrożna leszczyno - Czegóż mnie nauczysz - Pod drewnianym dachem - Płomykiem lampki drżącym - Bukowym zapachem - - - onie moje stalowe - I nerwy ze stali - Zimna porcelana - Błyszczący widelec - Nawet krzyż na ścianę - Wykrojony z blachy - I żelaznym gwoździem - Przybity do muru - - - - Nigdy nie zrozumiem - Waszych ciepłych dłoni - I drewnianych łyżek - Nasiąkniętych zupą - Twarz przytulam do belek - Lecz ukłon do progu - I wracam do siebie - Żelazną koleją - - - I cóż mi powiesz - Panienko przeczysta jarzębino - Ikono leśna - - Przydrożna leszczyno - Czegóż mnie nauczysz - Pod drewnianym dachem - Płomykiem lampki drżącym - Bukowym zapachem - - - - - - - - - - - chord positioning - - - Onufry - - Rozmieszczenie akordów jest tak, jak ja gram. Wydaje mi się, że oryginał jest inny szczególnie w linijkach "ikono leśna przydrożna leszczyno", pewnie też w kilku innych miejscach. -Tekst ciut (w dwóch miejscach) odbiega od standardu drużyny, pisany wg strony wykonawców. - - diff --git a/songs/Let_it_be.xml b/songs/Let_it_be.xml deleted file mode 100644 index e14bdd6a..00000000 --- a/songs/Let_it_be.xml +++ /dev/null @@ -1,36 +0,0 @@ - - - The Beatles - - - When I find myself in times of trouble, Mother Mary comes to me - Speaking words of wisdom, let it be - - - And in my hour of darkness, She is standing right in front - Speaking words of wisdom, Let it - - - Let it be, let it be, let it be, let it be - Whisper words of wisdom, let it be - - - And when the broken hearted people, Living in the world - - - There will be an answer, let it - But though they may be parted, There is still a chance that they may see - There will be an answer, let it - | There will be an answer, let it - | Let it be, let it be, let it be, let it - | Whisper words of wisdom, let it - Let it be, let it be, let it be, let it - Whisper words of wisdom, let it - And when the night is cloudy, - There is still a light that shines on - Shine on till tomorrow, let it - I wake up to the sound of music, Mother Mary comes to - Speaking words of wisdom, let it - - - diff --git a/songs/Majster_bieda.xml b/songs/Majster_bieda.xml deleted file mode 100644 index 3c8f198e..00000000 --- a/songs/Majster_bieda.xml +++ /dev/null @@ -1,73 +0,0 @@ - - - Wolna Grupa Bukowina - - - - - - - Skąd przychodził kto go znał - Kto mu rękę podał kiedy - Nad rowem siadał wyjmował chleb - Serem przekładał i dzielił się z psem - Tyle wszystkiego co z sobą miał - Majster Bieda - - - Czapkę z głowy ściągał gdy - Wiatr gałęzie chylił drzewom - Śmiał się do słońca i śpiewał do gwiazd - Drogę bez końca co przed nim szła - Znał jak pięć palców jak szeląg zły - Majster Bieda - - - Nikt nie pytał skąd się wziął - Gdy do ognia się przysiadał - Wtulał się w krąg ciepła jak w kożuch - Znużony drogą wędrowiec boży - Zasypiał długo gapiąc się w noc - Majster Bieda - - - Aż nastąpił taki rok - Smutny rok tak widać trzeba - Nie przyszedł Bieda zieloną wiosną - Miejsce gdzie siadał zielskiem zarosło - I choć niejeden wytężał wzrok - Choć lato pustym gościńcem przeszło - Z rudymi liśćmi jesieni schedą - Wiatrem niesiony popłynął w przeszłość - Wiatrem niesiony popłynął w przeszłość - Wiatrem niesiony popłynął w przeszłość - Majster Bieda - - - - - - Onufry - - - - - - - - - chord positioning - - - - - - Wojciech Bellon - Wojciech Bellon - - - - Bukowina - Poezja śpiewana - - diff --git a/songs/Makatka_z_aniolem.xml b/songs/Makatka_z_aniolem.xml deleted file mode 100644 index bcc3f82f..00000000 --- a/songs/Makatka_z_aniolem.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - Adam Ziemianin - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Na twarzy twej rumieńce - Jakbyś był uduchowiony - Przez gruźlicę płuc a dobroć twą nieziemską - Zamykasz na niebieski klucz - Zamykasz na niebieski klucz - - - Najczęściej można spotkać cię - Nad przepaścią lukrowaną - Gdy przez dziurawą kładkę - Przeprowadzasz swoje dzieci - - - Nocą może chciałbyś - Oderwać się od ściany - Ale jedno skrzydło gwóźdź ci przedziurawił - Więc zostajesz z nami - Na wieki wieków amen - - - - - - - - - Onufry - - - - - - - - - - - - - - diff --git a/songs/Marchewkowe_pole.xml b/songs/Marchewkowe_pole.xml deleted file mode 100644 index 39c531c0..00000000 --- a/songs/Marchewkowe_pole.xml +++ /dev/null @@ -1,51 +0,0 @@ - - - Lady Pank - - - Marchewkowe pole rośnie wokół mnie - W marchewkowym - Polu jak warzywo tkwię - Głową na dół - Zakopany niczym struś - Chcesz mnie spotkać - Głowę obok w ziemię włóż - - - Wszystko się może zdarzyć - - - - - - - Marchewkowe - O ogrodzie miewam sny - W marchewkowym - Stanie jest najlepiej mi - Rosnę sobie - Dołem głowa górą nać - Kto mi powie - Co się jeszcze może stać - - - - - - - - - - - - - - - - - - - - - - diff --git a/songs/Marinette.xml b/songs/Marinette.xml deleted file mode 100644 index ff8a1c16..00000000 --- a/songs/Marinette.xml +++ /dev/null @@ -1,108 +0,0 @@ - - - - Georges Brassens - - - - - - - - Ujrzałem po raz pierwszy ją - Gdzieś w tłumie na ulicy - I pierwszym już spojrzeniem - Do swych stóp rzuciła mnie - - - Zdumiony tylko gębę głupio - Rozdziawiłem - Wybałuszyłem durne ślepia swe - - - - - - - - - - - - - - - Poszedłem potem do niej - By zaśpiewać jej piosenkę - Lecz powiedziano mi - Że w filcharmonii właśnie jest - - - Z gitarą w rękach gębę głupio - Rozdziawiłem - Wybałuszyłem durne ślepia swe - - - Gdy w któreś popołudnie - Słój z musztardą jej przyniosłem - Ma miła chwilę przedtem - Już raczyła skończyć jeść - - - Na słój gapiąc się gębę tylko - Rozdziawiłem - Wybałuszyłem durne ślepia swe - - - Gdy w dniu urodzin rower - Jej w prezencie chciałem oddać - Jej kochający tatuś - Właśnie auto sprawił jej - - - Więc na rowerze siedząc gębę - Rozdziawiłem - Wybałuszyłem durne ślepia swe - - - A kiedy się z mą miłą - Pewnej nocy umówiłem - Po ciemku z jakimś typem strasznym - Pomyliła mnie - - - Na ich umizgi patrząc gębę - Rozdziawiłem - Wybałuszyłem durne ślepia swe - - - Następnym razem nóż zabrałem - By z nią wreszczie skończyć - Lecz powiedziano mi - Że śmierć przerwała życie jej - - - Więc z majchrem w garści gębę głupio - Rozdziawiłem - Wybałuszyłem durne ślepia swe - - - Nieotulony w żalu więc - Poszedłem na jej pogrzeb - Lecz ją cudownym trafem - Odratować dało się - - - Z żałobnym wieńcem w dłoniach gębę - Rozdziawiłem - Wybałuszyłem durne ślepia swe - - - - - - - - - - diff --git a/songs/Mazurscy_kolumbowie.xml b/songs/Mazurscy_kolumbowie.xml deleted file mode 100644 index 73670b9f..00000000 --- a/songs/Mazurscy_kolumbowie.xml +++ /dev/null @@ -1,59 +0,0 @@ - - - Szanty - - - 1. GdzieP: daleko Ameryka, - Z ortodrom+- loksodroma, - Na odkrycie swoje czeka - GdzieP: za morzem przyczajona. - - - A my, hej! Pochwyćmy wiatru powiew, - Niech nam zawsze sprzyja niebo. - My, Mazurscy Kolumbowie, - Odkrywamy Węgorzewo. - - - 2. Na wyprawę swoich marzeń - Wyruszyli z rann+- bryz+-, - Nieugięci wprost żeglarze, - Z lękiem gnali za horyzont. - - - A my, hej! Pochwyćmy wiatru powiew, - By w nieznane miejsca płyn+-ć. - My, Mazurscy Kolumbowie, - Odkrywamy dzisiaj Sztynort. - - - 3. Na wyprawie długiej przyszło - Znosić bunty i zw+-tpienia, - Aż ktoP: w końcu z masztu krzykn+-ł - To magiczne słowo: "Ziemia!" - - - A my, hej! Pochwyćmy wiatru powiew, - Obce l+-dy nie s+- blisko. - My, Mazurscy Kolumbowie, - Odkrywamy dziP: Giżycko. - - - 4. Powrócili cali w glorii, - Wieszcze mieli o czym pisać, - No i przeszli do historii, - Bo przywieĽli syfilisa. - - - A my, hej! Pochwyćmy wiatru powiew, - Fale, sztormy to nie bajki. - My, Mazurscy Kolumbowie, - Odkrywamy Mikołajki. - - - 5. Za Kolumbem morskie mile, - Za nim rejs co wart był życia, - JakichP: Mazur do odkrycia, do odkrycia, do odkrycia... | a G a - - - diff --git a/songs/Medrcy_swiata.xml b/songs/Medrcy_swiata.xml deleted file mode 100644 index b856eb8e..00000000 --- a/songs/Medrcy_swiata.xml +++ /dev/null @@ -1,90 +0,0 @@ - - - - - Tonacja na mój głos - pierwszy dźwięk to E - - - - - - - Mędrcy świata monarchowie - Gdzie spiesznie dążycie - Powiedzcież nam trzej królowie - Chcecie widzieć dziecię - - - - - Ono w żłobie nie ma tronu - - I berła nie dzierży - - A proroctwo jego zgonu - Już się w świecie szerzy - - - - Mędrcy świata, złość okrutna - Dziecię prześladuje - Wieść okropna wieść to smutna - Herod spisek knuje - - - - Nic monarchów nie odstrasza - Do Betlejem spieszą - Gwiazda zbawcę im ogłasza - Nadzieją się cieszą - - - - Przed Maryją stoją społem - Niosą Panu dary - Przed Jezusem biją czołem - Składają ofiary - - - - Trzykroć szczęśliwi królowie - Któż wam nie zazdrości - Cóż my damy, kto nam powie - Pałając z miłości - - - - Tak jak każą nam kapłani - Damy dar troisty - Modły pracę niosąc w dani - - I żar serca czysty - - - - To kadzidło mirrę złoto - Niesiem Jezu szczerze - Co dajemy Ci z ochotą - - Od nas przyjm w ofierze - - - - - - - - Onufry - - - - - - - chord positioning - - - - - Kolęda - diff --git a/songs/Miasto.xml b/songs/Miasto.xml deleted file mode 100644 index 3d590de7..00000000 --- a/songs/Miasto.xml +++ /dev/null @@ -1,86 +0,0 @@ - - - - Krzysztof Jurkiewicz - - Krzysztof Jurkiewicz - Słodki Całus od Buby - - - - - - - - Ciemną nocą po schodach uliczek - Po gorących Mostu kamieniach - Pełen piwa łeb niosę w chmurach - I gitarę i pustkę w kieszeniach - - - - Żegnam się z Miastem - Które sto się moje - Jego wieże jego drogi - Kroki moje - Żegnam się z Miastem - Jego Mostem gdzie wieczorem - Spadały gwiazdy monet - Za muzykę - - - - - - Nazbierałem po całym Mieście - Sprawy ważne i te nic nie warte - Ot w podeszwach dziury na wylot - Bicie dzwonów, bramy otwarte - - - - - - - - Gwiazdy w rzece tu się zaczyna - I tu kończy opowieść moja - Chciałbym dzisiaj jak wtedy wieczorem - Siedzieć z Tobą na Moście Karola - - - - - - - - - - - - - - - - Jeszcze raz na żywo znowu we Wrocławiu - - - - - - - - chord positioning - - - Onufry - - Krzysiek Cz. - - - - - - Wielkie litery przy Most i Miasto (a także przy Tobie) pochodzą z www.scob.art.pl, nie ruszać mi ich. - - diff --git a/songs/Miedzy_nami_tyle_sniegu.xml b/songs/Miedzy_nami_tyle_sniegu.xml deleted file mode 100644 index bb52ad37..00000000 --- a/songs/Miedzy_nami_tyle_sniegu.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - - Adam Ziemianin - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Ślady Twoje zasypało - W śniegu całkiem się zgubiły - Szukać trudno --- wszędzie biało - Czekać --- też nad moje siły - Gdzie Cię poniosło na tych saniach? - Co Ci się stało w środku zimy? - A jeszcze latem byłaś ze mną - Czy w twoje życie wszedł ktoś inny? - - - Między nami tyle śniegu - Między nami tyle lodu - Czy trafimy znów na siebie - W naszych oknach szyby chłodu - Może wiosna Cię odmieni - Może lato da zapomnieć - Czekam tylko do jesieni - Więc przypomnij sobie o mnie - - - Mam po Tobie listów kilka - I krzyżówkę bez dwóch haseł - Pięć biletów tramwajowych - Pewnie dzisiaj też nie zasnę - Bo wciąż w myślach biję się ze sobą - Gdybyś dziś znów stanęła na progu - Ze śniegu pewnie bym Cię otrzepał - I dziękował sam nie wiem komu - - - - - - - - - - - chord positioning - - - Kuba - - - - - - - - diff --git a/songs/Mimochodem.xml b/songs/Mimochodem.xml deleted file mode 100644 index c18f330f..00000000 --- a/songs/Mimochodem.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - - - - - - - - - - - - diff --git a/songs/Modlitwa_wedrownego_grajka.xml b/songs/Modlitwa_wedrownego_grajka.xml deleted file mode 100644 index b2671e26..00000000 --- a/songs/Modlitwa_wedrownego_grajka.xml +++ /dev/null @@ -1,69 +0,0 @@ - - - - Jan Kasprowicz - Tekst oryginalny Kasprowicza odbiega od powyższego (w szczególności ma ciut więcej zwrotek i w nieco innej kolejności) - Andrzej Mróz - Seta - - - - - Przy małej wiejskiej kapliczce - Stojącej wedle drogi - Ukląkł rzępoląc na skrzypkach - Wędrowny grajek ubogi - Od czasu do czasu grający - Bezzębne otwierał wargi - To przekomarzał się z Bogiem - To znowu się korzył bez skargi - - - - Hej Panie Boże coś wielkim - Gazdą nad gazdami - Po coś mi dał taką skrzypkę - Co jeno tumani i mami - - - - Spraw to ażebym na zawsze - Umiał dziękować ci Panie - Że sobie rzępolę jak mogę - Że daję ci na co mnie stanie - A jeszcze bardziej chroń mnie - I od najmniejszej zawiści - Że są na świecie grajkowie - Pełni szumniejszych myśli - - - - I niechaj pomnę w mym życiu - Czy bliskim czy też dalekim - Żem człekiem jest przede wszystkim - I niczym więcej jak człekiem - Spraw w końcu by przy tej kapliczce - Obok tej wiejskiej drogi - Klękał i grywał na skrzypkach - Wędrowny grajek ubogi - - - - - - - - Onufry - - Słowa sprawdzane wg oryginalnego wiersza Kasprowicza. Usunąłem tylko rażące archaizmy - - - - chord positioning - - - - - - Poezja śpiewana - diff --git a/songs/Mona.xml b/songs/Mona.xml deleted file mode 100644 index 43d1c182..00000000 --- a/songs/Mona.xml +++ /dev/null @@ -1,92 +0,0 @@ - - - - Peggy Seger - Utwór opowiada o tragicznych losach załogi łodzi ratowniczej jednej z wielu jakie miały miejsce w historii żeglugi. W polskiej tradycji żeglarskiej kultywowano dawniej piękny zwyczaj śpiewania tej pięknej piosenki w pozycji stojącej. - tradycyjna - Packet - Anna Peszkowska - Lifeboat "Mona" - - - Był pięćdziesiąty dziewiąty rok, - Pamiętam ten grudniowy dzień, - Gdy ośmiu mężczyzn zabrał sztorm - Gdzieś w oceanu wieczny cień. - - - W grudniowy płaszcz okryta śmierć - Spod czarnych nieba zeszła chmur, - - Przy brzegu konał smukły bryg, - Na pomoc "Mona" poszła mu. - - Gdy przyszedł sygnał każdy z nich - Wpół dojedzonej strawy dzban - - Porzucił by na przystań biec, - By ruszyć w dziki z morzem tan. - - - Był pięćdziesiąty dziewiąty rok, - Pamiętam ten grudniowy dzień, - Gdy ośmiu mężczyzn zabrał sztorm - Gdzieś w oceanu wieczny cień. - - - A fale wściekle biły w brzeg, - Ryk morza tłumił chłopców krzyk, - "Mona" do brygu dzielnie szła, - Lecz brygu już nie widział nikt. - - Na brzegu kobiet niemy szloch, - W ramiona ich nie wrócą już, - - Gdy oceanu twarda pięść - Uderzy w ratowniczą łódź. - - - Był pięćdziesiąty dziewiąty rok, - Pamiętam ten grudniowy dzień, - Gdy ośmiu mężczyzn zabrał sztorm - Gdzieś w oceanu wieczny cień. - - - I tylko krwawy słońca dysk - Schyliło już po ciężkim dniu, - - Mrok okrył morze, niebo, brzeg, - Wiecznego całun ścieląc snu. - - Wiem dobrze, że synowie ich - Też w morze pójdą, kiedy znów - - Do oczu komuś zajrzy śmierć - I wezwie ratowniczą łódź. - - - Był pięćdziesiąty dziewiąty rok, - Pamiętam ten grudniowy dzień, - Gdy ośmiu mężczyzn zabrał sztorm - Gdzieś w oceanu wieczny cień. - - - - - - - - - - - - chord positioning - - - Kasia Kowalska - - - - - - diff --git a/songs/Muszelki.xml b/songs/Muszelki.xml deleted file mode 100644 index 1b3ab08a..00000000 --- a/songs/Muszelki.xml +++ /dev/null @@ -1,91 +0,0 @@ - - - Muszelki - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Zrywamy się przed świtem, nie myśląc o śniadaniu - Milczący, źli a przy tym zupełnie niewyspani. - Okrągły księżyc drwi z nas jak puste dno butelki; - - Lecz nam to nie pierwszyzna, idziemy po muszelki. - - - - Szlak wiedzie brzegiem morza na zachód - w kołdrze mroku, - Więc z tyłu pełznie zorza cierpliwie krok po kroku. - Na piasku rosną cienie jak rozciągnięte szelki - - - Idziemy niestrudzenie, idziemy po muszelki. - - - - Muszelki - rzecz nietrwała, po prawdzie nic nie warta, - Ale córeczka chciała - córeczka jest uparta. - Z fal słońce się wychyla jak złota pierś modelki; - - Umyka nam ta chwila - idziemy po muszelki. - - - - Palców u stóp maleństwa kaleczą się boleśnie. - Co robić? Na przekleństwa za późno - i za wcześnie - - Na wątpliwości antrakt, na cierpień bagatelki, - - Bo zgrzyta zębów mantra - idziemy po muszelki. - - - - Pierś słońca już w zenicie wspiera się nam na plecach - Potężnym żarem życia jak samo serce pieca. - Pot ciurka strumykami, dziurawią piach kropelki; - - Wyschnięci na pergamin idziemy po muszelki. - - - - W krąg wodorostów zieleń piętrzy się drwiącą warstwą - I cuchnie - a muszelek? Muszelek - na lekarstwo! - Nie w naszej widać mocy odnaleźć skarb tak wielki! - - Na skórze, w chłodzie nocy pęcznieją nam bąbelki. - - - - Lecz córcia łapką gładką pieczeń skwierczącą klepie: - - Nie przejmuj się tak, Tatku! Jutro ci pójdzie lepiej! - Los żaden nas nie zmoże, choć przeszkód pełen wszelkich! - - Chwała Ci dobry Boże za drogę po muszelki! - - - - - - - - - - - - - - - - Poezja śpiewana - - - - - Onufry - - - - - - diff --git a/songs/Na_potoczku-m_prala.xml b/songs/Na_potoczku-m_prala.xml deleted file mode 100644 index c22decda..00000000 --- a/songs/Na_potoczku-m_prala.xml +++ /dev/null @@ -1,70 +0,0 @@ - - - - - - - - - - - - Na potoczku-m prała, - Na werboczku-m kłała, - Pomoży mi, Pan’e Boże, - Szczo-m sobi dumała. - - - Jam sobi dumała - Chłopcia mołodoho, - A mene wydali - Za dida staroho. - - - Jak mn’e wydawali, - Tak mene kazali, - Abyś moja Doniu - Dida czestuwała. - - - Ja dida czesuju, - Czestuwaty muszu, - Pomoży mi, Pan’e Boże, - Wiźmi z dida duszu! - - - Wiźmi z dida duszu, - Taj powiś na chruszu, - Szczuby starym znaty, - Jak mołodu braty. - - - Zabrał Boh staroho, - Nie dał mołodoho. - Pomoży mi, Pan’e Boże, - Widdaj choć staroho! - - - - - - - - - - - - - - - Onufry - - - - - - - - - Piosenka łemkowska - diff --git a/songs/Nasza_klasa.xml b/songs/Nasza_klasa.xml deleted file mode 100644 index 47072235..00000000 --- a/songs/Nasza_klasa.xml +++ /dev/null @@ -1,88 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Co się stało z naszą klasą, pyta Adam w Tel Awiwie, - Ciężko sprostać takim czasom, ciężko w ogóle żyć uczciwie, - Co się stało z naszą klasą, Wojtek w Szwecji w porno--klubie - Pisze dobrze mi tu płacą za to, co i tak wszak lubię - Za to, co i tak wszak lubię - - - Kaśka z Piotrkiem są w Kanadzie, bo tam mają perspektywy, - Staszek w Stanach sobie radzi, Paweł do Paryża przywykł, - Gośka z Przemkiem ledwie przędą, w maju będzie trzeci bachor, - Próżno skarżą się urzędom, że też chcieliby na Zachód. - Że też chcieliby na Zachód. - - - Za to Magda jest w Madrycie i wychodzi za Hiszpana, - Maciek w grudniu stracił życie, gdy chodzili po mieszkaniach, - Janusz ten co zawiść budził, że go każda fala niesie - Jest chirurgiem, leczy ludzi, ale brat mu się powiesił. - Ale brat mu się powiesił. - - - Marek siedzi za odmowę, bo nie strzelał do Michała. - A ja piszę ich historię i to już jest klasa cała. - Jeszcze Filip fizyk w Moskwie dziś nagrody różne zbiera, - Jeździ kiedy chce do Polski, był przyjęty przez premiera. - Był przyjęty przez premiera. - - - Odnalazłem klasę całą na wygnaniu, w kraju, w grobie, - Ale coś się pozmieniało, każdy sobie żywot skrobie. - - Odnalazłem całą klasę, wyrośniętą i dojrzałą. - Rozdrapałem młodość naszą, lecz za bardzo nie bolało. - Lecz za bardzo nie bolo. - - - Już nie chłopcy lecz mężczyźni, już kobiety nie dziewczyny. - odość szybko się zabliźni, nie ma w tym niczyjej winy. - Wszyscy są odpowiedzialni, wszyscy mają w życiu cele, - Wszyscy w miarę są normalni, ale przecież to niewiele. - Ale przecież to niewiele. - - - Nie wiem sam co mi się marzy, jaka z gwiazd nade mną świeci, - Gdy wśród tych nieobcych twarzy szukam ciągle twarzy dzieci, - Czemu wciąż przez ramię zerkam, choć nie woła nikt: "kolego!" - Że ktoś ze mną zagra w berka, lub przynajmniej w chowanego... - Lub przynajmniej w chowanego... - - - asne pędy, własne liście zapuszczamy każdy sobie - I korzenie oczywiście, na wygnaniu,w kraju,w grobie - W dół, na boki, wzwyż ku słońcu, na stracenie, w prawo, w lewo. - Kto pamięta, że to w końcu jedno i to samo drzewo. - Jedno i to samo drzewo. - - - - - - - - Taboret - na bazie korekty MichałaKrzysiek Cz. - - - - Nie wiem jak z metrum i kapodastrem itp. - - - chord positioning - - - - - Poezja śpiewana - - diff --git a/songs/Nie_chod_tam.xml b/songs/Nie_chod_tam.xml deleted file mode 100644 index 5eda85f3..00000000 --- a/songs/Nie_chod_tam.xml +++ /dev/null @@ -1,73 +0,0 @@ - - - - Jerzy Reiser - Nie jestem na bank pewien, czy ta piosenka jest na "Jaworzynie", acz jest to jedyny album wydany przez Browar Żywiec, więc pewnie tak...<br>Nie jestem również pewien akordów - te dla mnie pasują, acz zdarza się sporo modyfikacji w różnych źródłach. - Jerzy Reiser - Browar Żywiec - - - - - Tak smutno patrzysz przez otwarte okno - Już się latarnie w mieście zapalają - I nic nie mówisz patrzysz tylko w dół - Nie chodź tam gdzie uliczny obcy tłum - - - - Usiądź tu obok mnie w fotelu - onecznikowe pestki gr - - A ja piosenkę Ci zanucę - Tę której słuchać chciałabyś - Nie strącaj z biurka kałamarza - Nie zrywaj z kalendarza dni - Jeśli nie lubisz tej piosenki - - Inną, ładniejszą zagram Ci - - - Zasnęło słońce gdzieś za antenami - Wyłażą koty z piwnic i śmietników - Zadzwonił tramwaj już ostatni kurs - Nie chodź tam puste place zniknął tłum - - - Kiedy przyjdziesz do mnie znów pojutrze - Popatrzysz smutno przez okno otwarte - Wsłuchasz się w miasta przedwieczorny szum - Powiem Ci -- nie chodź tam gdzie obcy tłum - - - Siądziesz tu obok mnie w fotelu - onecznikowe pestki gryźć - - A ja piosenkę Ci zanucę - Tę której słuchać chciałab - Może kałamarz strącisz z biurka - Lub z kalendarza zerwiesz dzi - Może już lubisz tę piosenkę - - A może nawet lubisz mnie - - - - - - - Onufry - - - Nie jestem również na bank pewien akordów, bo różne źródła podają różnie - - - - - - - - - Jaworzyna - Poezja śpiewana - diff --git a/songs/Nie_lubie_wampirow.xml b/songs/Nie_lubie_wampirow.xml deleted file mode 100644 index ae7d39fd..00000000 --- a/songs/Nie_lubie_wampirow.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - Kabaret ,,Potem'' - - Władysław Sikora - Kabaret ,,Potem'' - - - - - Mrok zapada, ciemna noc - Gwiazdy już na niebie świecą - Na dole lampy świecą - Więc światła jest co nieco - Więc czemu to plugastwo pęta się?! - - - Nie lubię wampirów jak jasna cholera - Jak spotkam, natrzaskam po ryju! - To straszna hołota, bo brzydsza od błota - A wszystkim się rzuca na szyję! - Nie lubię wampirów, bo ryje to brzydkie - A zęby ma gorsze od zwierzy - Te zęby wystają --- zahaczy w tramwaju - I robią się dziury w odzieży! - - - - Ajajajajaj, jak ja ich nie lubię! - Czemu to łazi takie głupie? - Gębę ma, jakby ukradł małpie - Zęby takie, że w plecy się podrapie - - - Nie lubię wampirów i innych straszydeł - Jak spotkam, łeb wyrwę z płucami! - Bo wyje to w nocy, nie wiadomo po co - I zgrzyta o marmur zębami! - Ja wstaję codziennie na siódmą do pracy - Z siekierą się w nocy nie pętam - Ja wyspać się muszę, lecz kiedyś się wkurzę - Wytłukę w niedziele i święta! - - - - - - - - - - - - - chord positioning - - - KubaOnufryAlek - - - - - Poprawiłem jedną literówkę i dodałem istotne linijki. -- nie-Alek - - - diff --git a/songs/Niebo_do_wynajecia.xml b/songs/Niebo_do_wynajecia.xml deleted file mode 100644 index 53bb40f0..00000000 --- a/songs/Niebo_do_wynajecia.xml +++ /dev/null @@ -1,60 +0,0 @@ - - - Robert Kasprzycki - - - - Na tablicy ogłoszeń pod hasłem lokale - Przeczytałem przedwczoraj ogłoszenie ciekawe. - Na tablicy ogłoszeń fioletowym flamastrem - Ktoś nabazgrał słów kilka, dziwna była ich treść: - - - - - - - Tam, gdzie spokój jest święty, no, bo święci są pańscy, - Szklanką ciepłej herbaty poczęstuje cię pan. - - - Pomyślałem to świetnie - takie niebo na ziemi, - Grzechów nikt nie przelicza nikt nie szpera w szufladzie. - Pomyślałem: to świetnie i spojrzałem na adres, - Lecz deszcz rozmył litery i już nie wiem gdzie jest... - - - - Gdy wróciłem do domu, gdzie się błękit z betonem splata - W Babel wysoki sięgający do chmur, - Zaparzyłem herbatę w swym pokoju nad światem, myśląc: - Nic nie straciłem, pewnie tak jest i tam - - - - Niebo do wynajęcia, niebo z widokiem na raj. - Niebo do wynajęcia, niebo z widokiem - Niebo do wynajęcia, niebo z widokiem na raj. - Niebo do wynajęcia, niebo... - Niebo do wynajęcia, niebo z widokiem na raj. - Niebo do wynajęcia, niebo... - - - - - - - - - - - - - - - - - - - - diff --git a/songs/Niepokoj.xml b/songs/Niepokoj.xml deleted file mode 100644 index 05f203bd..00000000 --- a/songs/Niepokoj.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - - Józef Baran - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Mosty które pod osłoną nocy - Przerzuciliśmy do siebie - Porywa świt - Trwa potop jutrzenki po obu brzegach - Bezradnie biegamy - Ręce do siebie wyciągamy - - - Twoje oczy - Rozwarte szeroko rozstaniem - Oddalają się i serce za nimi podąża - Oglądając się raz po raz za siebie - Oglądając się za siebie - - - Przez niebo przebiega dreszcz niepokoju - Rozstępuje się świat - Na dwie połowy - I coraz mniejsza staje się - Włosów chmura - Kasztanowa - - - - I twoja ręka wyrwana z mojej - Do stacji - Zbliżają s - Robotnicy dnia powszedniego - O twarzach przeraźliwie - Trzeźwych - - - - - - - - Kasia KowalskaOnufryKrzysiek Cz. - - - - - Drobne poprawki, dodałem kasetę. - - - chord positioning - - - - - Makatki - Poezja śpiewana - diff --git a/songs/Nierozdziobai.xml b/songs/Nierozdziobai.xml deleted file mode 100644 index 657c955a..00000000 --- a/songs/Nierozdziobai.xml +++ /dev/null @@ -1,63 +0,0 @@ - - - - Edward Stachura - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Nie rozdziobią nas kruki - Ni wrony, ani nic! - Nie rozszarpią na sztuki - Poezji wściekłe kły! - - - Ruszaj się Bruno, idziemy na piwo; - Niechybnie brakuje tam nas! - Od stania w miejscu niejeden już zginął, - Niejeden zginął już kwiat! - - - Nie omami nas forsa - Ni sławy pusty dźwięk! - Inną ścigamy postać: - Realnej zjawy tren! - - - - Nie zdechniemy tak szybko, - Jak sobie roi śmierć! - Ziemia dla nas za płytka, - Fruniemy w góry gdzieś! - - - - - - - - - - - - - - - - Dolina w długich cieniach - Poezja śpiewana - - - - - - Onufry - - - - - - diff --git a/songs/Noc_albo_oczekiwanie_na_sniadanie.xml b/songs/Noc_albo_oczekiwanie_na_sniadanie.xml deleted file mode 100644 index f1424d93..00000000 --- a/songs/Noc_albo_oczekiwanie_na_sniadanie.xml +++ /dev/null @@ -1,57 +0,0 @@ - - - Edward Stachura - Krzysztof Myszkowski - Pod Wielkim Dachem Nieba - Stare Dobre Małżeństwo - - - Ty się pochyl róża-bóg - ty się do mnie pochyl i - i na ucho jak kolczyk róża-bóg - aaa... - - - Moje ucho ma dzban - z niego pić tylko tobie nikomu - a twój kolczyk jak ucho na dzban - aaa... - - - O modlitwy mnie wabisz - O, wabisz. Że błysk noża - w najpiękniejsze serce kozy - aaa... - - - Z tobą czystość zachować to gorzej - każdy lew by się spalił już dawno - las popiołu z jego grzywy nic więcej - aaa... - - - Ty się pochyl róża-bóg - Ty się do mnie pochyl we mnie - Wytryśniemy jak słońce wytryśnie - aaa... - aaa... - - - - - - - Krzysiek Cz. - - - - - - - - - - - - - diff --git a/songs/Noc_w_bacowce.xml b/songs/Noc_w_bacowce.xml deleted file mode 100644 index cae18eec..00000000 --- a/songs/Noc_w_bacowce.xml +++ /dev/null @@ -1,57 +0,0 @@ - - - - - - Porwały nas deszczem, - Przegoniły wiatrem - I zdały na siebie. - W przygodnym nam domu - Miejsca nie zagrzały, - W tym górskim niby niebie. - - - - I dziury w tym niebie - Wiatrem łatane, - W bacówce tylko my sami. - I nic nie mówimy - Tylko dotyk ręki - By nie psuć chwil, - Co przed nami - - - - A mrok - sprzymierzeniec - Przygarnął mi Ciebie, - Ciepło - Twoje ręce. - (Ech) stara bacówko - Niebo w nas się rodzi, - Przyjaźń czy coś więcej. - - - - - - - - - Onufry - - - - chord positioning - - - - - - - - - - - - - - diff --git a/songs/Nocna_piosenka_o_miescie.xml b/songs/Nocna_piosenka_o_miescie.xml deleted file mode 100644 index f3884bf3..00000000 --- a/songs/Nocna_piosenka_o_miescie.xml +++ /dev/null @@ -1,87 +0,0 @@ - - - - Wojciech Bellon - Ostatnią zwrotkę śpiewa się w kanonie, do wspólnego wyhamowania na 'W mieście jak ryby tramwaje' - Bukowina - Wojciech Bellon - Wolna Grupa Bukowina - - - - - - W mieście jak ryby tramwaje - A miasto jak studnia bez dna - A niebo jak żuraw, a niebo jak żuraw - Schyla się nocą i świtem powstaje - Nad rybną studnią bez dna - - - - Zaułków lipcem sparzonych - Wyciszyć nie może zmrok - Zasiedli na ławkach, zasiedli na ławkach - Ludzie co twarze dniem umęczone - Pod lipiec kładą i zmrok, pod lipiec kładą i zmrok - - - - Nie śpię, bo spotkać chcę w mieście - Tę ciszę, co gęsta jak noc - Rozmawiać z krokami, swoimi krokami - I oto idę nocy na przeciw - Bo wokół cisza i noc - - - - Czekam, aż neon przytłumi - Rozmyta latarnia dnia - Odnajdą się cienie, odnajdą się cienie - I ludźmi ulice zatłumią - Czekam na przyjście dnia, czekam na przyjście dnia - - - W mieście jak ryby tramwaje - A miasto jak studnia bez dna - A niebo jak żuraw, a niebo jak żuraw - Schyla się nocą i świtem powstaje - Nad rybną studnią bez dna - - - - W mieście jak ryby tramwaje - A miasto jak studnia bez dna - A niebo jak żuraw, a niebo jak żuraw - Schyla się nocą i świtem powstaje - Nad rybną studnią bez dna - - - - - - - - Onufry - - - - - - - - - - - - - - - - chord positioning - - - - - Poezja śpiewana - diff --git a/songs/Nocny_kawboy.xml b/songs/Nocny_kawboy.xml deleted file mode 100644 index 90da1259..00000000 --- a/songs/Nocny_kawboy.xml +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - Aktorzy łódzkiej szkoły filmowej - - - - - wersja polska - - - - Kiedy kawboy nie ma konia - Kiedy kawboy nie ma konia - Nie wie po co żyje, po co je - - - - Jedź do miasta wielkiego - Do wielkiego miasta jedź - Tam kawboyom bez konia łatwiej żyć - - - - Zapytają Cię ludzie -- gdzie jest twój koń - Powiedz by się nie przypierdalali doń - - - - wersja angielska - - - - When the cowboy has no horses - When the cowboy has no horses - He doesn't know to be or not to be - - - - Let's go to big city - To big city let's go - There without horses easier to live - - - And the people'll ask you -- where is your horse - And you answer -- kiss my ass - - - wersja łódzka - - - Kiedy aktor nie ma rola - Kiedy aktor nie ma rola - Nie wie po co żyje, po co je - - - Kiedy aktor nie ma roli - Lub gdy rolę swą spierdoli - Nie wie po co żyje po co je - - - Jedź do miasta małego - Do małego miasta jedź - Tam aktorom bez rola łatwiej żyć - - - - Zapytają koledzy gdzie sukces twój - Sukces mój biznes mój i... - - - - - - - - - - - diff --git a/songs/Nuta_z_Ponidzia.xml b/songs/Nuta_z_Ponidzia.xml deleted file mode 100644 index ed74301d..00000000 --- a/songs/Nuta_z_Ponidzia.xml +++ /dev/null @@ -1,58 +0,0 @@ - - - Wolna Grupa Bukowina - - - Polami, polami, po miedzach, po miedzach - Po błocku skisłym w mgłę i wiatr - Nie za szybko, kroki drobiąc - Idzie wiosna, idzie nam - Idzie wiosna, idzie - - - Rozłożyła wiosna spódnicę zieloną - Przykryła błota bury łan - Pachnie ziemia ciałem młodym - Póki wiosna, póki trwa - Póki wiosna, póki trwa - - - Rozpuściła wiosna warkocze kwieciste - Zbarwniały łąki niczym kram - Będzie odpust pod Wiślicą - - Póki wiosna, póki trwa - Póki wiosna, póki trwa - - - - Ponidzie wiosenne, Ponidzie leniwe - Pręży się jak do słońca kot, - Rozciągnięte po tych polach - Lichych lasach, pstrych łozinach - Skałkach słońcem rozognionych - Nidą w łąkach roziskrzoną - Na Ponidziu wiosna trwa - Na Ponidziu wiosna trwa - Na Ponidziu - - - - - - - - - - - - - - - - - - - - - diff --git a/songs/Ocean.xml b/songs/Ocean.xml deleted file mode 100644 index 245d021a..00000000 --- a/songs/Ocean.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - - Mirosław Hrynkiewicz - - Mirosław Hrynkiewicz - Wolna Grupa Bukowina - - - - - Oceanie sinowłosy białe statki ku mnie wyślij - Dwa kamyki moje myśli na otwartych dłoniach niosę - Daj mi miejsce w głębi morza szczyptę lądu, szczyptę skały - Tu zbuduję zamek biały, tutaj gniazdo swe założę - - - - - - Gdzieś daleko w stu stolicach żyją ludzie, biją w dzwony - Niezliczone bataliony przyczajone na granicach - Marszałkowie szklanoocy palą owce i dziewczęta - Kto o kwiatach dziś pamięta, szumią giełdy w głębi nocy - - - - - - W głębi morza zabłąkany nie chcę nic o ludziach słyszeć - Biały kolor, kolor ciszy, w moim zamku białe ściany - W moim zamku gdzieś w ogrodzie będę czytać wschodnie baśnie - Zanim słońce w morzu zgaśnie, żeby z morza powstać co dzień - - - - - - A gdy ludzie wypełnieni nienawiścią w jednej chwili - Zniszczą wszystko co stworzyli wielkim ogniem z wnętrza ziemi - Znikną lądy zniknie morze nie wie nikt co będzie potem - W białych światach ja z powrotem w łonie matki się ułożę - - - - - - - - - chord positioning - - - KubaKrzysiek Cz. - - - - - - - - - - diff --git a/songs/Ogien.xml b/songs/Ogien.xml deleted file mode 100644 index 6fe11037..00000000 --- a/songs/Ogien.xml +++ /dev/null @@ -1,50 +0,0 @@ - - - - - - Zwyczaj to stary jak świat - Ogień, ogień, ogień - Rozpalmy blisko nas - Ogień, ogień, ogień - - - Dla spóźnionego wędrowca, - Dla wszystkich spóźnionych w noc - Rozpalmy tu, rozpalmy tu - Ogień, ogień, ogień - - - Pierwsza gwiazdka już wzeszła, - Czas by ogień rozpalić - Lipy, sosny i buki - Chylą gałęzie ku nam - - - - Najpiękniejsze ogniska - Z trzaskiem sypią się skry - Wokół samych przyjaciół masz - Zaśpiewaj z nami i ty - - - - - - - - - - - - - - - - - - - - - - diff --git a/songs/Opadly_mgly_wstaje_nowy_dzien.xml b/songs/Opadly_mgly_wstaje_nowy_dzien.xml deleted file mode 100644 index 6ea5a9f2..00000000 --- a/songs/Opadly_mgly_wstaje_nowy_dzien.xml +++ /dev/null @@ -1,87 +0,0 @@ - - - - Edward Stachura - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Opadły mgły i miasto ze snu się budzi - Górą czmycha już noc - Ktoś tam cicho czeka by ktoś powrócił - Do gwiazd jest bliżej niż krok - Pies się włóczy popod murami bezdomny - Niesie się tęsknota czyjaś na świata cztery strony - - - - A Ziemia toczy toczy swój garb uroczy - Toczy toczy się los - - Ty co płaczesz ażeby śmiać mógł się ktoś - Już dość, już dość, już dość - Odpędź czarne myśli - Dość już twoich łez - Niech to wszystko przepadnie we mgle - - Bo nowy dzień wstaje - Bo nowy dzień wstaje - Nowy dzień - - Wstaje nowy dzień - - - Z dusznego snu już miasto się wynurza - Słońce wschodzi gdzieś tam - Tramwaj na przystanku zakwitł jak róża - Uchodzą cienie do bram - Ciągną swoje wózki dwukółki mleczarze - Nad dachami snują się sny podlotków pełne marzeń - - - - A Ziemia toczy toczy swój garb uroczy - Toczy toczy się los - - Ty co płaczesz ażeby śmiać mógł się ktoś - Już dość, już dość, już dość - Odpędź czarne myśli - Porzuć błędny wzrok - Niech to wszystko zabierze już noc - - Bo nowy dzień wstaje - Bo nowy dzień wstaje - Nowy dzień - - Wstaje nowy dzień - - - - - - - AlekKrzysiek Cz. - - - - Alek chyba sprawdzil, i nie zaznaczyl, ze sprawdzone -Onufry - - - - - - - - - chord positioning - - - - - - - diff --git a/songs/Pan_Kmicic.xml b/songs/Pan_Kmicic.xml deleted file mode 100644 index 9d53b1cc..00000000 --- a/songs/Pan_Kmicic.xml +++ /dev/null @@ -1,89 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Wilcze zęby, oczy siwe - Groźnie garść obuszkiem furczy - Gniew w zawody z wichru zrywem - Dzika radość, lot jaskółczy - Czyn to czyn zapadła klamka - Puścić kura po zaściankach - - - - Hej, kto szlachta za Kmicicem - Hajda na Wołmontowicze - - - - Przodkom kule między oczy - Krótką rozkosz dać sikorkom - Po łbie kto się napatoczy - Kijów sto chudopachołkom - Potem picie do obłędu - Studnia, śnieg -- my z tobą Jędruś - - - - Zdrada, krzyż, na krzyż przysięga - Tak krucyfiks cyrografem - I oddala się Oleńka - Żądze się wychłoszcze batem - Za to swoich siec czy obcych - Jedna sprawa -- za mną chłopcy - - - - Wreszcie lek na duszy blizny - Polska suknem Radziwiła - Wróg prywatny, wróg ojczyzny - Niespodzianka jakże miła - Los, sumienie, panny stratę - Wynagrodzi spór z magnatem - - - - Jasna Góra, czas pokuty - Trup, trup -- Kmicic strzela z łuku - Klasztor płaszczem mgieł zasnuty - W Szwedzkich armat strasznym huku - Jędrek się granatem bawi - Ksiądz Kordecki błogosławi - - - - Jest nagroda za cierpienie - Kto się śmieli, ten korzysta - Dawnych grzechów odpuszczenie - Król Jędrkowi skronie ściska - Masz Tatarów, w drogę ruszaj - Raduj Boga rzeźą w Prusach - - - - Krzyż, ojczyzna, Bóg, prywata - Warchoł w oczach zmienia skórę - Wierny jest jak topór kata - I podobną ma naturę - Więc za słuszną sprawność ręki - Będzie ręka i Oleńki - Łaska króla, dworek dzieci - Szlachcic co przykładem świeci - - - - - - - - - - - diff --git a/songs/Panna_kminkowa_(2).xml b/songs/Panna_kminkowa_(2).xml deleted file mode 100644 index c51bd7cb..00000000 --- a/songs/Panna_kminkowa_(2).xml +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - Obróciła się wiosna na pięcie - Wyminęła się z latem we drzwiach - Wpatrywałaś się w okno zawzięcie - Może wyjdzie kominarz na dach - Potem jechał gdzieś pociąg spóźniony - Ktoś trzy asy wyłożył na stół - A ty kwiaty wkładałaś w wazony - I słyszałaś z daleka stuk kół - A tymczasem rozgościł się lipiec - Na wesele zaprosił ze stu - Pasikonik pożyczył mu skrzypiec - I w tym graniu tak biegłaś bez tchu - - - Panno kminkowa, panno lipcowa - Twoje są łąki twoje skowronki wszystkich łąk - Idziesz polami w palcach łodyżkę masz - I gryziesz kminek czarny przecinek nasz - Panna kminkowa panna lipcowa - Śmiać się gotowa letnia królow kwietnych łąk - Idzie polami w palcach łodyżkę ma - I gryzie kminek czarny przecinek dnia - - - Noce śniły budziły się ranki - Koniczyny poczwórny był liść - Rwałaś groszek zielony przed gankiem - Kiedy przyszło polami nam iść - Trwało lato i trwała muzyka - Rumieniłaś się wiśnią z mych ust - Las na wzgórzu horyzont zamykał - A ty biegłaś ku niemu bez tchu - - - - A gdy lipiec się w drogę spakował - Oddał skrzypce i poszedł gdzieś w świat - Ty zostałaś mi panno kminkowa - I łodyżki rzucone na wiatr - Jesień deszczem twe łąki przemoczy - Zima śniegiem okryje na mróz - A gdy lipiec zaglądnie ci w oczy - Znowu będziesz tak biegła bez tchu - - - Panno kminkowa, panno lipcowa - Twoje są łąki twoje skowronki wszystkich łąk - Idziesz polami w palcach łodyżkę masz - I gryziesz kminek czarny przecinek nasz - Panna kminkowa panna lipcowa - Śmiać się gotowa letnia królow kwietnych łąk - Idzie polami w palcach łodyżkę ma - I gryzie kminek czarny przecinek dnia - - - - - - - - I gryzie kminek czarny przecinek dnia - - - - - - - - - - - - - - - - - - diff --git a/songs/Piechota_do_lata.xml b/songs/Piechota_do_lata.xml deleted file mode 100644 index 7e7f7a93..00000000 --- a/songs/Piechota_do_lata.xml +++ /dev/null @@ -1,68 +0,0 @@ - - - - - - - Bajm - - - - - Znów przyjdzie maj, a z majem bzy - I czekać mam na lepsze dni - Znów przyjdzie mi nosić przykrótkie sny - - - I do lata, do lata, do lata, piechotą będę szła - Ah, ah, ah, ah, yeah, yeah, yeah, uh, uh, uh - - - Znów kupisz mi coś na imieniny - Mmmm, ja to wiem i czuję, że - Znów przyjdzie mi nosić przykrótkie sny - - - I do lata, do lata, do lata, piechotą będę szła - Ah, ah, ah, ah, yeah, yeah, yeah, uh, uh, uh - - - Przykrótkie sny nie w porę - Zbyt lekko się ubiorę - Noc długa, świt w szronach - I wiosna spóźniona - I twoje słowa zimne, - Że nie ma drogi innej - Do lata, do lata, do lata tak dłuży się czas - Gdybyś tylko chciał! - - - To było by to lato j - I słońce i szaleństwo burz - Lecz dajesz mi tylko przykrótkie sny - - - Więc do lata, do lata, do lata, piechotą będę szła - Ah, ah, ah, ah, yeah, yeah, yeah, uh, uh, uh - - - - - - - - - - - - chord positioning - - - Kasia KowalskaKrzysiek Cz. - - - - - - - diff --git a/songs/Piesn_gruzinska.xml b/songs/Piesn_gruzinska.xml deleted file mode 100644 index 0b43143e..00000000 --- a/songs/Piesn_gruzinska.xml +++ /dev/null @@ -1,49 +0,0 @@ - - - Bułat Okudżawa - - - Spulchnię ziemię na zboczu i pestkę winogron w niej złożę, - A gdy winnym owocem gronowa obrodzi mi wić, - Zwołam wiernych przyjaciół i serce przed nimi otworzę… - Bo doprawdy — czyż warto inaczej na ziemi tej żyć? - Cóż, czym chata bogata! Darujcie, że progi za niskie, - Mówcie wprost, czy się godzi siąść przy mnie, ucztować i pić. - Pan Bóg grzechy wybaczy i winy odpuści mi wszystkie… - Bo doprawdy — czyż warto inaczej na ziemi tej żyć? - - - W czerni swej i czerwieni zaśpiewa mi znów moja Dali, - Runę w czerni i bieli do stóp jej, niech przędzie swą nić! - I o wszystkim zapomnę i umrę z miłości i żalu... - Bo doprawdy — czyż warto inaczej na ziemi tej żyć? - A gdy zmierzch się zakłębi i cienie po kątach się splotą, - Niech się cisną do oczu, niech wiecznie pozwolą mi śn - Płowy bawół i orzeł srebrzysty i pstrąg szczerozłoty… - Bo doprawdy — czyż warto inaczej na ziemi tej żyć? - - - - - - - Michał Korch - - - - - chord positioning - - Orginalna interpunkcja, mimo że się z nią nie zgadzam, mówi właśnie tak. - - - - Bułat Okudżawa - Bułat Okudżawa - - Gruzinskaja piesnia - Andrzej Mandalian - Dopóki nam Ziemia toczy się… (Poka Ziemla jeszczo wiertitsa…) - Poezja śpiewana - - diff --git a/songs/Piesn_na_wejscie.xml b/songs/Piesn_na_wejscie.xml deleted file mode 100644 index 15eae1e5..00000000 --- a/songs/Piesn_na_wejscie.xml +++ /dev/null @@ -1,46 +0,0 @@ - - - - Edward Stachura - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Chodź człowieku coś ci powiem - Chodźcie wszystkie stany - Kolorowi biali czarni - Chodźcie zwłaszcza wy ludkowie - Przez na oścież bramy - - - Dla wszystkich starczy miejsca - Pod wielkim dachem nieba - Rozsiądźcie się na drogach - Na łąkach, na rozłogach - Na polach, błoniach i wygonach - W blasku słońca, w cieniu chmur - Rozsiądźcie się na niżu - Rozsiądźcie się na wyżu - Rozsiądźcie się na płaskowyżu - W blasku słońca w cieniu chmur - - - Dla wszystkich starczy miejsca - Pod wielkim dachem nieba - - Na ziemi którą ja i ty też - Zamieniliśmy w morze łez - - - - - - - - - - - diff --git a/songs/Piesn_na_wyjscie.xml b/songs/Piesn_na_wyjscie.xml deleted file mode 100644 index 46a85951..00000000 --- a/songs/Piesn_na_wyjscie.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - - Edward Stachura - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - - Idź człowieku idź rozpowiedz - Idźcie wszystkie stany - Kolorowi biali czarni - Idźcie zwłaszcza wy ludkowie - Przez na oścież bramy - - - Dla wszystkich starczy miejsca - Pod wielkim dachem nieba - Rozejdźcie się po drogach - Po łąkach, po rozłogach - Po polach, błoniach i wygonach - W blasku słońca, w cieniu chmur - Rozejdźcie się po niżu - Rozejdźcie się po wyżu - Rozejdźcie się po płaskowyżu - W blasku słońca w cieniu chmur - - - Dla wszystkich starczy miejsca - Pod wielkim dachem nieba - - Na ziemi której ja i ty - Nie zamienimy w bagno krwi - - - - - - - - Alek - - - - - chord positioning - - - - - - Poezja śpiewana - diff --git a/songs/Piesn_o_snie.xml b/songs/Piesn_o_snie.xml deleted file mode 100644 index a37a87d5..00000000 --- a/songs/Piesn_o_snie.xml +++ /dev/null @@ -1,81 +0,0 @@ - - - - Jacek Kaczmarski - - Przemysław Gintrowski - - - - - - Z zimna drżąc przy domowym ognisku - Zasłuchani w głodowy kiszek marsz - Po ostatnim wypijmy kieliszku - Zanim świecy dotli się blask - Papierosa puśćmy dokoła - Przeczytajmy z zakazanych coś ksiąg - Bo nad ranem nikt przecież nie woła - Nikt nie wywoła nas stąd - - - Gdzie łajdak pokaja się szczerze - Gdzie złodziej odda swój łup - Gdzie ktoś zanim powie nie wierzę - Świętemu upadnie do stóp - Gdzie krzywdy nie będą pomszczone - Lecz wynagrodzone do cna - Gdzie dziecko bezpiecznie zrodzone - Siądzie obok jagnięcia i lwa - - - Otuleni w swoją obecność - Czując w ustach wspomnienia smak - Nie dbajmy o świadomą konieczność - Co w twarze sypie nam mak - Noc jest jedna i świt jest po nocy - Pod zamkniętą powieką trwa blask - I nikomu nie zabraknie pomocy - Dopóki nie zabraknie mu nas - - - Gdzie zdrada to wtręt z obcej mowy - Podobnie jak przemoc i gwałt - Gdzie myśli nie chowa się w słowa - Lecz jawny jej daje się kształt - Gdzie rozpacz i ból są kojone - I żadna nie kala się łza - Gdzie dziecko bezpiecznie zrodzone - Siądzie obok jagnięcia i lwa - - - Ktoś powie to senne marzenie - Nie ma nic prawdziwszego od snu - Więc w obecność swą otuleni - Wspólnie wyśnimy go tu - Ktoś powie to senne marzenie - Nie ma nic prawdziwszego od snu - Więc w obecność swą otuleni - Wspólnie wyśnimy go tu - - - - - - - - - Onufry - - - - - - - chords - - - - - - diff --git a/songs/Piesn_pozegnalna.xml b/songs/Piesn_pozegnalna.xml deleted file mode 100644 index 6ded59ce..00000000 --- a/songs/Piesn_pozegnalna.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - - - - - - - - - Ogniska już dogasa blask - Braterski splećmy krąg - W wieczornej ciszy, w świetle gwiazd - Ostatni uścisk rąk - - - Kto raz przyjaźni poznał moc - Nie będzie trwonić słów - Przy innym ogniu w inną noc - Do zobaczenia znów - - - Nie zgaśnie tej przyjaźni żar - Co połączyła nas - Nie pozwolimy by ją starł - Nieubłagany czas - - - - - - - - - - - diff --git a/songs/Pijak.xml b/songs/Pijak.xml deleted file mode 100644 index c2d66de4..00000000 --- a/songs/Pijak.xml +++ /dev/null @@ -1,125 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Napełnij szklankę mi - Ostatni nalej raz - Napełnij szklankę mi - I pójdę bo już czas - Nie płaczę pozwól p - Bo wstyd mi sobą b - - Napełnij szklankę mi - Napełnij szklankę mi - - - - Pijemy zdrowie twe - Bo łatwo mówić że - oży wszystko s - Że już nie będzie źle - Tym lepiej jeśli te - Proroctwa kłamstwem są - - Upiję wkrótce się - I zgubię ufność swą - - - - Pijemy zdrowie tych - Co dziś weseli są - Przyjaciół krewnych złych - Co z mego życia drwią - Tym lepiej jeśli mnie - Rozdrażnią drwiną swą - - Upiję wkrótce się - I zgubię nienawiść swą - - - - Napełnij szklankę mi - Ostatni nalej raz - Napełnij szklankę mi - I pójdę bo już czas - Tym lepiej jeśli mnie - Rozdrażni wino twe - - Upiję wkrótce się - Upiję wkrótce się - - - - Za moje zdrowie pij - Pijemy z winy mnie - I jeśli chcesz to bij - A jeśli nie to nie - Tym lepiej jeśli mnie - Cios dosięgnie twój - - Upiję wkrótce się - I żal zgubię mój - - - - Za te dziewczyny pij - Co będą kochać mnie - Za te dziewczyny pij - Co mówią o mnie źle - Tym lepiej jeśli te - Dziewczyny zimne są - - Upiję wkrótce się - I zgubię miłość swą - - - - Więc pijmy póki czas - Aż zwalę się pod stół - Bym nie czuł to com cz - Bym zgubił to com cz - Więc pijmy póki źle - Więc pijmy żeby pić - - Upiję wkrótce s - Nadziei zerwę n - - - - Napełnij szklankę mi - Ostatni nalej raz - Napełnij szklankę mi - I pójdę bo już czas - Nie płaczę zostaw mnie - Rozjaśnia wszystko się - - Napełnij szklankę mi - Napełnij szklankę mi - - - - - - - - Alek za Józkiem - - - - - - chord positioning - - - - - - - diff --git a/songs/Piosenka_dla_Wojtka_Bellona.xml b/songs/Piosenka_dla_Wojtka_Bellona.xml deleted file mode 100644 index 483456c5..00000000 --- a/songs/Piosenka_dla_Wojtka_Bellona.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - - Aleksandra Kiełb - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - Powiedz dokąd znów wędrujesz - Czy daleko jest twój sad - Hen w krainy buczynowe - Ze mną tam układa pieśni wiatr - Hen w krainy buczynowe - Ze mną tam nikogo tylko wiatr - - - Zmierzchy grają a przestrzenie - asny im podają dźwięk - Takie śpiewy z nimi lub milczenie - W którym znika każdy dawny lęk - W takich śpiewach i milczeniu - W szumie świętych buków zginął lęk - - - Zaszumiały cię powietrza - - I ruszyłeś sam na szlak - Ten ostatni ten najlepszy - Przyszedł czas Pan dał ci znak - - Ten ostatni ten najlepszy - Przyszedł czas Pan dał ci znak - - - - - - - - AlekOnufry - - - - - - - - - - - chord positioning - - - - - Makatki - Poezja śpiewana - diff --git a/songs/Piosenka_dla_corki.xml b/songs/Piosenka_dla_corki.xml deleted file mode 100644 index 51cd1315..00000000 --- a/songs/Piosenka_dla_corki.xml +++ /dev/null @@ -1,87 +0,0 @@ - - - - Krzysztof Kasprzyk - - Maciej Pietrzyk - Maciej Pietrzyk - - - - - -Nie mam teraz czasu dla Ciebie -nie widziała Cię długo matka -jeszcze trochę poczekaj dorośnij -opowiemy Ci o tych wypadkach - - - -O tych dniach pełnych nadziei -pełnych rozmów i sporów gorących -o tych nocach kiepsko przespanych -naszych sercach mocno bijących - - - -O tych ludziach którzy poczuli -że są wreszcie teraz u siebie -solidarnie walczą o dzisiaj -i o jutro także dla Ciebie - - - -Więc się nie smuć i czekaj cierpliwie -aż powrócisz w nasze objęcia -w naszym domu który nie istniał -bo w nim brak było... -prawdziwego szczęścia. - - - - - a-min e-min -e|-------0------|-------0------|-------0------|-------0------| -H|-----1---1----|-----1---1----|-----0---0----|-----0---0----| -G|---2-------2--|---2-------2--|---0-------0--|---0-------0--| x2 -D|--------------|--------------|--------------|--------------| -A|--0-----------|--0-----------|--------------|--2-----------| -E|--------------|--------------|--0-----------|--------------| - - C-maj -e|-------0------|-------0------|-------0------|-------0------| -H|-----1---1----|-----1---1----|-----1---1----|-----1---1----| -G|---0-------0--|---0-------0--|---0-------0--|---0-------0--| -D|--------------|--------------|--------------|--------------| -A|--3-----------|--3-----------|--3-----------|--3-----------| -E|--------------|--------------|--------------|--------------| - - G-maj e-min a-min -e|-------3------|-------3------|-------0------|-------0------| -H|-----3---3----|-----3---3----|-----1--------|-----1---1----| -G|---0-------0--|---0-------0--|---0----------|---2-------2--| -D|--------------|--------------|--------------|--------------| -A|--2-----------|--2-----------|---------2p0--|--0-----------| -E|--------------|--------------|--0-----------|--------------| - - C-maj a-min -e|-------0------|-------0------|--------0-----|--------0-----| -H|-----1---1----|-----1---1----|------1---1---|------1---1---| -G|---0-------0--|---0-------0--|----2-------2-|----2-------2-| -D|--------------|--------------|-0h2----------|-0h2----------| -A|--3-----------|--3-----------|--------------|--------------| -E|--------------|--------------|--------------|--------------| - - G-maj e-min a-min -e|-------3------|-------3------|-------0------|-------0------| -H|-----3---3----|-----3---3----|-----1--------|-----1---1----| -G|---0-------0--|---0-------0--|---0----------|---2-------2--| -D|--------------|--------------|--------------|--------------| -A|--2-----------|--2-----------|---------2p0--|--0-----------| -E|--------------|--------------|--0-----------|--------------| - - - - - - diff --git a/songs/Piosenka_do_przyjaciela.xml b/songs/Piosenka_do_przyjaciela.xml deleted file mode 100644 index 9b0c2d0a..00000000 --- a/songs/Piosenka_do_przyjaciela.xml +++ /dev/null @@ -1,44 +0,0 @@ - - - - Wojciech Bellon - - - - - - - - Przeczeka jeszcze jedną zimę - Żeby znów móc się spotkać przyjacielu - Opowiedzieć coś dobrego - I zapomnieć o tych złych chwilach - - - Przeczekamy a gdy wiosną wyschną drogi - Dogonimy tych co przeszli obok - Przeczekamy jeszcze jedno lato - Wciąż nie wierząc że na karku mamy jesień - - - A dziewczynom co odeszły - Odeślemy list z deszczu - Przeczekamy żeby życia zbyt nie trudzić - A epilog dopiszemy garścią złudzeń - - - Przeczekamy ciszę między nami - Płoche słowa i rozmowy nieskończone - Chleba nigdy nam nie zabrakło - Popatrz, znowu kwitnie jabłoń - Przyjacielu gwiazda spadła - - - - - - - - - - diff --git a/songs/Piosenka_do_spiewania_przy_pokonywaniu_wzgorz.xml b/songs/Piosenka_do_spiewania_przy_pokonywaniu_wzgorz.xml deleted file mode 100644 index bf83ba2f..00000000 --- a/songs/Piosenka_do_spiewania_przy_pokonywaniu_wzgorz.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - - Bajbus - Było: Muzyka: ,,Pressgang'' -- Alek - - - - - - - Tam gdzie szkoła na Nowowiejskiej street - Harcerzyków luźny oddział szedł - Drużynie trzeba dziś świeżej krwi - Harcerzyków dwudziestej pierwszej - - - A że byłem wtedy durny kiep - Kota szybko wzięła mnie za łeb - W słoniowe trepy obuli mnie - Harcerzyki z dwudziestej pierwszej - - - Jak o prawa upominać się - Lech z Magnudem nauczyli mnie - Niejeden zuch dzięki temu wył - Mały zuch z dwudziestej pierwszej - - - Nikt nie zliczy ile forsy dał - Parking na który Ekspert wszystkich gnał - Dla chwały twej o drużyno ma - Dla kochanej dwudziestej pierwszej - - - Hen daleko miły został dom - Kiedyś dostał kopertę do swych rąk - Komendant ten numer wyciął ci - Adaś Foland z dwudziestej pierwszej - - - Gdy harcerzy szyk formuje się - W żadnym rzędzie nie zobaczysz mnie - W nieznane podły wiedzie los - Los b.s. z dwudziestej pierwszej - - - - - - - - AlekKrzysiek Cz. - - - - - - - - Branka - - - diff --git a/songs/Piosenka_na_rozgrzanie.xml b/songs/Piosenka_na_rozgrzanie.xml deleted file mode 100644 index eb409e3d..00000000 --- a/songs/Piosenka_na_rozgrzanie.xml +++ /dev/null @@ -1,47 +0,0 @@ - - - - Tomasz Liszewski - - Tomasz Liszewski - Nijak - - - - - Zimno tak, że aż strach, jakże rozgrzać się - Korowody chłodnych myśli oziębiają mnie - Nie pomaga łyk herbaty, ani ciepły szal - Urojone z sopli kraty jak roztopić mam - - - Piosenka na rozgrzanie, na rozgrzanie serc - Rozgrzewa mnie takie granie, jak w domu ciepły piec - W przytulnym cieple nutek, w przytulnym cieple pauz - Z zimnego jak lód serca wypłynie czasem łza - - - Jak dziewczynka z zapałkami chcę ciepła, miłości - Nie rozgrzeję się słowami tymi, co ze złości - Nie rozbawią mnie pajace, co na sznurkach skaczą - Chociaż wszystkim nam tak zimno, dobrze dziś pajacom - - - - - - - - Alek - - Zgodne z nagraniem -- Alek - - - - - - - - - - diff --git a/songs/Piosenka_o_zajaczku.xml b/songs/Piosenka_o_zajaczku.xml deleted file mode 100644 index ddcd8084..00000000 --- a/songs/Piosenka_o_zajaczku.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - Wolna Grupa Bukowina - - - - Mam mało czasu tak mało jak piachu - W dziecięcej garści nad rzeką - Zwieram powieki zatrzymać obraz - Co z moich wspomnień ucieka - - - Bledną kolory i płynie, płynie - Rzeka po szarej łące - I płynie płynie nie realniejąc - Rzeką zielony zajączek - - - Biegnę wciąż biegnę przed siebie w siebie - Tęczę rozgarniam rękami - Letnim upałem wytrzeć do sucha - Spotniałą wilgotną pamięć - - - - Rzeki jaszczurka w trawie się wije - Słońce się chyli zrudziałe - Wieczną zieloność zachować w oczach - Tak wiele pragnę tak mało - - - - Bledną wspomnienia i płynie rzeka - Bez końca i bez początku - Nasyć me oczy kolorem rosy - I drzwi mi otwórz zajączku - - - - - - - - - - - - Onufry - - - - - chord positioning - - - - - - - - - - - - - - diff --git a/songs/Piosenka_turystyczna_1.xml b/songs/Piosenka_turystyczna_1.xml deleted file mode 100644 index b12b2f64..00000000 --- a/songs/Piosenka_turystyczna_1.xml +++ /dev/null @@ -1,57 +0,0 @@ - - - - Krzysztof Jurkiewicz - - Mariusz Kamper - Słodki Całus od Buby - - - - - Szliśmy tak już chyba szósty dzi - Przed nami stoi szczyt, cel naszej drogi - Szliśmy tak już chyba szósty dzi - Po bokach wysychały siana stogi - Ani świeci słońce ani pada deszcz - W tym roku góry jakieś takie - - - Szliśmy tak już chyba szósty dzi - Aż Kapeć powiedział czas w doliny nam wyruszyć - Może napotkamy jakiś sklep - I parę flaszek piwa uda się osuszyć - A tam było jak w raju - O której byś nie przyszedł - Zawsze piwo dają - - - Szliśmy tak już chyba szósty dzi - A w każdej knajpie tak co najmniej cztery piwa - Za oknami ciągle sterczy szczyt - A drogi jakoś wcale nie ubywa - ,,Piwo albo góry!'' powiedziałem - Odpowiedział ,,Oczywiście góry! - Kelner, jeszcze cztery piwa!'' - Ani świeci słońce ani pada deszcz - W tym roku góry jakieś takie - - - - - - - Słodki Całus od Buby - Piosenka turystyczna górska - - - - - chords - - - Onufry - - Nie jestem na 100% pewien rozłożenia akrodów... - - diff --git a/songs/Piosenka_turystyczna_2.xml b/songs/Piosenka_turystyczna_2.xml deleted file mode 100644 index 38a89b0e..00000000 --- a/songs/Piosenka_turystyczna_2.xml +++ /dev/null @@ -1,99 +0,0 @@ - - - - Krzysztof Jurkiewicz - - Mariusz Kamper - Słodki Całus od Buby - - - - - Gdy na rajd wyruszaliśmy - Wszyscy byli dobrej myśli - Buty mocno zawiązali - I plecaki zarzucili - Pomyśleli jak to fajnie - Będzie siedzieć przy ognisku - Gdy na las się kładą cienie - A nad głową iskra błyska - Kilometry już za nami - A przed nami zachód słońca - Echo niesie nad górami - Pieśń radosną pieśń bez końca - - - La la la la la - La la la la la la la la la la - La la la la la - La la la la la la la la - - - Góry stały ponad nami - Całe w niebie postrzępionyme - Las zielony w nim po pępki - Banie cerkwi zanurzone - Rozbiliśmy swe namioty - Zaraz obok przy potoku - Rozpaliło się ognisko - Dym zakręcił łezkę w oku - Kilometry już za nami - A przed nami zachód słońca - Echo niesie nad górami - Pieśń radosną pieśń bez końca - - - - A wieczorem z pierwszą gwiazdą - Wystrzeliły z bełtów korki - Kwaśno cierpkim smakiem wina - Przełamaliśmy bariery - Między nami a pewnymi - Dziewczynami co w namiocie - Obok miały swoje leża - I nie były wcale brzydkie - Pierwsze lody już za nami - A przed nami ranek blady - Echo niesie nad górami - Zew miłosnej serenady - - - - Kiedy się obudziliśmy - Było dobrze już południe - Potok toczył za namiotem - Swoje wody porywiste - Gdy mnie dzisiaj ze snu budzi - Dziecka płacz a żona nęka - Podziękować chcę Stachurze - I Krzysiowi Myszkowskiemu - - - La la la la la - La la la la la la la la la la - La la la la la - La la la la la la la la - La la la la la - La la la la la la la la la la - La la la la la - La la la la la la la la - - - - - - - Nie ma rzeczy niemożliwych - Piosenka turystyczna górska - - - - - chords - - - Onufry - - Ja tego nie gram, więc nie jestem pewien akordów. Akordy u Adasia są nieco inne niż na ich stronie, zamieszczam ze strony. - - diff --git a/songs/Piosenka_wiosenna.xml b/songs/Piosenka_wiosenna.xml deleted file mode 100644 index cce80d07..00000000 --- a/songs/Piosenka_wiosenna.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - - Wojciech Bellon - - Wojciech Jarociński - Wolna Grupa Bukowina - - - - - - - - - Zagram dla ciebie na każdej gitarze świata - Na ulic fletach, na nitkach babiego lata - Wyśpiewam jak potrafię księżyce na rozstajach - I wrześnie i stycznie i maje - I zagubione dźwięki i barwy na płótnach Vlamincka - I słońce wędrujące promienia ścieżynką - - - Graj nam graj pieśni skrzydlata - Wiosna taniec nasz niesie po łąkach - Zatańczymy się w sobie do lata - Zatańczymy się w sobie bez końca - - - - - - - A blask, co oświetla me ręce gdy piszę - Nabrzmiał potrzebą rozerwania ciszy - Przez okno wyciekł pełna go teraz chmara wronia - Dziobi się w dziobów końcach, a w ogonach ogoni - A pieśń moja to niknie, to wraca - I nie wiem co bym zrobił gdybym ją utrac - - - - Graj nam graj pieśni skrzydlata - Wiosna taniec nasz niesie po łąkach - Zatańczymy się w sobie do lata - Zatańczymy się w sobie bez końca - - - - - - - - - - - - Onufry - - - - - - - - - chord positioning - - - - - Bukowina - Poezja śpiewana - diff --git a/songs/Plonie_ognisko_i_szumia_knieje.xml b/songs/Plonie_ognisko_i_szumia_knieje.xml deleted file mode 100644 index 27afbd81..00000000 --- a/songs/Plonie_ognisko_i_szumia_knieje.xml +++ /dev/null @@ -1,48 +0,0 @@ - - - - - - Płonie ognisko i szumią knieje - Drużynowy jest wśród nas - Opowiada starodawne dzieje - Bohaterski wskrzesza czasg A7 d - - - O rycerstwie spod kresowych granic - O obrońcach naszych polskich granic - A ponad nami wiatr szumny wieje - I dębowy huczy las - - - Już do odwrotu głos trąbki wzywa - Alarmując ze wszech stron - Wstaje wiara w ordynku szczęśliwa - Serca biją zgodny ton - - - Każda twarz się w uniesieniu płoni - Każdy laskę krzepko dzierży w dłoni - A z młodzieńczej się piersi wyrywa - Pieśń potężna, pieśń jak dzwon. - - - - - - - - - - - - - - - - - - - - - diff --git a/songs/Pocaluj_noc.xml b/songs/Pocaluj_noc.xml deleted file mode 100644 index 2869d74a..00000000 --- a/songs/Pocaluj_noc.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - Varius Manx - - - Przez palce zwykłych dni - Oglądasz świat - W pośpiechu gubiąc sny - Twój śmiech zawstydza cię - Więc wolisz nie śmiać się - Niż chwilę śmiesznym być - - - Spróbuj choć raz - Odsłonić twarz - I spojrzeć prosto w słońce - Zachwycić się - Po prostu tak - I wzruszyć jak najmocniej - Nie bój się bać - Gdy chcesz to płacz - Idź szukać wiatru w polu - Pocałuj noc - W najwyższą z gwiazd - Zapomnij się i tańcz - - - Zakładasz szary płaszcz - Łatwo wtapiasz się - W upiornie trzeźwy świt - Obmyślasz każdy gest - Na wypadek by - Nikt nie odkrył kim - Naprawdę jesteś! - - - - - - - - - - - - - - - - - - - - - - diff --git a/songs/Pod_sliwka.xml b/songs/Pod_sliwka.xml deleted file mode 100644 index cb2ab3f6..00000000 --- a/songs/Pod_sliwka.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - - - - Idzie diabeł ścieżką krzywą pełen myśli złych - Nie pożyczył mu na piwo nie pożyczył nikt - Słońce praży go od rana, wiatr gorący dmucha - Diabeł się na nogach słania w ten piekelny upał - - - Idzie anioł wśród zieleni dobrze mu się wiedzie - Pełno drobnych ma w kieszeni i przyjaciół wszędzie - Nagle przystaneli obaj na górze pod śliwką - I ujrzeli że im browar wyszedł na przeciwko - - - Nie ma szczęścia na tym świecie ni sprawiedliwości - Anioł pije piwo trzecie, diabeł mu zazdrości - Rzecze diabeł postaw kufel Bóg ci wynagrodzi - My artyści w taki upał musimy żyć w zgodzie - - - Na to anioł zatrzepotał skrzydeł pióropuszem - I powiada dam ci dychę w zamiam za twą duszę - Musiał diabeł aniołowi wściekłą duszę sprzedać - I stworzyli sobie piekło z odrobiną nieba - - - - - - - - - - diff --git a/songs/Polow.xml b/songs/Polow.xml deleted file mode 100644 index 6921f24e..00000000 --- a/songs/Polow.xml +++ /dev/null @@ -1,58 +0,0 @@ - - - - Jarosław Zajączkowski - - - - - - - - Kiedy morze burzy swój spokojny sen - Białę grzywą wdziera się na ląd - My jak drzewa sennie pochylamy się - Wokół morza zacieśniamy krąg - Niespokojne nasze myśli - Szarpie wiatr unosi prąd - Pośród ryku wichrów salejących burz - Słychać pieść o pracy rąk - - - W lampie sennie skwierczy wielorybi tłuszcz - Biały dym unosi wiatr - Niespokojny przybój szarpie smukłą łódź - Już na łowy ruszać czas - Z rozchuaknej morskiej toni - Czai cielsko cenny łup - Kiedy morzemy pomknie zwinnej włóczni cień - Biały narwal straci róg - - - Wielki duchu oceanów nasze łodzie wiecznie chroń - Myśliwemu kieruj w sieci cenny łup - Celnie prowadź jego dłoń - Groźną dzielą gór lodowych - Nie zwodź naszych morskich dróg - Przed narwala strzeż ogonem - Chroń od morsa groźnych kłów - - - Kiedy morze burzy swój spokojny sen - Białą grzywą wdziera się na ląd - My jak drzewa senne pochylamy się - Wokół morza zacieśniamy krąg - Niespokojne nasze myśli - Szarpie wiatr unosi prąd - Pośród ryku wichrów szalejących burz - Słychać pieśń o pracy rąk - - - - - - - - - - diff --git a/songs/Powrot.xml b/songs/Powrot.xml deleted file mode 100644 index 1787d515..00000000 --- a/songs/Powrot.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - - Maciej Służała - - Maciej Służała - Krążek - - - - - Na twój powrót zgotowałam w beczce kąpiel. - Kilka kwiatów z łąki wplotłam w długie włosy. - Jagód kosz największy uzbierałam w lesie. - Czekam ciebie, spoglądając wzdłuż drogi. - - - Jeszcze noce takie ciepłe i gwiaździste. - Jeszcze w worku trochę chleba pozostało. - Jeszcze świerszcze koncert grają na równinie. - Jeszcze lata tyle w górach, choć tak mało. - - - Żółte liście znaczą Twój szlak. - Zimny wiatr czesze trawy na szczytach. - Tyle razy przemierzałeś ten świat. - Tyle lat się tym światem zachwycasz. - - - Na twój powrót upiekłam świeży bochen. - Ciepły sweter zrobiłam na drutach. - Rozpaliłam na kominku jasny płomień. - Jeszcze dzisiaj powinieneś przecież wrócić. - - - Znowuż wiatr odprowadza mnie w doliny. - Słońce żegna odbijając się w strumienu. - Stare drzewa pochylają swe korony. - Jeszcze chwilę odpocznę na kamieniu. - - - - Na twój powrót cieszę się już od tygodnia. - Pojaśniało z tej radości w całej izbie. - Pachnie kawa, słońce skrzy się w starym lustrze. - Idzie ktoś, serce mocniej bije. - - - Koniec lasu, widać dach starego domu. - Domu, w którym tyle już się wydarzyło. - Wracam tu do ciebie, jak co roku. - Może z wiosną razem wyruszymy. - - - - - - - - - - - - - - - - Onufry - - - - - - diff --git a/songs/Powroty.xml b/songs/Powroty.xml deleted file mode 100644 index 048565b8..00000000 --- a/songs/Powroty.xml +++ /dev/null @@ -1,55 +0,0 @@ - - - - - Boję się nieba w twoich oczach - Jeszcze drżysz ze zmęczenia i potu - Świat chcesz dzielić na białe i czarne - Miły, boję się twoich powrotów - - - Boję się chmur nad twoim czołem - Kiedy ręce do krwi otarte - Dumnie kładziesz przede mną na stole - Miły, boję się twoich powrotów - - - Drżysz jeszcze, oczy zamglone - Zrobisz wszystko o co poproszę - Muszę wierzyć, przecież mnie kochasz - Krótka chwila i wracasz - Krótka chwila i wracasz - Krótka chwila i wracasz na morze - - - Boję się morza w twoich myślach - Kiedy jesteś do drogi już gotów - Leżysz przy mnie, oczy otwarte - Miły, boję się twoich powrotów - - - - - - - - Onufry - - - - chord positioning - - - - - Powroty II - Krzysztof Jurkiewicz - Krzysztof Jurkiewicz - Smugglers - - - - Nagroda Publiczności - Szanta - Autor to ten sam K. Jurkiewicz od Słodkiego Całusa, acz tu w innym zespole.Piosenka nosi tak naprawdę tytuł "Powroty II", w odróżnieniu od "Powrotów", które K. Jurkiewicz napisał i wykonywał ze Słodkim Całusem, też skądinąd ładną piosenką.U nas Powrotów 1 się nie śpiewa (a szkoda), stąd ta piosenka funkcjonuje po prostu pod nazwą "Powroty" - diff --git a/songs/Pozegnanie.xml b/songs/Pozegnanie.xml deleted file mode 100644 index 8f84b4c6..00000000 --- a/songs/Pozegnanie.xml +++ /dev/null @@ -1,69 +0,0 @@ - - - - Maciej Służała - - Maciej Służała - Krążek - - - - - Spójrz przez okno -- wiosna śniegi rozgania - Coraz dłuższe dnie, wiatr cieplejszy - Na mnie czas, przyszła pora rozstania, - Worek gotów do drogi w kącie leży - Nie idź jeszcze, jeszcze czas, jeszcze zdążysz - Jeszcze wiosna zbyt krótka, by jej wierzyć - Jeszcze śnieg dość głęboki, jeszcze błoto na drogach, - Jeszcze mróz wieczorami się jeży - - - Daj mi jeszcze kilka dni proszę o to - Pozwól się jeszcze sobą nacieszyć - Ty wyruszysz gnany swoją tęsknotą - Ja zostanę samotna jak księżyc - - - Już jaskółki gniazdo w oknie budują, - Słyszysz? Bocian na łące klekocze, - Dzikie gęsi po obłokach wędrują, - Spałaś już -- pierwsza burza była w nocy - Popatrz -- wiatr ciemne chmury nawiewa, - Dzisiaj nie idź, posiedź ze mną jeszcze - Tyle miałam Ci do powiedzenia, - Widzisz, pada. Nie zdążysz przed deszczem - - - - Muszę iść, woła mnie chmurna przestrzeń, - W przyszłym roku mogę nie dać już rady, - Przecież wrócę tu z ostatnim deszczem - Przecież wrócę do Ciebie jak zawsze. - Wiem że wrócisz, ale zrozum obawę - Przecież Ciebie nie będzie pół roku - Tyle czasu nie widzieć twej twarzy... - Idź już. Może ten deszcz przejdzie bokiem - - - - - - - - - chords - - - OnufryAlek - - - - My to śpiewamy nieco inaczej niż na kasecie (Baśń - Tak czy Owak), więc nie rozmieszczam akordów. Zresztą, nie za bardzo umiem - kiedyś znakiem bardzo długo się staraliśmy to rozpracować, i nie poszło. -- Onufry -Zespół Krążek (http://krazek.art.pl/) uważa swoją drugą nazwę Tak czy Owak za przejściową i nietrafioną, respektujemy to -- Alek - - - - - - diff --git a/songs/Pozegnanie_2.xml b/songs/Pozegnanie_2.xml deleted file mode 100644 index 2515b7ac..00000000 --- a/songs/Pozegnanie_2.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - - Piotr Bakal - - Krzysztof Myszkowski - Stare Dobre Małżeństwo - - - - - - La, la, la... - - - - Może się spotkamy znów po kilku latach - Może właśnie tutaj lub na końcu świata - Będziesz wtedy inna -- ja wciąż taki sam - Może nam się uda zacząć jeszcze raz - - - Dzisiaj muszę odejść już mnie nie zatrzymuj - Przez te wszystkie lata nic się nie zmieniło - Rozstawiłaś straże wokół moich snów - Daj mi wreszcie spokój -- dosyć mam już słów - - - La, la, la... - - - Wrócę tu na pewno, gdy nadejdzie pora - Zapamiętaj tylko, co mówiłem wczoraj - Zapamiętaj tylko że się nie zmieniłem - Myślę co myślałem, wierzę w co wierzyłem - - - Wrócę gdy zrozumiesz, już po kilku latach - Może właśnie tutaj będzie koniec świata - Wtedy będziesz inna -- ja wciąż taki sam - Może nam się uda zacząć jeszcze raz - - - - La, la, la... - - - - - - - - - - - diff --git a/songs/Pozegnanie_3.xml b/songs/Pozegnanie_3.xml deleted file mode 100644 index 1af4772f..00000000 --- a/songs/Pozegnanie_3.xml +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - Ogniska już dogasa blask - Braterski splećmy krąg - W wieczornej ciszy, w świetle gwiazd - Ostatni uścisk rąk - - - Kto raz przyjaźni poznał moc - Nie będzie trwonił słów - Przy innym ogniu, w inną noc - Do zobaczenia znów - - - Nie zgaśnie tej przyjaźni żar - Co połączyła nas - Nie pozwolimy, by ją starł - Nieubłagany czas - - - - - - - - - - - - - - - - - - - - - - diff --git a/songs/Przyjaciolko.xml b/songs/Przyjaciolko.xml deleted file mode 100644 index d2f01de1..00000000 --- a/songs/Przyjaciolko.xml +++ /dev/null @@ -1,58 +0,0 @@ - - - - Jakub Onufry Wojtaszczyk - Metrum zmienne w trakcie piosenki - zwrotka na 4, łagodnie, refren na 3, dużo agresywniej. - Jakub Onufry Wojtaszczyk - Znak służby muzyce - - - - - Przyjdź znasz ten dom i drzwi - Materac zmęczony i fotel wysiedziany - Nie musisz dzwonić pukać wejdź - Posiedzimy pomyślimy pogadamy - - - O tym, że miłość nie chce przyjść - O tym, że przyjaźń nie wystarczy - O tym, że ciężko nam bywa i źle - O walkach przegranych i powrotach na tarczy - Też o tym, że my, że Ty i ja - Że łatwiej martwić się we dwoje - O tym, że przyjaźń jednak trwa - Choć świata, choć jutra tak bardzo się boję - - - Wyjdziesz rano zmęczona - Bo trudna jak zawsze ta nasza rozmowa - Za nami zostaną wspólne łzy - A w duszy zostaną nam słowa - - - Że chociaż miłość nie chce przyjść - I przyjaźń czasem nie wystarczy - Że chociaż ciężko nam bywa i źle - Choć zdarza się czasem powrócić na tarczy - To jednak trwamy, Ty i ja - I lepiej zmieniać świat we dwoje - I przyjaźń żyje, rośnie, trwa - I dzięki niej trochę mniej świata się boję - - - - - - - - - - chord positioning - - - Onufry - - Zgodne z oryginałem 100% (z definicji) - - diff --git a/songs/PtakiPtakom.xml b/songs/PtakiPtakom.xml deleted file mode 100644 index 4d807cb5..00000000 --- a/songs/PtakiPtakom.xml +++ /dev/null @@ -1,68 +0,0 @@ - - - - Jerzy Frankiewicz - - Zbigniew Kocój - - - - - - Wybiegani, wysłuchani, wybawieni - Siądźcie wkoło do ogniska mego stóp - Chcę powiedzieć wam o tamtej złej jesieni - Z której przyszedł ten harcerski leśny grób - - - Myśli mieli rozczochrane jak wy dzisiaj - I mundury te dzisiejsze mieli też - Lecz stanęli w pogotowiu, gdy padł wystrzał - Aby bronić tej największej z wielkich wież - - - Harcerze, którym słowa na ustach zamierały - Harcerki, którym uśmiech zabrał wojny czas - Jak ptaki po przestworzach losu szybowały - I padały jak puszczony bez nadziei głaz - - - Mogli odejść, mogli uciec w swoje jutro - Nikt by słowa im powiedzieć nie był śmiał - Lecz zostali, chociaż było im tak trudno - Gdy za strzałem padał ciągle drugi strzał - - - - To dla Polski tak czuwali dniem i nocą - Polski sztandar osłaniali piersią swą - I odeszli, kiedy wzięto ich przemocą - Aby w ziemię wtopić całą duszę swą - - - - Niech im pokłon odda nasze pokolenie - Tym, co umrzeć tam umieli mimo snów - I gdy przyjdą, by podeptać nam marzenia - Polski sztandar my osłońmy piersią znów - - - - - - - - - - Piosenka harcerska - - - - - Onufry - - - - - - diff --git a/songs/Raport_z_izby_otrzezwien.xml b/songs/Raport_z_izby_otrzezwien.xml deleted file mode 100644 index d9cdc9d4..00000000 --- a/songs/Raport_z_izby_otrzezwien.xml +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - - - - - - Wchodzi pierwszy zalany drzwi się zamykają - Widać film ma urwany kica w kąt jak zając - I w bełkocie ,,wylali'' bez ------ - Pije bo kac jest lepszy od stanów frustracji - - - Tylko kto mnie tak skurczył do rozmiarów liliputka - Przez judasza głos doszedł ,,wódka tylko wódka'' - Wchodzi facet ubrany, równo jak pod sznurek - Mówi ,,Bardzo przepraszam'' widać zna kulturę - - - I się chłopom przedstawił ,,Macie tu aktora'' - ,,Który żeby zarobić zgrywa amatora'' - ,,Ktoś mi kurza twarz podmienił Hamleta na krasnoludka'' - Przez judasza głos doszedł ,,Wódka tylko wódka'' - - - Po aktorze małolat jeszcze ma trądzik - ,,W domu rozłam'' powiada w buzię narkotyki - Jeszcze doszły do tego z wychowania dwóje - ,,Synu'' rzecze mu artysta ,,ja cię adoptuję'' - - - Kto urządził tak małego? Jaka na to odtrutka? - Przez judasza głos doszedł ,,Wódka tylko wódka'' - Teraz znany dziennikarz, każdy się przymyka - Nie wiadomo czy węszy czy się też nałykał - - - Nagle głos małolata przerwał jego ciszę - Pewnie pije bo trzeźwy tego nie napisze - Co się stało z redaktorem że się chwieje jak łódka - Przez judasza głos doszedł -- wódka, tylko wódka - - - Teraz na strasznej bani elegancka pani - Nagle wszyscy do koła chłopcy malowani - Teraz wiem -- rzecze dama -- czemu karaj zaniemógł - Bowiem tutaj się skryły resztki gentelmanów - - - Ktoś was chłopcy najmilejsi znowy wystrychną na dudka - Przez judasza głos doszedł -- wódka tylko wódka - Teraz wielki uczony też ubzdryngolony - Ale mądrość w nim taka że aż bić pokłony - - - Póki talent mój -- rzecze -- w rękach decydentów - Ni do pracy powrotu ni do abstynętów - Kto mnie jeszcze raz przekona, że przyczyny tkwią w s------- - Przez judasz głos doszedł: wódka, tylko wódka - - - Na to powstał socjolog, co spał od południa - Który z braku etatu, w szklarni się zatrudniał - Rzekł: pisałem doktorat, że nie problem w ,,czystej'' - I dlatego panowie jestem wciąż magistrem - - - Tylko praca jest odtrutką na taplanie się w smutkach - Przez judasza głos doszedł -- wódka, tylko wódka - I wsunęli się wszyscy pod świeżutkie kołdry - Wszyscy których zjednało zalewani mordy - - - Tylko biedny artysta ciągną wciąż do ludzi - I z pijackim uporem śpiących chciał rozbudzić - Co nam szkodzi w tym życiu niech mi z was ktoś odpowie - Przez judasza głos doszedł: pijcie kolorowe - - - - - - - - - - diff --git a/songs/Roza.xml b/songs/Roza.xml deleted file mode 100644 index 6cc1f784..00000000 --- a/songs/Roza.xml +++ /dev/null @@ -1,58 +0,0 @@ - - - - Bolesław Leśmian - - Robert Leonhard - Małżeństwo z Rozsądku - - - - - Czym purpurowe maki - Na ciemną rzucał drogę? - Sen miałem, ale jaki? - Przypomnieć już nie mogę - - - Twojeż to były usta? - Moje to były dłonie? - Głąb sadu mego pusta - We wrotach księżyc płonie - Twojeż to były usta? - A moje były dłonie? - - - Dni się za dniami dłużą - Noce w jeziorach witam - Kiedy Ty kwitniesz różo? - Ja nigdy nie zakwitam - - - - Ja nigdy nie zakwitam - Twójże to głos o różo? - Słowo po słowie chwytam - Dni się za dniami dłużą - - - - - - - - - - - - - - - - Onufry - - - - - - diff --git a/songs/Sen_Katarzyny_II.xml b/songs/Sen_Katarzyny_II.xml deleted file mode 100644 index 10f38d34..00000000 --- a/songs/Sen_Katarzyny_II.xml +++ /dev/null @@ -1,75 +0,0 @@ - - - Jacek Kaczmarski - Jacek Kaczmarski - Jacek Kaczmarski - - - Na smyczy trzymam filozofów Europy - Podparłam armią marmurowe Piotra stropy - Mam psy, sokoły, konie - kocham łów szalenie - A wokół same zające i jelenie - - Pałace stawiam, głowy ścinam - - Kiedy mi przyjdzie na to chęć - Mam biografów, portrecistów - I jeszcze jedno pragnę mi - - - Stój Katarzyno! Koronę Carów - Sen taki jak ten może Ci z głowy zdjąć! - - - Kobietą jestem ponad miarę swoich czasów - Nie bawią mnie umizgi bladych lowelasów - Ich miękkich palców dotyk budzi obrzydzenie - Już wolę łowić zające i jelenie - Ze wstydu potem ten i ów - Rzekł o mnie: niewyżyta niemra! - I pod batogiem nago biegł - Po śniegu dookoła Kremla! - - - - Kochanka trzeba mi takiego jak imperium - Co by mnie brał tak jak ja daję - całą pełnią - Co by i władcy i poddańca był wcieleniem - I mi zastąpił zające i jelenie - Co by rozumiał tak jak ja - Ten głupi dwór rozdanych ról - I pośród pochylonych głów - Dawał mi rozkosz albo ból! - - - - Gdyby się taki kochanek kiedyś znalazł - Wiem! Sama wiem! Kazałabym go ściąć! - - - - - - - Onufry - - - - - - - - - chord positioning - - - - - - - - - Krzyk - Poezja śpiewana - - diff --git a/songs/Sielanka_o_domu.xml b/songs/Sielanka_o_domu.xml deleted file mode 100644 index 07ffc67b..00000000 --- a/songs/Sielanka_o_domu.xml +++ /dev/null @@ -1,92 +0,0 @@ - - - - Wojciech Bellon - - Wacław Juszczyn - - - - - - A jeśli dom będę miał - To będzie bukowy koniecznie - Pachnący i słoneczny - Wieczorem usiądę, wiatr gra - A zegar na ścianie gwarzy - Dobrze się idzie, panie zegarze - Tik tak, tik tak, tik tak - Świeca skwierczy i mruga przewrotnie - Więc puszczam oko do niej - Dobry humor dziś pani ma - Dobry humor dziś pani ma - - - Szukam, szukania mi trzeba - Domu gitarą i piórem - A góry nade mną jak niebo - A niebo nade mną jak góry - - - Gdy głosy usłyszę u drzwi - Czyjekolwiek, wejdźcie -- poproszę - Jestem zbieraczem głosów - A dom mój bardzo lubi gdy - Śmiech ściany mu rozjaśnia - I gędźby lubi i pieśni - Wpadnijcie na parę chwil - Kiedy los was zawiedzie w te strony - Bo dom mój otworem stoi - Dla takich jak my - Dla takich jak wy - - - - Zaproszę dzień i noc - Zaproszę cztery wiatry - Dla wszystkich drzwi otwarte - Ktoś poda pierwszy ton - Zagramy na góry koncert - Buków porą pachnącą - Nasiąkną ściany grą - A zmęczonym wędrownikom - Odpocząć pozwolą muzyką - Bo taki będzie mój dom - Bo taki będzie mój dom - Bo taki będzie mój dom - - - - - - - - - - - - - - - - - - Jan Inowolski - - - - - - - - - - - - - - - - - - diff --git a/songs/Slynny_niebieski_prochowiec.xml b/songs/Slynny_niebieski_prochowiec.xml deleted file mode 100644 index 97208cdb..00000000 --- a/songs/Slynny_niebieski_prochowiec.xml +++ /dev/null @@ -1,125 +0,0 @@ - - - - Leonard Cohen - - Leonard Cohen - Maciej Zembaty - Maciej Zembaty - Famous Blue Raincoat - - - Jest czwarta nad ranem - Już kończy się grudzień - List piszę do Ciebie - Czy dobrze się czujesz - W New Yorku jest zimno - Poza tym w porządku - Muzyka na Clinton street - Gra na okrągło - - - Podobno budujesz - Swój własny dom - W głębi pustyni - Od życia nie chcesz już nic - Lecz musiałeś zachować wspomnienia - - - A Jane do dziś - Kosmyk włosów ma Twych - Wiem gdy dawałeś go jej - Myślałeś już o tym by zwi - Lecz niełatwo jest zwi - - - Gdy tu byłeś ostatnio - Wyglądałeś jak starzec - Podniszczyłeś swój słynny - Niebieski prochowiec - Do każdego pociągu - Wychodziłeś na dworzec - Bez swej Lili Marlene - Pojechałeś do domu - - - Dałeś mojej kobiecie - Z Twego życia zaledwie strzęp - Nie jest już moją żoną - Lecz twoją też nie - - - Wciąż widzę Cię - Z różą w zębach choć wiem - Że to tani był greps - Lecz spodobał się Jane - Jane pozdrawia cię t - - - - - - - - - - - Cóż mam ci powiedzieć - Mój bracie mój kacie - Sam nie wiem czy pisać - Czy nie - Brakuje mi ciebie - Przebaczam od siebie - To dobrze żeś w drogę - Mi wszedł - - - A może byś tak tutaj wpadł - Do mnie lub do Jane - Pomyśl Twój wróg sypia twardo - A jego żona nudzi się - - - Więc dziękuję ci że - Wypędziłeś jej z oczu ten żal - Ja myślałem, że musi być tak - Nie starałem się więc - - - A Jane do dziś - Kosmyk włosów ma twych - Wiem że gdy dawałeś go jej - Myślałeś już o tym by zwi - - - - - - - - - - - - Z poważaniem - Leonard Cohen - - - - - - - 35 x Leonard Coheb - Poezja śpiewana - - - - - chord positioning - - - Onufry - - Układ chwytów wg płyty. - - diff --git a/songs/Smialy_harpunnik.xml b/songs/Smialy_harpunnik.xml deleted file mode 100644 index cf92a56c..00000000 --- a/songs/Smialy_harpunnik.xml +++ /dev/null @@ -1,80 +0,0 @@ - - - - Marek Siurawski - - tradycyjna - Cztery Refy - - The Bold Harpooner - - - Nasz "Diament" prawie gotów już, w cieśninach nie ma kry. - Na kei piękne panny stoją, w oczach błyszczą łzy. - Kapitan w niebo wlepia wzrok, ruszamy lada dzień, - yniemy tam, gdzie słońca blask nie mąci nocy cień. - - - - A więc krzycz: O-ho, ho! Odwagę w sercu miej! - Wielorybów cielska groźne są, lecz dostaniemy je! - - - - Hej, panno, powiedz po co łzy? Nic nie zatrzyma mnie, - Bo prędzej w lodach kwiat zakwitnie, niż wycofam się. - No, nie płacz, mała, wrócę tu, nasz los nie taki zły, - Bo da dukatów wór za tran i wielorybie kły. - - - - - A więc krzycz: O-ho, ho! Odwagę w sercu miej! - Wielorybów cielska groźne są, lecz dostaniemy je! - - - - Na decku Stary wąchał wiatr, lunetę w ręku miał. - Na łodziach, co zwisały już z harpunem każdy stał. - I dmucha tu, i dmucha tam! Ogromne stado wkrąg. - Harpuny, wiosła, liny brać! I ciągaj, brachu, ciąg! - - - - - A więc krzycz: O-ho, ho! Odwagę w sercu miej! - Wielorybów cielska groźne są, lecz dostaniemy je! - - - - - I dla wieloryba już ostatni to dzień, - Bo śmiały harpunnik uderza weń! - - - - - A więc krzycz: O-ho, ho! Odwagę w sercu miej! - Wielorybów cielska groźne są, lecz dostaniemy je! - - - - - - - - - - - - - chord positioning - - - Kasia Kowalska - - - - - - diff --git a/songs/Swietlany_krzyz.xml b/songs/Swietlany_krzyz.xml deleted file mode 100644 index a4c4883a..00000000 --- a/songs/Swietlany_krzyz.xml +++ /dev/null @@ -1,39 +0,0 @@ - - - - - - Idziemy w jasną z błękitu utkaną dal, - Drogą wśród łąk, pól bezkresnych - I wśród zbóż szumiących fal. - - - Cicho, szeroko jak okiem spojrzenie śle. - Jakieś się snują marzenia - W wieczornej spowitej mgle - - - Idziemy naprzód i ciągle pniemy się wzwyż, - By zdobyć szczyt ideałów: - Świetlany harcerski krzyż. - - - - - - - - - - - - - - - - - - - - - diff --git a/songs/Tango.xml b/songs/Tango.xml deleted file mode 100644 index 62e89e23..00000000 --- a/songs/Tango.xml +++ /dev/null @@ -1,105 +0,0 @@ - - - - Grzegorz Tomczak - Metrum się zmienia - zwrotki są na 4 w rytmie tanga (chyba), refreny na 3. - Grzegorz Tomczak - Grzegorz Tomczak - - - - - Było ciemno, więc niewiele sam widziałem - i pamiętam też niewiele - Było ciemno, wiem, że z pochyloną głową stałem - tak, jak stoi się w kościele - A więc: stałem, nie widziałem, było ciemno, - lecz słyszałem wciąż - Ten głos, ten głos, ten głos - - - Podejdź bliżej, więc podszedłem jak skruszony obywatel - do przedstawiciela władzy - Podejdź bliżej, już wiedziałem że ucieczka błyskawiczna - tu niczemu nie zaradzi - Więc poszedłem, posłuchałem, było ciemno, - wciąż myślałem czyj - Ten głos, ten głos, ten głos - - - To nie wróg był, bo głos cichy i subtelny - ale polski i nieskazitelny - To nie Bóg był, ten by zaraz mnie zapytał - czy mój światopogląd celny - Więc to nie był wróg na pewno, bo nad głową - tuż nade mną usłyszałem - Ten głos, ten głos, ten głos - - - Ty to masz szczęście, że w tym momencie - Żyć ci przyszło w kraju nad Wisłą - Ty to masz szczęście - Twój kraj szczęśliwy, piękny, prawdziwy - Ludzie uczynni, w sercach niewinni - Twój kraj szczęśliwy - - - Było ciemno, więc nie mogłem stwierdzić komu - pomyliły się epoki lub stulecia - Było ciemno, może to Mickiewicz jaki - bo tak zgrabnie romantyczną wiarę krzesał - Trochę niezorientowany, bo w tym kraju tak kochanym - dawno nie był już widziany - - - Może Norwid, bo coś plótł, że łza gdzieś znad planety spada - i groby przecieka - Ale skąd by, skąd by wiedział, że na jego słowa - ktoś tu jeszcze może czekać - Teraz w m odzie nie Norwidy, filozofy, okryjbidy, - więc czyj - Ten głos, ten głos, ten głos - - - Było ciemno, więc sam nie wiem, jak do domu - wprost doszedłem i do siebie - Było ciemno, a ja czułem się jak w niebie, - choć dlaczego nie wiem, nie wiem - Z pochyloną głową stałem, wierzcie: ja nie zwariowałem, - lecz jak dziecko powtarzałem - Na głos, na głos, na głos - - - Ja to mam szczęście, że w tym momencie - Żyć mi przyszło w kraju nad Wisłą - Ja to mam szczęście - Mój kraj szczęśliwy, piękny, prawdziwy - Ludzie uczynni, w sercach niewinni - Mój kraj szczęśliwy - - - - - - - - - - - - - - - chord positioning - - - OnufryKrzysiek Cz. - - - - Nie wiem, jak w takiej sytuacji zapisać bicie. I nie w pełni odpowiadam za rozmieszczenie akordów. - - - - - diff --git a/songs/Tawerna_pod_pijana_zgraja.xml b/songs/Tawerna_pod_pijana_zgraja.xml deleted file mode 100644 index a684e5bf..00000000 --- a/songs/Tawerna_pod_pijana_zgraja.xml +++ /dev/null @@ -1,71 +0,0 @@ - - - Grzegorz Bukała - - - Kiedy niebo do morza przytula się z płaczem - Licho sosny garbate do reszty wykrzywia - Brzegiem morza wędrują bezdomni tułacze - I nikt nie wie skąd idą, jaki wiatr ich przywiał - - - Do tawerny ,,Pod pijaną zgrają'' - Do tańczących, rozhukanych ścian - I do dziewcząt, które serca - Za złamany grosz oddają - Nie pytając, czy kto kiep, czy drań. - - - Kiedy wiatry noc chmurną przegonią za wodę, - Gdy pół--słońce pół nieba, pół morza rozpali, - Opuszczają wędrowcy uśpioną gospodę, - Z pierwszą bryzą znikają w pomarszczonej dali. - - - A w tawernie ,,Pod pijaną zgrają'' - Spływa smutek z okopconych ścian, - A dziewczyny z pół--grosików - Amulety układają - Na kochanie, na tęsknotę i na żal. - - - Kiedy chandra jesienna jak mgła cię otoczy, - Kiedy wszystko postawisz na kartę przegraną, - Zamiast siedzieć bezczynnie i płakać lub psioczyć - Weź węzełek na plecy, ruszaj w świat w nieznane. - - - - Do tawerny ,,Pod pijaną zgrają'' - Do tańczących, rozhukanych ścian - I do dziewcząt, które serca - Za złamany grosz oddają - Nie pytając, czyś ty kiep, czy drań - - Nie pytają, czyś ty kiep, czy drań - Nie pytają, czyś ty kiep - - - - - - - Alek - - - - - - Zgonde z nagraniem -- Alek - - - - Grzegorz Bukała - Grzegorz Bukała - - - - - - - diff --git a/songs/Tyle_mi_zostalo_co_mi_nakapalo.xml b/songs/Tyle_mi_zostalo_co_mi_nakapalo.xml deleted file mode 100644 index 4623b2cf..00000000 --- a/songs/Tyle_mi_zostalo_co_mi_nakapalo.xml +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - - - Siedzę w swoim domu w kącie - W przytulnych walonkach - Jeszcze wczoraj było ciepło - Grzało choć od słońca - Dzisiaj coś mi nawaliło - I się prąd wyłączył - Tylko zacier jest na chodzie - I z rurki się sączy - - - Tyle mi zastało - Co mi nakapało - Jak przyjdzie milicja - Będzie prohibicja - - - Wody wczoraj mi naciekło - Prawie pół miednicy - Dzisiał łup! i wywaliło - Rury w kamienicy - Tych żeberek co pod oknem - Ogrzać już nie sposób - Gdyby one były z mięsa - Miałbym chociaż rosół - - - - Teraz z kranów mi nie leci - W łazience mi cuchnie - Gaz bezwonny to nie włączam - Bo a nuż wybuchnie - W kuchni mrozi się lodówka - Ale teraz zewnętrznie - Pralka tylko wtedy chodzi - Kiedy piorę ręcznie - - - - Telewizor wyłączyłem - Świecił na niebiesko - Bo samogon gdy wypędzę - To chowam w kineskop - Zresztą może bym i włączył - Ale nie ma prądu - Tylko zacier jest na chodzie - I dowód do wglądu - - - - I tak jest każdego roku - Kiedy przyjdzie zima - Myślę przyjdzie jeszcze jedna - I blok nie wytrzyma - Póki co by ta następna - Nie dała we znaki - Kupię drugi telewizor - By mieć dwa baniaki - - - - - - - - - - - - - - - - - - - diff --git a/songs/Uciekali.xml b/songs/Uciekali.xml deleted file mode 100644 index 61668239..00000000 --- a/songs/Uciekali.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - Uciekali - Agata Miklaszewska; Maryna Miklaszewska - - Janusz Stokłosa - - - - - - Tej nocy Anioł przyszedł do Józefa: - Zbudźcie dzieciątko co tak słodko śpi - Judea dziś to niebezpieczna strefa - I policzone małych chłopców dni. - - Namiestnik Herod ciągle drży w obawie, - Że chociaż władzę dzierży jego dł - I rzymski cesarz patrzy nań łaskawie - To w rączkach dzieci może kryć się broń. - - - - Uciekali, uciekali, uciekali - Na osiołku przez pustyni żar - Jak najdalej, jak najdalej, jak najdalej - Ukryć Dziecię, bezcenny ich skarb. - - - - Ciężko ojczyznę wspominać w pustyni - Mieliśmy jakoś zapewniony byt - Choć czasem patrol mijał drzwi świątyni - Zawsze się modlić mógł pobożny Żyd. - - Lecz może trzeba szlakiem iść wygnania - Tak jak przodkowie nasi kiedyś szli - Może nie tu jest Ziemia Obiecana - Może gdzie indziej będzie rósł nasz Syn. - - - - Jeszcze nie wiemy co nam przeznaczone - Lecz choć przeczucia czasem dręczą złe - Ojciec Niebieski weźmie nas w obronę - I znowu Anioł zjawi się we śnie. - - Piasek przysypał szlaki do Betlejem - Zabłądzić łatwo, trudny każdy krok - Tak mało mamy, tylko tę nadzieję - Która rozjaśnia nam codzienny mrok. - - - - - - - - - Kolęda - - - chord positioning - - - Kasia KowalskaOnufry Krzysiek Cz. - - - - - Drobne korekty w strukturze. - - - diff --git a/songs/Ukraina.xml b/songs/Ukraina.xml deleted file mode 100644 index d0dbe8f4..00000000 --- a/songs/Ukraina.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - - - - Hej, tam gdzieś znad czarnej wody - Siada na koń Kozak młody - Czule żegna się z dziewczyną - Jeszcze czulej z Ukrainą a G(7) - - - Hej, hej, hej sokoły - Omijajcie góry, lasy, pola, doły - Dzwoń, dzwoń, dzwoń dzwoneczku - Mój stepowy skowroneczku - Mój stepowy dzwoń, dzwoń, dzwoń - - - Ładnych dziewcząt jest nie mało - Lecz najwięcej w Ukrainie - Tam me serce pozostało - Przy kochanej mej dziewczynie - - - - Ona jedna tam została - Jaskółeczka moja, miła mała - A ja jeden w obcej stronie - Dniem i nocą tęsknię do niej - - - - Żal, żal za dziewczyną - Za kochaną Ukrainą - Żal, żal serce płacze - Już cię więcej nie zobaczę - - - - Wina, wina, wina dajcie - A jak umrę pochowajcie - Na zielonej Ukrainie - Przy kochanej mej dziewczynie. - - - - - - - - - - - - - - - - - - - - - diff --git a/songs/Wania.xml b/songs/Wania.xml deleted file mode 100644 index 28ebe3ab..00000000 --- a/songs/Wania.xml +++ /dev/null @@ -1,68 +0,0 @@ - - - - Bułat Okudżawa - - Bułat Okudżawa - Bułat Okudżawa - Wojciech Młynarski - Wańka Marozaw - - - I czegóż chcieć od tego Wani? - Wszak jego winy nie ma w tym. - Wszystkiemu winna tamta pani, - Że poszedł za nią tak jak w dym. - - - A pasowałoby mu wszystko, - Juz lepiej wszystko niż ten traf, - Że z cyrku złapie go artystka, - Na linie tańcząc pośród braw. - - - Gdy w pierwszym geście powitania - Nad głową wzniosła białą dłoń, - Wciągnęło Wanię pożądanie - Bez reszty w swą przepastną toń. - - - Marusię swą porzucił najpierw, - A potem co noc aż do dnia - Z artystką szalał w chińskiej knajpie, - A tam Marusia z żalu schła. - - - A Wania tamtej na stół ciska - Meduzy i w trzech smakach drób, - Nie wiedząc nic, że ta artystka - Wciąż wodę z mózgu robi mu. - - - Bo nie wierzymy w czas kochania, - Że miłość biedy przyda nam, - Ech, Wania, Wania, biedny Wania, - Ot spójrz - po linie idziesz sam. - - - - - - - Nadziei amatorski zespół (Nadieżdy maleńkij orkiestrik)) - Poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - - - diff --git a/songs/Wieczor.xml b/songs/Wieczor.xml deleted file mode 100644 index fae2ac4e..00000000 --- a/songs/Wieczor.xml +++ /dev/null @@ -1,70 +0,0 @@ - - - - Jerzy Reiser - - Jerzy Reiser - Browar Żywiec - - - - - Spójrz, odchodzi noc, - Odchodzi tam gdzie rosną maki. - Maków łan i bławatków modry wzór, - Modry wzór na czerwonym dywanie. - Posłuchaj, gdzieś daleko ktoś gra, - Zmienia wciąż rytm na przekór. - A jutro pójdziesz ze mną, - Odmieniona przez świt, - Uśmiechnięta, rozmarzona, - Zawstydzona jak nikt. - - - I zagrają nam muzyki wszystkich dni, - Wszystkich nocy otulonych w dobry sen, - Gdy do tańca razem znów będziemy szli, - A najdłuższy z tańców to jest właśnie ten, - Kiedy grają nam muzyki wszystkich dni, - Wszystkich nocy otulonych w dobry sen. - - - Szept, najcichszy szept, - Oddać ma najgłębszą ciszę. - Możesz nic nie mówić i tak wiem, - Co się w myślach mych zapisze. - Świeć, świeć mi gwiazdo w tę noc, - Nie chcę sama wchodzić w przyszłość. - A jutro, kiedy będę - Odmieniona przez świt, - Uśmiechnięta, rozmarzona, - Zawstydzona jak nikt. - - - Oczarują nas pejzaże wszystkich zim, - Wszystkich wiosen, w których wieczne lato trwa, - Aż zmęczeni mocno malowaniem tym, - Rozbijemy o podłogę trochę szkła - I zachwycą nas pejzaże wszystkich zim, - Wszystkich wiosen, w których wieczne lato trwa. - - - - - - - - Michał Korch - - - - - - chord positioning - - - - - - - diff --git a/songs/Winda_do_nieba.xml b/songs/Winda_do_nieba.xml deleted file mode 100644 index eac35914..00000000 --- a/songs/Winda_do_nieba.xml +++ /dev/null @@ -1,59 +0,0 @@ - - - Dwa Plus Jeden - - - Mój piękny panie, raz zobaczony w technikolorze - Piszę do pana ostatni list - Już mi lusterko z tym pana zdjęciem też nie pomoże - Pora mi dzisiaj do ślubu iść - - - Mój piękny panie ja go nie kocham, taka jest prawda - Pan główną rolę gra w każdym śnie - Ale dziewczyna przez życie nie może iść całkiem sama - Życie jest życiem pan przecież wie - - - Już mi niosą suknię z welonem - Już Cyganie czekają z muzyką - Koń do taktu zamiata ogonem - Mendelsonem stukają kopyta - - - Jeszcze ryżem sypną na szczęście - Gości tłum coś fałszywie odśpiewa - Złoty krążek mi wcisną na rękę - - I powiozą mnie windą do nieba - - - - Mój piękny panie z tego wszystkiego nie mogłam zasnąć - Więc nie mógł mi się pan przyśnić dziś - I tak odchodzę bez pożegnania jakby z nienacka - Ktoś między nami zatrzasnął drzwi - - - - - - - - Krzysiek Cz. - - - - - - - - - - - - - - - - diff --git a/songs/Wspomnienia.xml b/songs/Wspomnienia.xml deleted file mode 100644 index 5263c02f..00000000 --- a/songs/Wspomnienia.xml +++ /dev/null @@ -1,66 +0,0 @@ - - - - Leonard Cohen - - - - Maciej Zębaty - - - - Lata 50. - Brudna przepocona sala gimnastyczna - Jednej z kanadyjskich szkół - Dziewczęta tańczą parami - Chłopcy trochę pijani podpierają - Drabinki gimnastyczne - W kieszeniach pobrzękują butelki - Taniego wadliwego wina owocowego - Po 21 a może nawet po 19 centów - - - Frankie Lane właśnie śpiewał o Jesabel - Przypiąłem więc żelazny krzyż do piersi swej - Podszedłem do najwyższej z dziewcząt i najbardziej blond - Powiedziałem jeszcze nie znasz mnie i to twój wielki błąd - Więc czy pokażesz mi - Powiedz czy pokażesz mi - Gadaj czy pokażesz mi - Swe nagie ciało / swoją kolekcję motyli / swe majtki w kratkę - - - A ja skoncentruję się teraz - Przed czekającym mnie w następnej zwrotce - Niełatwym zadaniu aktorskim - Z tekstu wynika bowiem - Że będę musiał wcielić się w rolę - Niewinnej jasnowłosej kanadyjskiej nastolatki - Chodź odtańczymy w najciemniejszy kąt - Tam może nie odepchnę twoich rąk - Wyraźnie czuję w twoim głosie wielki głód - Wszystkiego czego dotknąć zechcesz będziesz mógł - Lecz nie pokażę ci - Nigdy nie pokażę ci - W życiu nie pokażę ci - Nagiego ciała / kolekcji motyli / majtek w kratkę - - - Tańczymy tak blisko, zespół zagrał ,,Star dust'' - Konfetti, baloniki lecą prosto w nas - Szepnęła masz minutę by zakochać się - W tak uroczystej chwili muszę wierzyć że - Pokażesz jednak mi - Że pokażesz w końcu mi - Że pokażesz dzisiaj mi - Swe nagie ciało / swoją kolekcję motyli / swe majtki w kratkę - - - - - - - - - - diff --git a/songs/Zazdrosc.xml b/songs/Zazdrosc.xml deleted file mode 100644 index 4b785643..00000000 --- a/songs/Zazdrosc.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - Hey - - - chwile gdy wolałabym martwym widzieć cię - Nie musiałabym się tobą dzielić nie nie - Gdybym mogła schowałabym twoje oczy w mojej kieszeni - Żebyś nie mógł oglądać tych, które są dla nas zagrożeniem - - - Do pracy nie mogę puścić cię nie nie - Tam tyle kobiet, każda w myślach gwałci cię - Złotą klatkę sprawię ci, będę karmić owocami - A do nogi przymocuję złotą kulę z diamentami - - - - - - - Krzysiek Cz. - - - - - - - - - - - - - - - - diff --git a/songs/Zbik.xml b/songs/Zbik.xml deleted file mode 100644 index 73c43ab2..00000000 --- a/songs/Zbik.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - Kołysanka - - - - - - - - Jest w Warszawie oddział zwany - „Żbikiem” - zna go świat. - Zacnych mężów ród wybrany - Sam rycerzy kwiat. - - - Każdy tu sie dobrze czuje - Jeśli chłop jak ćwik. - Reguł trzy obowiązuje - - Stosuj je - toś „Żbik”. - - - Trzeba dzień i noc pracować. - Dla pośpiechu stać. - - Obiad jadać tylko w święta. - - A, broń Boże, spać. - - - Lecz to wszystko nie jest ważne. - Każdy z nas to wie - - Kto nie w „Żbiku” na pociechę - Niechaj śpi i je. - - - Niechaj patrzy sie z zazdrością. - Jak tu dobrze nam. - - A gdy chętkę już poczuje. - Niech tu wstąpi sam! - - - Pozna, że kto wszedł do „Żbika” - Stracił serce swe. - Jaki morał stąd wynika - - - O tym każdy wie. - - - - - - - - - - Piosenka harcerska - - - - - - chord positioning - - - Kasia KowalskaMichał Korch - - - - - - Dla Wojtusia z popielnika... - diff --git a/songs/Zbroja.xml b/songs/Zbroja.xml deleted file mode 100644 index 32289585..00000000 --- a/songs/Zbroja.xml +++ /dev/null @@ -1,112 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Dałeś mi Panie zbroję - Dawny kuł płatnerz ją - W wielu pogięta bojach - W wielu ochrzczona krw - W wykutej dla giganta - Potykam się co krok - Bo jak sumienia szant - Uciska lewy bok - - - Lecz choć zaginął hełm i miecz - Dla ciała żadna w niej ostoja - To przecież w końcu ważna rzecz - Zbroja - - - Magicznych na niej rytów - Dziś nie odczyta nikt - Ale wykuta z mitów - I wieczna jest jak mit - Do ciała mi przywarła - Przeszkadza żyć i spać - A tłum się cieszy z karła - Co chce giganta grać - - - - A taka w niej powaga - Dawno zaschniętej krwi - Że czuję jak wymaga - I każe rosnąć mi - Być może nadaremnie - Lecz stanę w niej za stu - Zdejmij ją Panie ze mnie - Jeśli umrę podczas snu - - - Bo choć zaginął hełm i miecz - Dla ciała żadna w niej ostoja - To przecież w końcu ważna rzecz - Zbroja - - - Wrzasnęli hasło -- wojna! - Zbudzili hufce hord - Zgwałcona noc spokojna - Ogląda pierwszy mord - Goreją świeże rany - Hańbiona płonie twarz - Lecz nam do obrony dany - Pamięci pancerz nasz - - - Więc choć za ciosem pada cios - I wróg posiłki śle w konwojach - Nas przed upadkiem chroni wciąż - Zbroja - - - Wywlekli pudła z blachy - Napchali kul do luf - I straszą -- sami w strachu - Strzelają do ciał i słów - Zabrońcie żyć wystrzałem - Niech zatryumfuje gwałt - Nad każdym wzejdzie ciałem - Pamięci żywej kształt - - - Choć słońce skrył bojowy gaz - I żołdak pławi się w rozbojach - Wciąż przed upadkiem chroni nas - Zbroja - - - Wytresowali świnie - Kupili sobie psy - I w pustych słów świątyni - Stawiają ołtarz krwi - Zawodzi przed bałwanem - Półślepy kapłan łgarz - I z każdym nowym zdaniem - Hartuje pancerz nasz - - - Choć krwią zachłysnął się nasz czas - Choć myśli toną w paranojach - Jak zawsze chronić będzie nas - - Zbroja - - - - - - - - - - - diff --git a/songs/Zielona_dolina.xml b/songs/Zielona_dolina.xml deleted file mode 100644 index 8a16b8de..00000000 --- a/songs/Zielona_dolina.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - - Janusz Kubicki - - Trzy dni Tyłem - Trzy dni Tyłem - - - - - Chcę dzień nowy zawsze witać - Gdzieś daleko razem z tobą - Zapach siana w stajni wdychać - Kurz przebytej drogi - Chcę mieć z tobą piec kaflowy - Dwoje dzieci i podróże - Trochę słońca, a gdy trzeba - Z piorunami burze - - - Czeka nas w dolinie - Gdzieś na końcu świata - Zima sroga, a daleka - I jesienna chlapa - Czeka nas w dolinie drewniane poddasze - Dzikie wino na murze - I senny bieg zdarzeń - Czeka nas w dolinie urwana rozmowa - I kołyska pod ścianą - Buk, klon i brzoza - - - Chcę dla Ciebie słów i ciszy - Niepokojów, które łamią - Wierszy, które ukołyszą - I nie będą kłamać - Chcę dla Ciebie wrarzeń myśli - Tych nie dokończonch - Nocy, które ukołyszą - Miłość twą szaloną - - - - - - - - Taboret - - - Na podstawie informacji od p. Krzysztofa Mazurkiewicza - - - - - - - - Piosenka turystyczna - diff --git a/songs/Zielone_szkielko.xml b/songs/Zielone_szkielko.xml deleted file mode 100644 index cd37cc01..00000000 --- a/songs/Zielone_szkielko.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - Robert Kasprzycki - - Robert Kasprzycki - Robert Kasprzycki - - - - - Stoję na słońcu, łapię w palce czas - Nitki babiego lata - Patrzę na świat przez szkło bez krat - Przez dno butelki - - - Włosy rozwiane głaszczą mi twarz - Świat jest bez końca zielony - Człowiek na słońcu to właśnie ja - A może, a może nie człowiek - - - Leżę na ziemi, wdycham zapach traw - Obłoki skłębione - Zielone szkiełko całą prawdę zna - Wie dokąd idę schylony - - - Palce mi ziębną gdy przyjdzie świt - Nie wiem od rosy czy wstydu - Człowiek na ziemi to właśnie ja - A może człowieka widmo - - - Lecę gdzieś w przepaść, widzę czarne dno - Słyszę jak krew stęchnie w żyłach - Spływa po twarzy powietrza prąd - To cel mnie znalazł i wybrał - - - Znalazłem drogę, którą chcę - Przejść aż na drugą snu stronę - Zielone szkiełko przecina dłoń - - Spadam na ziemię, spadam na ziemię - - Jak promień - - - - - - - - - - - - - Onufry - - - - - - diff --git a/songs/Zielony_plomien.xml b/songs/Zielony_plomien.xml deleted file mode 100644 index bb09a6de..00000000 --- a/songs/Zielony_plomien.xml +++ /dev/null @@ -1,71 +0,0 @@ - - - - Marek Dagnan; Bogusław Choiński - - Andrzej Kurylewicz - - - - - - W dąbrowy gęstym listowiu - yska zielona skra - Trzepoce z wiatrem jak płomi - Mundur harcerski nasz - Czapka troszeczkę na bakier - Dusza rogata w niej - Wiatr polny w uszach i kwiaty - W pachnących włosach drzew - - - Tam gdzie się kończy horyzont - Leży nieznany ląd - Ziemia jest trochę garbata - Więc go nie widać stąd - Kreską przebiega błękitną - Strzępioną pasmem gór - Żeglują ku tej granicy - Białe okręty chmur - - - Gdzie niskie niebo usypia - Na rosochatych pniach - Gdziekolwiek namiot rozpinam - Będzie kraina ta - Zieleń o zmroku wilgotna - Z niebieską plamką dnia - Cisza jak gwiazda ogromna - W grzywie złocistych traw - - - W dąbrowy gęstym listowiu - yska zielona skra - Trzepoce płomień zielony - Mundur harcerski nasz - Czapka troszeczkę na bakier - Lecz nie poprawiaj jej - Polny za uchem masz kwiatek - - Duszy rogatej lżej - - - - - - - - - Piosenka harcerska - - - - - chord positioning - - - Onufry - - Nie jestem pewien autorów, to wynik google testu. Tak samo czy "namiot rozpinam" czy "namiot rozpinasz" rozstrzygnąłem google testem z wynikiem 34:13 - - diff --git a/songs/Zima.xml b/songs/Zima.xml deleted file mode 100644 index d7abcc15..00000000 --- a/songs/Zima.xml +++ /dev/null @@ -1,66 +0,0 @@ - - - - Robert Leonhard - - Robert Leonhard - Małżeństwo z Rozsądku - - - - - Zima znów się zaczyna - Tak samo wtedy padał śnieg - Zima dziś przypomina - Jak pierwszy raz spotkali się - - - Jak strumień płynął śpiew - I jej niewinny śmiech - A ich oczy po niebie - Szukając wciąż siebie - Błądziły jak gwiazdy we śnie - - - Zima już przyszła zima - Za szybą zimny wicher dmie - Zima znów mrozi klimat - A w sercach ogień pali się - - - Jak strumień płynie śpiew - I jej niewinny śmiech - A ich oczy po niebie - Szukając wciąż siebie - Dziś błądzą jak gwiazdy we śnie - - - Zima już wiedzie prymat - Wokół niej wszystko kręci się - Zima ta sama zima - Wyłoni z chłodu chwile te - - - Jak strumień płynął śpiew - I jej niewinny śmiech - A ich oczy po niebie - Szukając wciąż siebie - - - - - - - - - - - - - Onufry - - - - - - diff --git a/songs/Znow_wedrujemy.xml b/songs/Znow_wedrujemy.xml deleted file mode 100644 index e3754c3e..00000000 --- a/songs/Znow_wedrujemy.xml +++ /dev/null @@ -1,72 +0,0 @@ - - - - Krzysztof Kamil Baczyński - - Grzegorz Turnau - Grzegorz Turnau - - - - - Znów wędrujemy ciepłym krajem - Malachitową łąką morza - Ptaki powrotne umierają - Wśród pomarańczy na rozdrożach - Na fioletowoszarych łąkach - Niebo rozpina płynność arkad - Pejzaż w powieki miękko wsiąka - Zakrz epła sól na nagich wargach - - - A wiczorami w prądach zatok - Noc liże morze słodką grzywą - Jak miękkie gruszki brzmieje lato - Wiatrem sparzone jak pokrzywą - Przed fontannami perłowymi - Noc winogrona gwiazd rozdaje - Znów wędrujemy ciepłą ziemią - Znów wędrujemy ciepłym - Krajem - Malachitową łąką morza - Ptaki powrotne umierają - Wśród pomarańczy na rozdrożach - - - - Znów wędrujemy ciepłym krajem - Malachitową łąką morza - Ptaki powrotne umierają - Wśród pomarańczy na rozdrożach - Przed fontannami perłowymi - Noc winogrona gwiazd rozdaje - Znów wędrujemy ciepłą ziemią - Znów wędrujemy ciepłym - Krajem - Malachitową łąką morza - - - - - - - - - - - - - - - - - - - chord positioning - - - Kuba - - - - diff --git a/songs/Zolnierzyk.xml b/songs/Zolnierzyk.xml deleted file mode 100644 index d4939ce5..00000000 --- a/songs/Zolnierzyk.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - Bułat Okudżawa - - Bułat Okudżawa - Bułat Okudżawa - Witold Dąbrowski - Piesienka o bumażnam sałdatie - - - Raz pewien żołnierz sobie żył, - Odważny i zawzięty, - Lecz cóż?… zabawka tylko był, - Z kartonu był wycięty. - - - Choć zmieniać świat i zwalczać zło - Niezmiennie był gotowy, - Stał ciągle wśród zabawek, bo - Był tylko papierowy. - - - I w ogień gotów był, jak w dym, - Pójść za Was bez namowy, - I mieliście sto pociech z nim — - Bo był on papierowy. - - - I nie ujawniał przed nim sztab - Tajemnic swych wojskowych. - A czemu tak? A temu tak, - Że był on papierowy. - - - Wyzywał los, w pogardzie miał - Tchórzliwych maruderów, - I „Ognia! Ognia!” ciągle łkał, - Choć przecież był z papieru. - - - Niejeden wódz już w ogniu znikł, - Niejeden szeregowy… - I poszedł w ogień… Zginął w mig - Żołnierzyk papierowy. - - - - - - - Do widzenia, chłopcy (Do swidanija, malczyki) - Poezja śpiewana - - - - chord positioning - - - Michał Korch Krzysiek Cz. - - - - - - - diff --git a/songs/Zrodlo.xml b/songs/Zrodlo.xml deleted file mode 100644 index e80ffd44..00000000 --- a/songs/Zrodlo.xml +++ /dev/null @@ -1,70 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Płynie rzeka wąwozem jak dnem koleiny, która samą siebie żłobiła - Rosną ściany wąwozu, z obu stron coraz wyżej, tam na górze są ponoć równiny; - I im więcej tej wody, tym się głębiej potoczy - Sama biorąc na siebie cień zboczy... - - - Piach spod nurtu ucieka, nurt po piachu się wije, własna w czeluść ciągnie go siła. - Ale jest ciągle rzeka na dnie rozpadliny, jest i będzie, będzie jak była, - Bo źródło - Bo źródło - Wciąż bije. - - - A na ścianach wąwozu pasy barw i wyżłobień, tej rzeki historia tych brzegów - - Ślady głazów rozmytych, cienie drzew powalonych, muł zgarnięty pod siebie wbrew sobie - A hen, w dole blask nikły ciągle ziemię rozcina, - Ziemia nad nim się zrastać zaczyna... - - - Z obu stron żwir i glina, by zatrzymać go w biegu, woda syczy i wchłania Lecz żyje - I zakręca, omija, wsiąka, wspina się, pieni, ale płynie, wciąż płynie wbrew brzegom - - Bo źródło - Bo źródło - Wciąż bije. - - - I są miejsca gdzie w szlamie woda niemal zastygła pod kożuchem brudnej zieleni; - Tam ślad, prędzej niż ten co zostawił go, znika - niewidoczne bagienne są sidła. - Ale źródło wciąż bije, tłoczy puls między stoki, - Więc jest nurt, choć ukryty dla oka! - - - Nieba prawie nie widać, czeluść chłodna i ciemna, niech się sypią lawiny kamieni! - I niech łączą się zbocza bezlitosnych wąwozów, - Bo cóż drąży kształt przyszłych przestrzeni - Jak nie rzeka podziemna? - Groty w skałach wypłucze, żyły złote odkryje - - Bo źródło - Bo źródło - Wciąż bije. - - - - - - - - - - - - - Onufry - - - - - - diff --git a/songs/alpuhara.xml b/songs/alpuhara.xml deleted file mode 100644 index 6b98ed93..00000000 --- a/songs/alpuhara.xml +++ /dev/null @@ -1,163 +0,0 @@ - - - - Adam Mickiewicz - - - - - - - - Już w gruzach leżą Maurów posady, - Naród ich dźwiga żelaza, - Bronią się jeszcze twierdze Grenady, - Ale w Grenadzie zaraza. - - - Broni się jeszcze z wierz Alpuhary - Almanzor z garstką rycerzy, - Hiszpan pod miastem zatknął sztandary, - Jutro do szturmu uderzy. - - - O wschodzi słońca ryknęły spiże, - Rwą się okopy, mur wali, - Już z minaretów błysnęły krzyże, - Hiszpanie zamku dostali. - - - Jeden Almanzor widząc swe roty - Zbite w upornej obronie, - Przerżnął się między szable i groty, - Uciekł i zmylił pogonie. - - - Hiszpan na świeżej zamku ruinie, - Pomiędzy gruzy i trupy, - Zastawia ucztę, kąpie się w winie, - Rozdziela brańce i łupy. - - - Wtem straż oddźwierna wodzom donosi, - Że rycerz z obcej krainy - O posłuchanie co rychlej prosi, - Ważne przynosząc nowiny. - - - Był to Almazor, król muzułmanów, - Rzucił bezpieczne ukrycie, - Sam się oddaje w ręce Hiszpanów - I tylko błaga o życie. - - - Hiszpanie -- woła -- na waszym progu, - Przychodzę czołem uderzyć, - Przychodzę służyć waszemu Bogu, - Waszym prorokom uwierzyć. - - - Niechaj rozgłosi sława przed światem, - Że Arab, król zwalczony, - Swoich zwyciężców chce zostać bratem, - Wasalem obcej korony. - - - Hiszpanie męstwo cenić umieją; - Gdy Alamnzora poznali, - Wódz go uścisnął, inni koleją - Jak towarzysza witali. - - - Almanzor wszystkich wzajemnie witał, - Wodza najczulej uścisnął, - Objął za szyję, za ręce chwytał, - Na ustach jego zawisnął. - - - A wtem osłabnął, padł na kolana, - Ale rękami drżącemi - Wiążąc swój zawój do nóg Hiszpana - Ciągnął się za nim po ziemi. - - - Spojrzał dokoła, wszystkich zadziwił, - Zbladłe, zsiniałe miał lice, - Śmiechem okropnym usta wykrzywił, - Krwią mu nabiegły źrenice. - - - Patrzcie, o giaury! jam siny, blady, - Zgadnijcie czyim ja posłem? - Jam was oszukał, wracam z Grenady, - Ja wam zarazę przyniosłem. - - - Pocałowniem wszczepiłem w duszę - Jad, co was będzie pożerał, - Pójdźcie i patrzcie na me katusze: - Wy tak musicie umierać! - - - Rzuca się, krzyczy, ściąga ramiona, - Chciałby uściśnieniem wiecznym - Wszystkich Hiszpanów przykuć do łona; - Śmieje się śmiechem serdecznym. - - - Śmiał się -- już skonał -- jeszcze powieki, - Jeszcze się usta nie zwarły. - I śmiech piekielny został na wieki - Do zimnych liców przywarły. - - - Hiszpanie trwożni z miasta uciekli, - Dżuma za nimi w ślad biegła; - Z gór Alpuhary nim się wywleki, - Reszta ich wojska poległa. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - chords - - - Michał Korch - - - - - - - - - - - diff --git a/songs/bruces.xml b/songs/bruces.xml deleted file mode 100644 index c56e8682..00000000 --- a/songs/bruces.xml +++ /dev/null @@ -1,58 +0,0 @@ - - - - Monty Python - - Monty Python - Monty Python - - - - - Immanuel Kant was a real piss-ant - who was very rarely stable. - Heideggar, Heideggar was a boozy beggar - who could think you under the table. - David Hume could out-consume - Schoppenhauer and Hegel. - And Whittgenstein was a beery swine - who was just as sloshed as Schlegel. - - - There's nothing Nietzsche couldn't teach 'ya - 'bout the raising of the wrist. - Socrates, himself, was permanently pissed. - - - John Stewart Mill, of his own free will - On half a pint of shanty was particularly ill. - Plato they say could stick it away, - Half a crate of whiskey every day. - Aristotle, Aristotle was a bugger for the bottle, - And Hoppes was fond of his dram. - And Rene Descartes was a drunken fart. - "I drink, therefore I am." - - - Yes, Socrates himself is particularly missed; - A lovely little thinker, but a bugger when he's pissed. - - - - - - - - - - - - - - Krzysiek Cz. - - - - - - diff --git a/songs/ciwszyscyludzie.xml b/songs/ciwszyscyludzie.xml deleted file mode 100644 index 29999e4a..00000000 --- a/songs/ciwszyscyludzie.xml +++ /dev/null @@ -1,74 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Ci wszyscy ludzie, którzy poszli precz - Z naszego życia, z naszego życia, - To także nasza rzecz, nie tylko ich to rzecz, - To stawka winy nie do przebicia. - To także nasza rzecz, nie tylko ich to rzecz, - To stawka winy nie do przebicia. - - - Ci wszyscy ludzie, których kazał minąć - Nasz pośpiech nagły, nasz pośpiech nagły, - Nieodwracalnie z pamięci naszej giną - I całych światów kształt odchodzi w diabły. - Nieodwracalnie z pamięci naszej giną - I całych światów kształt odchodzi w diabły. - - - Ci wszyscy ludzie, których nie ma j - (Nas dla nich nie ma też, nas dla nich nie ma) - Wiedzą, że nawet nie wiemy gdzie ich grób, - Że oni dla nas to tylko rozmów temat. - Wiedzą, że nawet nie wiemy gdzie ich grób, - Że oni dla nas to tylko rozmów temat. - - - Ci wszyscy ludzie, którzy wokół nas - Zawsze - nie tacy, zawsze - nie tacy, - Niegodni rozmów i niegodni łask - - Są, żyją, błądzą, więc nie mają racji. - Niegodni rozmów i niegodni łask - - Są, żyją, błądzą, więc nie mają racji. - - - Ci wszyscy ludzie, czyli wszyscy - my - My pominięci, my pochowani, - Żyjemy, jak pozwalaliśmy żyć -- - Niepamiętanym, niewysłuchanym. - Żyjemy, jak pozwalaliśmy żyć -- - Niepamiętanym, niewysłuchanym. - - - - - - - - - - Dzieci Hioba - Poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/cos.xml b/songs/cos.xml deleted file mode 100644 index 5be2c1fc..00000000 --- a/songs/cos.xml +++ /dev/null @@ -1,38 +0,0 @@ - - - - Jakub Pochrybniak - Gra się bodajże na strunie E basowej ,,glissando'' wszystkie dźwięki w górę a potem w dół... - Jakub Pochrybniak - 21. WDH „Stare Żbiki” - - - - - Był koń, - zdechł koń, - fajny był, - szkoda go. - - - - - - - - - - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/czarny_kot.xml b/songs/czarny_kot.xml deleted file mode 100644 index a3acddb8..00000000 --- a/songs/czarny_kot.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - Bułat Okudżawa - - Bułat Okudżawa - Bułat Okudżawa - Witold Dąbrowski - Czornyj kot - - - Na podwórku, tuż za bramą, - Czarnej sieni czarny wlot. - W sieni dzień i noc tak samo - Rezyduje Czarny Kot. - - - Uśmiechając się pod wąsem, - Czai się w ciemnościach, łotr. - Drą się koty wniebogłosy, - Ale milczy Czarny Kot. - - - Myszy dawno już nie łowi, - Stroszy wąs i śmieje się -- - Łapie wszystkich nas za słowo - I kiełbasę naszą żre. - - - Ani żąda, ani prosi, - Kryje w ślepiach żółty blask. - Każdy sam mu coś wynosi, - Jeszcze mu się kłania w pas. - - - Nie zamiauczy ani razu, - Ale z sieni - ani rusz; - O framugę ostrzy pazur, - Jakbyś miał na gardle nóż! - - - Stąd też wszyscy przygnębieni, - Wszystko w domu - byle jak... - Światło by założyć w sieni... - Ale jakoś chętnych brak! - - - - - - - - - poezja śpiewana - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/czas.xml b/songs/czas.xml deleted file mode 100644 index d85beeea..00000000 --- a/songs/czas.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - Maciej Służała - W refren po zwrotkach wchodzi drugi głos jeszcze podczas trwania ostatniej linijki zwrotki. - Maciej Służała - Krążek - - - - - Czas płynie wciąż tak jak wąż poplątany ogon - Dnia minionego mgłą ktoś wypatruje nocą - Gwiazd zimny śmiech wiatru gwizd szary przedsmak świata - Jest nie ma nic chwil minionych już nie złapiesz. - Tylko czas płynie wciąż tak jak wąż poplątany ogon - Dnia minionego mgłą ktoś wypatruje nocą - Gwiazd zimny śmiech wiatru gwizd szary przedsmak świata - Jest nie ma nic chwil minionych już nie złapiesz. - - - Spójrz! Oto życia twego tajemnicza księga. - Pisana piórem gwiazd, atramentem tęczy. - W ozdobnych kartach zatrzymany czas. - Burzowe chmury, słoneczny blask. - Świat znany i nieznany... - - - - Patrz! W pajęczynę zawiązane twoje drogi. - Poplątane wiatrem, pomylone mrokiem. - W zaułków gąszczu, spłoszona myśl. - Iluzja, przepaść, wątła nić. - Ostrożnie stawiasz kroki! - - - - Spójrz! W starym kotle kipi wywar z twoich marzeń. - Pragnienie, żądza, potrzeba, władza. - W kipieli wiary - namiętności błysk. - W oparach jawy - tęsknoty krzyk: - Obejrzyj się za siebie! - - - - - - Wiedz! Ja znam wszystkie twoje tajemnice. - Układam twoje myśli. Niczego nie ukryjesz. - To moja dłoń układa twój szlak. - Pod nogi piasek czy w plecy wiatr. - Beze mnie nic nie znaczysz! - - - Czas płynie wciąż tak jak wąż poplątany ogon - Dnia minionego mgłą ktoś wypatruje nocą - Gwiazd zimny śmiech wiatru gwizd szary przedsmak świata - Jest nie ma nic chwil minionych już nie złapiesz. - - Tylko czas płynie wciąż tak jak wąż poplątany ogon - Dnia minionego mgłą ktoś wypatruje nocą - Gwiazd zimny śmiech wiatru gwizd szary przedsmak świata - Jest nie ma nic chwil minionych już nie złapiesz. - - - - - - - - - Poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - diff --git a/songs/dezyderata.xml b/songs/dezyderata.xml deleted file mode 100644 index a4a7e76b..00000000 --- a/songs/dezyderata.xml +++ /dev/null @@ -1,107 +0,0 @@ - - - - Max Ehrmann - Wikipedia: Dezyderata (od łac. desideratio - życzenie, pragnienie, potrzeba) to poemat napisany przez Maksa Ehrmanna, zawierający wskazówki na temat dobrego życia. - -Utwór powstał w 1927 roku. W roku 1933 autor złożył go w formie życzeń na Boże Narodzenie dla przyjaciół. W 1948 wdowa po Ehrmannie opublikowała go w tomiku The poems of Max Ehrmann, skąd dwa lata później, w 1950, do zbioru nabożnych pieśni zaczerpnął go pastor kościoła pod wezwaniem Św. Pawła w Baltimore. Dopiero tą drogą Dezyderata dostała się do kultury masowej. Plotka na temat anonimowego autora i błędna data powstania - 1692 rok - pochodzą stąd, że strona, na której znajdował się tekst utworu w owym zbiorze, miała nagłówek z informacją: "Stary kościół św. Pawła" i datą 1692 (w rzeczywistości to data budowy kościoła). Wskutek częstego kopiowania jedynie tej strony, informacja zaczęła być błędnie odczytywana. Dezyderata jest uznawana za nieoficjalny hymn ruchu Anonimowych Alkoholików, odwoływali się do niej także hippisi. Znane wykonania w postaci piosenki napisanej na jej podstawie przez Lesa Crane'a z muzyką Freda Wernera (po raz pierwszy nagrana w 1970 przez brytyjską grupę Every Which Way) oraz piosenki kabaretu Piwnica pod Baranami. - Piotr Walewski - Piwnica pod Baranami - Andrzej Jakubowicz - - - - - Dezyderata, dezyderata... - Przechodź spokojnie przez hałas i pośpiech - i pamiętaj, jaki spokój można znaleźć w ciszy. - O ile to możliwe bez wyrzekania się siebie - bądź na dobrej stopie ze wszystkimi. - - Wypowiadaj swoją prawdę - jasno i spokojnie, - wysłuchaj innych, - nawet tępych i nieświadomych, - - oni też mają - swoja opowieść, - - oni też mają opowieść. - - - - Unikaj głośnych i napastliwych, - - unikaj głośnych są udręką ducha. - Niech twoje osiągnięcia zarówno jak plany - będą dla Ciebie źródłem radości. - Bądź ostrożny w interesach, bądź ostrożny w interesach, - na świecie bowiem pełno oszustwa. - Bądź sobą, zwłaszcza - nie udawaj uczucia. - - Ani też nie podchodź - cynicznie do miłości, - bo ona jest - wieczna jak trawa, - bo ona jest wieczna. - - - Unikaj głośnych i napastliwych, - - unikaj głośnych, są udręką ducha. - Przyjmij spokojnie co ci lata doradzają - z wdziękiem wyrzekając się spraw młodości. - Jesteś dzieckiem wszechświata nie mniej niż drzewa i gwiazdy, - masz prawo być tutaj. - - Tak więc żyj w zgodzie z Bogiem, - czymkolwiek On ci się wydaje, - w zgiełkliwym pomieszaniu - życia zachowaj spokój, - w zgiełkliwym pomieszaniu - życia zachowaj - spokój ze swą duszą. - - - Przy całej swej złudności, - znoju i rozwianych marzeniach - jest to piękny świat, jest to piękny świat. - - - Znalezione w starym kościele - Świętego Pawła w Baltimore. - datowane tysiąc sześćset dziewiędziesiąty drugi rok. - - - - Przy całej swej złudności, - znoju i rozwianych marzeniach - jest to piękny świat, jest to piękny świat. - - - - - - - - - - - - - - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/dla_michasia.xml b/songs/dla_michasia.xml deleted file mode 100644 index 98aecc5f..00000000 --- a/songs/dla_michasia.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - - - Nie znam autorów!!! - - - - - - - Nie wierzyłem, dobry Boże, - Że się zdarzyć tyle może, - Że cię kiedyś, mały synku, będę miał. - Spadłeś z nieba mi akurat, - Kiedy szedłem z głową w chmurach -- - -- Niedospany, skacowany i jak palec sam. - - - Dam Ci plecak pełen marzeń, - Grać nauczę na gitarze, - Na barana Cię przeniosę - Przez świat smutny jak kalosze. - - - Miejsca zagrzać nie umiałem, - Trochę grałem, malowałem, - Życie mi się nieustannie wychylało z ram. - Spadłeś z nieba mi akurat, - Kiedy szedłem z głową w chmurach -- - Niedospany, skacowany i jak palec sam. - - - - Może kiedyś Ci opowiem, - Kim są ludzie, a kim człowiek, - O jaszczurkach w skórze kobiet, które sączą jad. - Może kiedyś -- a na razie - Dam Ci plecak pełen marzeń - I poniosę na barana przez parszywy świat. - - - - - - - - - - - - - chord positioning - - - Michał Korch - - Nie znam autorów!!! - - - diff --git a/songs/dwieskaly.xml b/songs/dwieskaly.xml deleted file mode 100644 index b67e4939..00000000 --- a/songs/dwieskaly.xml +++ /dev/null @@ -1,79 +0,0 @@ - - - Two Rocks - Jacek Kaczmarski - Refren -- agresywnie, zwrotki -- łagodnie, w ostatniej o jeden ton w górę. - Jacek Kaczmarski - Jacek Kaczmarski - - - - - - Po sztormach, burzach, nawałnicach, szkwałach - Na dwóch bliźniaczych zamieszkałem skałach. - Trzymam się obu w ciszy i zawiei -- - Skały rozpaczy i skały nadziei. - - - Obie prastare i obie rzeźbione - Siłą żywiołów nieświadomych znaczeń; - Skałą rozpaczy -- nadzieje stracone, - Skałą nadziei -- przetrwane rozpacze. - - - Po sztormach, burzach, nawałnicach, szkwałach - Na dwóch bliźniaczych zamieszkałem skałach. - Od świtu do zmierzchu, od zmierzchu do świtu - Na skale grozy i skale zachwytu. - - - Obie potężne i obie wspaniałe - Wbrew horyzontom posągowe pozy; - Na skale grozy - zachwyty zwietrzałe, - W skale zachwytu - ciemna ruda grozy. - - - Po sztormach, burzach, nawałnicach, szkwałach - Na dwóch bliźniaczych zamieszkałem skałach. - Czekały na mnie przecież od początku: - Skała szaleństwa i skała rozsądku. - - - Obie lekarstwem przeciw nudzie ducha, - Obie modlitwy godne i przekleństwa; - W skale szaleństwa - rozsądku grań krucha, - W skale rozsądku - jaskinie szaleństwa. - - - Po sztormach, burzach, nawałnicach, szkwałach - Na dwóch bliźniaczych zamieszkałem skałach. - Jedna dla drugiej lustrem i wyrzutem, - A przecież z jednej energii wyklute. - - - Łączy je w głębiach niewidoczny korzeń - Którym na trwałe w sedno bytu wbite; - Tam, gdzie rozsądek - rozpaczą i grozą - Nadzieja - szaleństwem, szaleństwo - zachwytem. - - - - - - - Dwie Skały - - - - - - chord positioning - - - Michał Korch - - - - - diff --git a/songs/dzungla.xml b/songs/dzungla.xml deleted file mode 100644 index f4ac8cd7..00000000 --- a/songs/dzungla.xml +++ /dev/null @@ -1,114 +0,0 @@ - - - - 281. WDH - Spisane na podstawie maila od 281., być może nie dokładnie. - 281. WDH - 281. WDH - - - - - Szedłem kiedyś po pustyni, - Tam mnie napadł goryl dziki, - - - Hej, hej, hej, hej, hej, - - - - A pustynia była wielka, - Więc na drzewo jemu zwiałem. - - - Hej, hej, hej, hej, hej, - ungla, dżungla, pustynia, - ungla, dżungla, pustynia - ungla, dżungla, pustynia. - - - Pewnej księżycowej nocy - Kobra zjadła mi pięć kocy, - - - - Zawinięty w szósty byłem - - I dynamit podpaliłem. - - - - Raz tubylcy mnie złapali, - No i zjeść mnie zamierzali, - - - - - Ale ja co jeść nie miałem - - I ich wszystkich pozjadałem. - - - - Proszę państwa oto miś, - Miś jest bardzo grzeczny dziś, - - - - Chętnie państwu łapę poda, - Nie chce podać, a to szkoda. - - - - Dzik jest dziki, dzik jest zły, - Dzik ma bardzo ostre kły, - - - - Kto spotyka w lesie dzika, - Ten na drzewo zaraz zmyka. - - - - Na go, na go, na gondoli, - Pewna para się całuje, - - - - Wietrzyk bardzo łajbą buja, - - Ona trzyma go za rękę. - - - - - Idzie harcerz borem, lasem, - Wymachuje swym kompasem, - - - - - A harcerka robi zupę, - Harcerz łapię ją za słowa. - - - - - - - - - - - - - - chord positioning - - - Michał Korch - - Nie wiem do końca jak jest z refrenami. - - - \ No newline at end of file diff --git a/songs/en/A_Wee_drap_O_Whisky.xml b/songs/en/A_Wee_drap_O_Whisky.xml new file mode 100644 index 00000000..7def92b6 --- /dev/null +++ b/songs/en/A_Wee_drap_O_Whisky.xml @@ -0,0 +1,49 @@ + + + + + A wee drappie whisky, oh when I am wearied + Ma blood it will warm, my spirits will cheer + For when I sit doon, I intend to be merry + Come fill up a bumper and hand it round here. + + + I can scarce get a hauf oor, oh when I am wearied + To tell you the truth that I'm vrocht (wrought) very sore + My ploo and my lassie is a' my whole pleasure + We'll both tak' a kiss an' hae a drap more. + + + Contented I sit and contented I labour + Contented I drink and contented I sing + I never dispute nor fall oot wi' my neebors + For that is a mean and a contentious thing. + + + Oh few, very few ever hear me compleenin + Though ofttimes the load of oppression I bear + Oh fat is the use o a man aye compleenin' + For aye fan he tastes, he maun hae a drap mair. + + + Come noble waiter, bring in a large measure, + I mean hauf a mutchkin the best o' the toon + An' when it is drunken, it's time to bejoggin + We'll gang merrily hame wi' the canniest carl. + + + So good night to you all, I think it's but reason, + Altho' that the whisky speaks lood in my ear + Good night and safe home, till farther occasion + We'll a' meet in friends and hae a drap mair. + + + + + + + Krzysiek Cz. + + + piosenka szkocka + diff --git a/songs/Always_look_on_the_bright_side_of_life.xml b/songs/en/Always_look_on_the_bright_side_of_life.xml similarity index 59% rename from songs/Always_look_on_the_bright_side_of_life.xml rename to songs/en/Always_look_on_the_bright_side_of_life.xml index 62133329..1258deba 100644 --- a/songs/Always_look_on_the_bright_side_of_life.xml +++ b/songs/en/Always_look_on_the_bright_side_of_life.xml @@ -1,21 +1,23 @@ - - Monthy Python - + + Bright Side of Life + Eric Idle + Monthy Python + - Some things in life are bad they can really make you mad + Some things in life are bad they can really make you mad Other things just make you swear and curse - When you've chewing a life's gristle Don't grumble give a whistle + When you've chewing a life's gristle Don't grumble give a whistle And this'll help things turn out for the best And always look on the bright side of life - Always look on the light side of life + Always look on the light side of life If life seems jolly rotten there's something you've forgotten and that's to laugh and smile and dance and sing. - When you're feeling in the dumps don't be silly chumps + When you're feeling in the dumps don't be silly chumps Just purse your lips and whistle - that's the thing @@ -33,8 +35,8 @@ just before you draw your terminal breath - Life's a pice of shit when you look at it - Life's a laugh and death's a joke that's true + Life's a pice of shit when you look at it + Life's a laugh and death's a joke that's true You'll see it's all a show keep'em laughing as you go just remember that the last laugh is on you @@ -42,33 +44,26 @@ And always look on the bright side of life Always look on the right side of life - + (Come on guys, cheer up) Always look on the right side of life - Always look on the right side of life .... + Always look on the right side of life . - - - + + Brian + Piosenka kabaretowa - Poprawiony tekstKrzysiek Cz. poprawione literówki - - + + + + + Poprawiony tekst + Krzysiek Cz. poprawione literówki + Twórcy na bazie wikipedii: + https://en.wikipedia.org/wiki/Always_Look_on_the_Bright_Side_of_Life - - - - - - - - - - - - - + \ No newline at end of file diff --git a/songs/en/Bruces_Philosophers_song.xml b/songs/en/Bruces_Philosophers_song.xml new file mode 100644 index 00000000..34a78017 --- /dev/null +++ b/songs/en/Bruces_Philosophers_song.xml @@ -0,0 +1,58 @@ + + + + Monty Python + + Monty Python + Monty Python + + + + + Immanuel Kant was a real piss-ant + who was very rarely stable. + Heideggar, Heideggar was a boozy beggar + who could think you under the table. + David Hume could out-consume + Schoppenhauer and Hegel. + And Whittgenstein was a beery swine + who was just as sloshed as Schlegel. + + + There's nothing Nietzsche couldn't teach 'ya + 'bout the raising of the wrist. + Socrates, himself, was permanently pissed. + + + John Stewart Mill, of his own free will + On half a pint of shanty was particularly ill. + Plato they say could stick it away, + Half a crate of whiskey every day. + Aristotle, Aristotle was a bugger for the bottle, + And Hoppes was fond of his dram. + And Rene Descartes was a drunken fart. + "I drink, therefore I am." + + + Yes, Socrates himself is particularly missed; + A lovely little thinker, but a bugger when he's pissed. + + + + + + + + + + + + + + Krzysiek Cz. + + + + + + diff --git a/songs/en/I_m_a_rover_and_seldom_sober_.xml b/songs/en/I_m_a_rover_and_seldom_sober_.xml new file mode 100644 index 00000000..c43d1ca6 --- /dev/null +++ b/songs/en/I_m_a_rover_and_seldom_sober_.xml @@ -0,0 +1,77 @@ + + + + + + + + + + + + I'm a a rover and seldom sober + I'm a rover, o' high degree; + And when I'm drinking, I'm always thinking + How to gain my love's company. + + + Though the nicht be dark as dungeon + No' a star to be seen above, + I will be guided without a stumble + Into the airms o' my ain true love. + + + He steppit up to her bedroom window, + Kneelin' gently upon a stone; + He rappit at her bedroom-window + "Darlin' dear, do you lie alone?" + + + She raised her heid on her snaw-white pillow + Wi' her arms aboot her breast, + "Wha' is that at my bedroom window + Disturbin' me at my lang night's rest?" + + + "It's only me, your ain true lover, + Open the door and let me in. + For I hae come on a lang journey, + And I'm near drenched to the skin." + + + She opened the door wi' the greatest pleasure, + She opened the door and let him in, + They baith shook hands and embraced each other + Until the mornin' they lay as one. + + + The cocks were crawin', the birds were whistlin' + The burns they ran free abune the brae; + "Remember, lass, I'm a ploughman laddie + And the fairmer I must obey." + + + "Noo, my lass, I must gang and leave thee + And though the hills they are high above, + I will climb them wi' greater pleasure + Since I been in the airms o' my love. + + + + + + + + + + + + + + + + + + + piosenka szkocka + diff --git a/songs/en/Let_it_be.xml b/songs/en/Let_it_be.xml new file mode 100644 index 00000000..cb88f0e2 --- /dev/null +++ b/songs/en/Let_it_be.xml @@ -0,0 +1,41 @@ + + + The Beatles + + + When I find myself in times of trouble, Mother Mary comes to me + Speaking words of wisdom, let it be + And in my hour of darkness, She is standing right in front of me + Speaking words of wisdom, Let it be + + + Let it be, let it be, let it be, let it be + Whisper words of wisdom, let it be + + + And when the broken hearted people, Living in the world agree + There will be an answer, let it be + But though they may be parted, There is still a chance that they may see + There will be an answer, let it be + + + Let it be, let it be, let it be, let it be + There will be an answer, let it be + + Let it be, let it be, let it be, let it be + Whisper words of wisdom, let it be + + + + And when the night is cloudy, There is still a light that shines on me + Shine on till tomorrow, let it be + I wake up to the sound of music, Mother Mary comes to me + Speaking words of wisdom, let it be + + + + + + + + diff --git a/songs/en/Lumberjack_s_song.xml b/songs/en/Lumberjack_s_song.xml new file mode 100644 index 00000000..fdaa465e --- /dev/null +++ b/songs/en/Lumberjack_s_song.xml @@ -0,0 +1,101 @@ + + + + Monty Python + + + + + + + + Lumberjack: + I never wanted to be in such a shambledy sketch. + I always wanted to be…a lumberjack! + Leaping from tree to tree… + as they float down the mighty rivers of British Columbia! + The larch…the redwood…the mighty sequioa… + with my best girl by my side! + The giant deadwood, the spruce… + the little Californian root tree! We'd sing, sing, sing! + + + Lumberjack : + I'm a lumberjack and I'm OK, + I sleep all night and I work all day. + + + Choir and Girl : + He's a lumberjack and he's OK, + he sleeps all night and he works all day. + + + Lumberjack : + I cut down trees, I eat my lunch, I go to the lavatory. + On Wednesdays I go shopping, and have buttered scones for tea. + + Choir : + He cuts down trees, he eats his lunch, he goes to the lavatory. + On Wednesdays he goes shopping, and has buttered scones for tea. + + + Lumberjack : + I'm a lumberjack and I'm OK, + I sleep all night and I work all day. + + Choir : + He's a lumberjack and he's OK, + he sleeps all night and he works all day. + + + Lumberjack : + I cut down trees, I skip and jump, I like to press wild flowers. + I put on women's clothing, and hang around in bars. + + Choir : + He cuts down trees, he skips and jumps, he likes to press wild flowers. + He puts on women's clothing, and hangs around in bars? + + + Lumberjack: + I'm a lumberjack and I'm OK, + I sleep all night and I work all day . + + Choir and Girl : + He's a lumberjack and he's OK, + he sleeps all night and he works all day. + + + Lumberjack : + I cut down trees, I wear high heels, suspenders and a bra. + I wish I'd been a girlie, just like my dear papa. + + Choir : + He cuts down trees, he wears high heels, suspenders and a bra? + + John Cleese: What kind of god damn fairy cunny fairy faggot… + + + All except Girl : + I'm a lumberjack and I'm OK, + I sleep all night and I work all day. + I'm a lumberjack and I'm OK! + + + + + + + + + + + + + + + + + + + diff --git a/songs/Yellow_submarine.xml b/songs/en/Yellow_submarine.xml similarity index 86% rename from songs/Yellow_submarine.xml rename to songs/en/Yellow_submarine.xml index 3a46423a..610d15e4 100644 --- a/songs/Yellow_submarine.xml +++ b/songs/en/Yellow_submarine.xml @@ -1,10 +1,10 @@ - + The Beatles In the town where I was born - Lived a man who sailed the sea. + Lived a man who sailed the sea. And he told us of his life In the land of submarines. @@ -15,7 +15,7 @@ In our yellow submarine. - We all live in a yellow submarine, + We all live in a yellow submarine, Yellow submarine, yellow submarine. / 2x diff --git a/songs/jasio.xml b/songs/jasio.xml deleted file mode 100644 index 10e4101e..00000000 --- a/songs/jasio.xml +++ /dev/null @@ -1,135 +0,0 @@ - - - Głupi Jasio - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Ojców dom pożegnał głupi Jasio, - Szukać Wody Życia rad nierad. - Stopy ścisnął swym niedobrym braciom, - Którzy siłą go wysłali w świat. - Schedę jego wezmą i zmarnują -- - Nic powiedzieć nie mógł, choćby chciał, - Więc wyruszył w drogę pogwizdując -- - Starczy mu, że mowę zwierząt znał, - Starczy mu, że mowę zwierząt znał. - - - -- Głupi Jasiu, głupi Jasiu -- - Śmiał się w lesie szczebiot ptasi - -- Prawda to, że ci rozumu brak! - Woda Życia nie istnieje, - A w obczyźnie nam zmarniejesz -- - Ale on przed siebie szedł i tak, - Ale on przed siebie szedł i tak. - - - Szedł za słonkiem tam, gdzie zachodziło; - Pod stopami chrzęścił złoty żwir. - Ale złoto Jasia nie olśniło, - Wsłuchał się w wieczorny ptaków tryl. - -- Idź -- ćwierkały ptaki -- do stolicy, - Gdzie umiera Król na łożu z piór. - Uzdrów go wywarem z ziarn pszenicy, - On ci władzę da i jedną z cór, - On ci władzę da i jedną z cór. - - - -- Głupi Jasiu, głupi Jasiu -- - Wabił w lesie szczebiot ptasi - -- Wszak bogactwo lepsze jest od biedy! - Nie istnieje Woda Życia, - Więc przynajmniej miej coś z życia -- - Ale on i tak przed siebie szedł, - Ale on i tak przed siebie szedł. - - - Nie chciał władzy Jasio, bo był głupi - I nie myślał o najsłodszym z ciał, - Bo by się miłością, władzą upił, - A on Wodę Życia znaleźć miał. - Zawędrował w osypiska dzikie, - Gdzie się węże wiły mu u nóg. - Uciekłby, kto mądry, przed ich sykiem, - Ale Jasio syk zrozumieć mógł, - Ale Jasio syk zrozumieć mógł. - - - -- Głupi Jasiu, głupi Jasiu, - Jeśliś nas się nie przestraszył, - Idź przed siebie ścieżką na sam szczyt. - Lecz uważaj na uroki, - Nie oglądaj się na boki, - Bo cię wtedy nie ocali nikt, - Bo cię wtedy nie ocali nikt. - - - Pnie się w górę ścieżką kamienistą - Wśród upiorów, widm, bezgłowych ciał, - Ale nie przeraża go to wszystko - Bo nie takie strachy z domu znał. - Widzi już na szczycie, jak ze źródła - Woda Życia tryska srebrną mgłą, - A przy źródle jeden z braci mruga -- - Popatrz Jasiu w dół, tam jest twój dom, - Popatrz Jasiu w dół, tam jest twój dom. - - - upi Jasiu, głupi Jasiu, - Coś na złudę się połasił, - Raz spojrzałeś w dół, jedyny raz, - Na nic trud i droga krwawa, - Zniknął dom i brata zjawa - I zmieniłeś się pod szczytem w głaz, - I zmieniłeś się pod szczytem w głaz. - - - Wraca teraz głupi Jaś z kamienia, - Pełznie drogą rok po roku cal, - Lecz przeminą całe pokolenia, - Nim pokonać zdoła złota dal. - A gdy dotrze już do domu kamień, - Dzieciom ktoś opowie o nim baśń - I pojawi się przy starej bramie - Ożywiony baśnią głupi Jaś, - Ożywiony baśnią głupi Jaś. - - - upi Jasiu, głupi Jasiu, - Rozumiałeś mowę ptasią, - Ale więcej już rozumiesz dziś -- - - W baśniach śpią prawdziwe dzieje, - Woda Życia nie istnieje, - Ale zawsze warto po nią iść, - - Ale zawsze warto po nią iść. - - - - - - - - - Głupi Jasio - Poezja śpiewana - - - - - chord positioning - - - Michał Korch - - Jest jakaś sensowniejsza notacja bisów z różnymi akordami na końcach zwrotek? - - - - diff --git a/songs/kara_barabasza.xml b/songs/kara_barabasza.xml deleted file mode 100644 index 4e7d981f..00000000 --- a/songs/kara_barabasza.xml +++ /dev/null @@ -1,107 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - W karczmie z widokiem na Golgotę - Możesz się dzisiaj napić z łotrem, - Leje się wino krwawe, złote, - Stoły i pyski świecą mokre. - Ten ścisk to zysk dla gospodarza, - Wieść się po mieście szerzy chyża, - Że można ujrzeć tu zbrodniarza, - Co właśnie wyłgał się od krzyża. - - - Żyjemy! Dobra nasza! - Co z życia chcesz, za życia bierz! - Pijmy za Barabasza! - Barabasz pije też! - - - Pije, lecz mowy nie odzyskał, - Jeszcze nie pojął, że ocalał. - oń, która kubek wina ściska -- - Jakby ściskała łeb bretnala. - Stopy pod stołem plącze w tańcu, - Szaleńca, co o drogę pyta: - Każda z nich stopą jest skazańca, - A wolna! Żywa! Nieprzebita! - - - - Piją mieszczanie i żebracy, - Żołdacy odstawili włócznie - - I piją też po ciężkiej pracy, - Bawi się całe miasto hucznie. - Namiestnik dał dowody łaski! - Bez łaski -- czymże byłby żywot? - Toasty, śpiewy i oklaski - - -- Jest na tym świecie sprawiedliwość! - - - - - Ryknął Barabasz śmiechem wreszcie, - Ręce szeroko rozkrzyżował - - - I poszła nowa wieść po mieście: - -- Żyje! Żartuje, bestia zdrowa! - ychać w pałacu, co się święci, - Próżno się Piłat usnąć stara, - Bezładnie tańczą mu w pamięci - - owa - polityka, tłum i wiara... - - - - - W karczmie z widokiem na Golgotę - Blask świtu po skorupach skacze, - Gospodarz przegnał precz hołotę - - I liczy zysk. Barabasz płacze. - W karczmie z widokiem na Golgotę - Blask świtu po skorupach skacze, - Gospodarz przegnał precz hołotę - I liczy zysk. Barabasz płacze. - - Barabasz płacze. - - - - Żyjemy! Dobra nasza! - Co z życia chcesz, za życia bierz! - Pijmy za Barabasza! - Barabasz człowiek też! - - - - - - - - Głupi Jasio - poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/katarynka.xml b/songs/katarynka.xml deleted file mode 100644 index f6ef5ca4..00000000 --- a/songs/katarynka.xml +++ /dev/null @@ -1,50 +0,0 @@ - - - - Bułat Okudżawa - - Bułat Okudżawa - Bułat Okudżawa - Wiktor Woroszylski - Szaemanka - - - Zwodnico -- katarynko, teój głos tak słodko brzmi, - Ach, dokąd, katarynko, wskazujesz drogę mi? - Po różnych drogach wielu dreptałem w życiu dość, - Lecz powiedz, jak do celu mam w ciasnych butach dojść. - - - Robota jest robotą -- a któż by bez niej żył? - Roboty mamy potąd, niech tylko starczy sił. - Wiadomo -- bywa różnie, wiadomo -- ma się dość, - A przydałby się uśmiech, gdy życie daje w kość. - - - Robota jest robotą. - - - - - - - - - - - - - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/kiedy_mowisz.xml b/songs/kiedy_mowisz.xml deleted file mode 100644 index ba17bfcb..00000000 --- a/songs/kiedy_mowisz.xml +++ /dev/null @@ -1,51 +0,0 @@ - - - - ks. Jan Twardowski - - Michał Korch - - - - - - Nie płacz w liście - nie pisz że los ciebie kopnął - nie ma sytuacji na ziemi bez wyjścia - kiedy Bóg drzwi zamyka - to otwiera okno - kiedy Bóg drzwi zamyka - to otwiera okno - odetchnij popatrz - - - spadają z obłoków - małe wielkie nieszczęścia potrzebne do szczęścia - a od zwykłych rzeczy naucz się spokoju - i zapomnij że jesteś gdy mówisz że kochasz - i zapomnij że jesteś gdy mówisz że kochasz - kiedy Bóg drzwi zamyka to otwiera okno - więc zapomnij że jesteś gdy mówisz że kochasz - - - - - - - - - - - - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/krag.xml b/songs/krag.xml deleted file mode 100644 index e274444d..00000000 --- a/songs/krag.xml +++ /dev/null @@ -1,66 +0,0 @@ - - - - - - - - - - - - Zamkniemy w kręgu światło - Wysokich jasnych gwiazd. - Zamkniemy w kręgu płomień, - Ogniska ciepły blask. - Zamkniemy w kręgu radość, - By nie uciekła stąd. - - A potem bratnie słowo - Podamy z rąk do rąk. - - - - Zamkniemy w kręgu siłę, - Niech nie opuszcza nas. - Zamkniemy w kręgu wiarę, - Że wróci dobry czas. - Zamkniemy w kręgu pamięć, - By nie uciekła stąd, - - A potem bratnie słowo - Podamy z rąk do rąk. - - - - Zamkniemy w kręgu drogi, - Wytrwałość naszych nóg, - Zamkniemy w kręgu słońce, - By rozpraszało chłód. - Zamkniemy w kręgu przyjaźń, - By nie uciekła stąd. - - A potem bratnie słowo - Podamy z rąk do rąk. - - - - - - - - - Piosenka harcerska - - - - - chord positioning - - - Michał Korch - - Chyba autorzy nieznani - - - diff --git a/songs/krajkapelna.xml b/songs/krajkapelna.xml deleted file mode 100644 index ddda7a0d..00000000 --- a/songs/krajkapelna.xml +++ /dev/null @@ -1,191 +0,0 @@ - - - - - - - T. Chmielewski - - - - - - - - - - - - - - - - Chorałem dzwonków dzień rozkwita, - - Jeszcze od rosy rzęsy mokre, - - We mgle turkoce pierwsza bryka, - - ońce wyrusza na włóczęgę. - - Drogą pylistą, drogą polną, - - Jak kolorowa panny krajka, - - ońce się wznosi nad stodołą, - - Będzie tańczyć walca. - - - - - - - - A ja mam swoją gitarę, - - Spodnie wytarte i buty stare, - - Wiatry niosą mnie daleko, - - - - A ja mam swoją gitarę, - - Spodnie wytarte i buty stare, - - Wiatry niosą mnie. - - - - - - Schrypnięte skrzypki stroją świerszcze, - - Żuraw się wsparł o cembrowinę, - - Wiele nanosi wody jeszcze, - - Wielu się ludzi z niej napije. - - Helios dojechał na południe, - - - - Od potu ludzkie karki mokre, - - W kurzu terkoce druga bryka, - - ońce w zenicie nad stodołą. - - Drogą pylistą, drogą polną, - - Jak kolorowa panny krajka, - - ońce w zenicie nad stodołą, - - Dalej tańczy walca. - - - - - - - - Zapachem siana gra muzyka, - - Wieczorną rosą zioła mokre, - - Drogą przemknęła trzecia bryka, - - Purpurą płoną strzechy złote. - - Drogą pylistą, drogą polną, - - Jak kolorowa panny krajka, - - ońce zachodzi za stodołę, - - Kończy tańczyć walca. - - - - - - - - Poszumem, mgły się dzień zamyka, - - - - Ostatni świerszcz już schował skrzypce, - - W ciszy terkoce czwarta bryka, - - ońce już zaszło za stodołę. - - Drogą pylistą, drogą polną, - - Jak kolorowa panny krajka, - - ońce już zaszło za stodołą, - - Zakończyło walca. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - chord positioning - - - - - - Michał Korch - - - - - - Wiem tylko tyle, że z autorstwem ma coś wspólnego T. Chmielewski - - - - - - - - diff --git a/songs/ksiezniczka_i_pirat.xml b/songs/ksiezniczka_i_pirat.xml deleted file mode 100644 index 23a21efb..00000000 --- a/songs/ksiezniczka_i_pirat.xml +++ /dev/null @@ -1,104 +0,0 @@ - - - - Jacek Kaczmarski - Po każdym aEa jest motyw (podaje dźwieki): a e h c gis a dis e a, a między ref. a zwrotką: a gis a h c h c e a e c h a gis a h. - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Pirat z soli i goryczy - W sieci świata się szamocze. - Gwiazdy drżą Księżniczce w oczach, - W pustym zamku sowa krzyczy. - On zza mórz przyzywa burze, - By mu szlak kreśliły w toni. - Ona wdycha z linii dłoni, - Bukiet tęsknot i odurzeń. - On zza mórz przyzywa burze. - - - Z niewiadomych oddali - Płynie fala ku fali. - Czy ją spotka, czy minie - W ciemnych wirów gęstwinie? - - - Sztorm go rzuca na wybrzeże, - Gdzie Księżniczki stoi zamek. - Ona mu otwiera bramę, - Pirat ją w ramiona bierze. - Tętnią ściany i sklepienia - Cieni szeptem i oddechem, - Jego serce -- suchy wiecheć, - Lecz jej serce jest z płomienia. - Tętnią ściany i sklepienia. - - - Fala z falą się zderza - Poszukując przymierza. - Czy je znajdą, splątane, - Czy rozprysną się w pianę? - - - On ją trzyma, ona krzyczy, - Ona krzyczy, kielich strąca. - Tak się miesza w nich bez końca - Trunek tęsknot i goryczy. - Usypiają o poranku, - Oślepieni swym olśnieniem, - Ścichły echa, zgasły cienie, - Milczy sowa w pustym zamku. - Usypiają o poranku. - - - Fala wtapia się w falę - I zapada w oddale. - Czy wśród burz i kipieli - Nic ich już nie rozdzieli? - - - On odpływa odurzony, - Zdobyć dla niej złote grody. - Bierze w drogę tęsknot słodycz, - Jej czekanie smak ma słony. - Czy on świat zdobędzie dla niej - I Księżniczka z nim odpłynie? - Czy on wróci i zostanie, - Czy za widnokręgiem zginie? - Czy on świat zdobędzie dla niej? - - - - Płyną fale przed siebie - I znikają w oddali. - Nie pytajcie się fali - O to, czego nikt nie wie. - - - - - - - - - - - Dwie skały - poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/leonardo.xml b/songs/leonardo.xml deleted file mode 100644 index ff04015d..00000000 --- a/songs/leonardo.xml +++ /dev/null @@ -1,127 +0,0 @@ - - - - - W górę szlaban - - - - Specyficzne bicie. - - - - - - - - - - - - - - Ja nie wesoła, ale z kokardą, - - Lecę do słońca, hej Leonardo! - - A ja się kręcę, bo stać nie warto, - - Naprzód planeto, hej Leonardo! - - - - - - - - Dość jest wszystkiego, dojść można wszędzie. - - Dość jest wszystkiego, dojść można wszędzie. - - - - - - - - Diabeł mnie trzyma, targa za włosy, - - Dokąd, wariatko, chcesz dziś wyruszyć? - - A ja gotowa, ja z halabardą - - Lecę do słońca, hej Leonardo! - - - - - - - - Panie w koronie, Panie z liczydłem, - - Nie chcę być mrówką -- ja chcę być szczygłem, - - A moja sława, droga i muzyka - - Do brązowego życia pomyka. - - - - - - - - Przyszłam z bylekąd, ale co z tego - - Zmierzch jest daleko, hej, hej kolego! - - Odłóżmy sprawę, kochany synku, - - Na jakieś dziesięć miejsc po przecinku... - - - - - - - - - - - - - - - - - - - - - - - - - - - - chord positioning - - - - - - Michał Korch - - - - Z tego co wiem autorzy nieznani (może słusznie wstydzą się tej piosenki). - - - - - - - - diff --git a/songs/lumberjack.xml b/songs/lumberjack.xml deleted file mode 100644 index e880fd06..00000000 --- a/songs/lumberjack.xml +++ /dev/null @@ -1,101 +0,0 @@ - - - - Monty Python - - - - - - - - Lumberjack: - I never wanted to be in such a shambledy sketch. - I always wanted to be...a lumberjack! - Leaping from tree to tree... - as they float down the mighty rivers of British Columbia! - The larch...the redwood...the mighty sequioa... - with my best girl by my side! - The giant deadwood, the spruce... - the little Californian root tree! We'd sing, sing, sing! - - - Lumberjack : - I'm a lumberjack and I'm OK, - I sleep all night and I work all day. - - - Choir and Girl : - He's a lumberjack and he's OK, - he sleeps all night and he works all day. - - - Lumberjack : - I cut down trees, I eat my lunch, I go to the lavatory. - On Wednesdays I go shopping, and have buttered scones for tea. - - Choir : - He cuts down trees, he eats his lunch, he goes to the lavatory. - On Wednesdays he goes shopping, and has buttered scones for tea. - - - Lumberjack : - I'm a lumberjack and I'm OK, - I sleep all night and I work all day. - - Choir : - He's a lumberjack and he's OK, - he sleeps all night and he works all day. - - - Lumberjack : - I cut down trees, I skip and jump, I like to press wild flowers. - I put on women's clothing, and hang around in bars. - - Choir : - He cuts down trees, he skips and jumps, he likes to press wild flowers. - He puts on women's clothing, and hangs around in bars? - - - Lumberjack: - I'm a lumberjack and I'm OK, - I sleep all night and I work all day . - - Choir and Girl : - He's a lumberjack and he's OK, - he sleeps all night and he works all day. - - - Lumberjack : - I cut down trees, I wear high heels, suspenders and a bra. - I wish I'd been a girlie, just like my dear papa. - - Choir : - He cuts down trees, he wears high heels, suspenders and a bra? - - John Cleese: What kind of god damn fairy cunny fairy faggot... - - - All except Girl : - I'm a lumberjack and I'm OK, - I sleep all night and I work all day. - I'm a lumberjack and I'm OK! - - - - - - - - - - - - - - - - - - - diff --git a/songs/malarze.xml b/songs/malarze.xml deleted file mode 100644 index 6fa2da53..00000000 --- a/songs/malarze.xml +++ /dev/null @@ -1,62 +0,0 @@ - - - - Bułat Okudżawa - - Bułat Okudżawa - Bułat Okudżawa - Andrzej Drawicz - Żywopiscy - - - Hej, malarze, nuże pędzle zanurzajcie - W zorze miasta o wieczorze, w nasze dziś. - - Niech powtórzą gwar podwórek na Arbacie - Wasze pędzle jak jesienny lotny liść. - - - - Zanurzajcie, kładźcie farby jak się patrzy, - Kładźcie błękit, kładźcie razem blask i cień. - - Namalujcie i z zapałem, i z sympatią, - Jak z sympatią przechadzamy się dzień w dzień. - - - - Niech zatłoczą się ulice rozbudzone! - Niech się zacznie, niech się ziści to, co chce! - - Wy malujcie, wszystko będzie policzone. - Nie będziemy zgadywali: dobrze? źle? - - - - Przesądzajcie nasze losy jak sędziowie, - Pokosztować nam przyszłości dajcie kęs. - - Choć nie znamy się, malujcie nas na zdrowie, - A ja tym, co nie pojmują, wskażę sens! - - - - - - - - - - - - - - chord positioning - - - Michał Korch - - - - - diff --git a/songs/moiprzyjaciele.xml b/songs/moiprzyjaciele.xml deleted file mode 100644 index 16fec3be..00000000 --- a/songs/moiprzyjaciele.xml +++ /dev/null @@ -1,77 +0,0 @@ - - - Opowieść o przyjaźni - Agata Budzyńska - Zamiast "zagram dla was" w tekście oryginalnym jest "zagram klauna" ;) -- tu pozwoliłem sobie nie zmienić, a resztę zmian wprowadziłem - Agata Budzyńska - Agata Budzyńska - - - - - Kiedy was nie ma, to jakby nagle - Zabrakło w moim życiu muzyki, - Kiedy was nie ma to czas mnie straszy, - Że przeminę, że będę chwilą. - Kiedy was nie ma, to jakby niebo - Miało się rozstać na zawsze ze słońcem, - Kiedy was nie ma, dość mam wszystkiego - I pragnę z stąd na zawsze odejść. - - - Moi przyjaciele, moi przyjaciele, - Moi przyjaciele, bądźcie zawsze ze mną, - Moi przyjaciele, moi przyjaciele, - Z Wami wiem, że wszystko mogę, - Że wystarczy tylko chcieć. - - - Jak mam wyśpiewać, jak mam dziękować? - Jak wytłumaczyć, że bez was mnie nie ma? - Przytulam do was swoją miłość, - I wdzięczność swą w modlitwę zamieniam. - Milion aniołków narysuje - I wszystkie razem postrącam z nieba, - Dom na górze wybuduje - I zagram dla was kiedy trzeba. - - - - Moi przyjaciele, moi przyjaciele, - Moi przyjaciele, bądźcie zawsze ze mną, - Moi przyjaciele, moi przyjaciele, - Z Wami wiem, że wszystko mogę, - Że wystarczy tylko chcieć. - - - - - - - - - - - Rozmowa z przyjacielem - - - - - - - - - chord positioning - - - Michał Korch - - - - - - - - - - diff --git a/songs/muchawszklancelemoniady.xml b/songs/muchawszklancelemoniady.xml deleted file mode 100644 index d879fc04..00000000 --- a/songs/muchawszklancelemoniady.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - Jacek Kaczmarski - Metrum zwrotek 4/4, refren 3/4. - Jacek Kaczmarski - Jacek Kaczmarski - - - - - - Oliwnej lampy płomyk się wypalił, - W rodzynki się zmarszczyły winogrona. - Wbrew sobie, syty baśni, usnął kalif, - Za włos go szarpie małpka oswojona. - - - Śnij nieszczęsny, śnij szczęściarzu - O swej wierze i zwątpieniu, - Śnij o łasce, śnij o karze, - - O oazie i pragnieniu. - O pustyni i wielbłądzie, - O bogactwie i o nędzy. - Kołowrotek śnij i kądziel, - Ład dywanu, chaos przędzy. - Wyśnij skrzydlatego konia, - Wyśnij osła pod kieratem, - Labiryntu sieć na dłoniach, - Każdą zdobycz i utratę. - Śnij korzenie, śnij owoce, - Śnij pałace, śnij ruiny, - Dni milczące, gwarne noce, - Góry mrok i blask kotliny. - We śnie nie śpiesz się, masz czas, - Snom daj płynąć, a nie płonąć, - Śnij, jak śni się tylko raz - Swą maleńką nieskończoność... - - - I tak minęła noc tysięczna pierwsza, - Odpłynął śpiewny głos Szeherezady, - Nie słychać w palenisku śmiechu świerszcza, - Trup muchy pływa w szklance lemoniady. - - - - - - - - Dwie skały - - - - - - chord positioning - - - Michał Korch - - - - - diff --git a/songs/mysliwa.xml b/songs/mysliwa.xml deleted file mode 100644 index c853fea3..00000000 --- a/songs/mysliwa.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - - - - - - - - - - Jak fantastycznie być myśliwą - Potrząsać złotą płową grzywą - I pierś w triumfie prężyć w dal - Ja także chce być femme fatale - Ja nie mam zbędnych wątpliwości - Zdrowe podejście do miłości - Mężczyzna to jest podłe bydle - Więc chyba pójdzie jak po mydle - - - Od zwierza do zwierza - Byle do mnie należał - Od duszy po pięty - Moją magią owładnięty - Na łowy, na łowy - Co tam okres godowy - Na tygrysa, na byka - - I niech gra muzyka - - - Gdy polowanie rozpoczynam - Cała w perfumach i rubinach - Trafiam na famy i na żony - Co lepszy obiekt, to strzeżony - Więc chyba jednak pozostanę - Przy urzędowo własnym panu - Lecz z życia mu uczynie plamę - Za to marzenie zmarnowane - - - - - - - - - Inna - - - - - chord positioning - - - OnufryKrzysiek Cz. - - - - Puściłem po płomieniu pytanie, czyje to jest, zobaczymy, czy będzie jakiś efekt. - - - diff --git a/songs/najemnicy.xml b/songs/najemnicy.xml deleted file mode 100644 index 13c20f83..00000000 --- a/songs/najemnicy.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - - Bicie agresywne. - - - - - - - W dżunglach Katangi i bagnach Konga, - W stepach Jemenu, w piaskach Sudanu, - Gdzie śmierć swe żniwa zbiera codziennie - Walczą psy wojny, najemni żołnierze. - - - Czerwone łuny na niebie, czarna dokoła noc - I naprzód, wciąż naprzód najemni żołnierze - - I vive la guerre, i vive la morte... - - - - Gdy huczą działa, świszczą pociski, - Gdy serce wali jak opętane - Brudni od kurzu, od potu ciemni - Biegną w ataku, biegną w nieznane. - - - - Gdy przy ognisku, przy ognisku siąda - - I dawne dzieje wspominać zaczną, - - Uśmiech rozjaśni zmęczone twarze, - Gdy z bronią w ręku wśród dżungli zasną. - - - - Dla tych, co w piaskach Zambii i Konga, - - I dla tych, co w bezimiennych grobach, - Dla wszystkich, którzy polegli w walce, - Bóg wojny wieniec niesie laurowy. - - - - - - - - - - - - - - chord positioning - - - Michał Korch - - Chyba autor jest generalnie nieznany - - - \ No newline at end of file diff --git a/songs/naszaklasa92.xml b/songs/naszaklasa92.xml deleted file mode 100644 index a3d7b14e..00000000 --- a/songs/naszaklasa92.xml +++ /dev/null @@ -1,176 +0,0 @@ - - - - Jacek Kaczmarski - Specyficzny akompaniament. - Jacek Kaczmarski - Jacek Kaczmarski - - - - - - - - - Osiągnęliśmy dojrzałość, zajmujemy stanowiska, - - Co się zżarło i wychlało - na zmęczonych puchnie pyskach. - - - Cośmy pozapominali - zostawiło w oczach pustkę; - - Żar zwycięstwa nas wypalił, jak karabinową łuskę, - - Jak karabinową łuskę. - - - - - - Rysiek wreszcie umył ręce, dotąd czarne po drukarni, - - Procesuje się zawzięcie o nagłówek "Solidarni". - - Julek grać nie umiał w piłkę, zwali go - "pryszczata menda", - - Taktyki ujawnił żyłkę w otoczeniu Prezydenta, - - W otoczenia Prezydenta. - - - - - - Kopnął źle, wszedł do rezerwy, ale nawet z ławki - kopie, - - Nie zawiodą Julka nerwy w Zjednoczonej Europie... - - - - Ela żyje nawet nieźle, co rok jeździ do Nepalu, - - Przekazuje, co przywiezie, przetrwa z tego, co odpalą, - - Przetrwa z tego, co odpalą. - - - - - - Lena wyszła nieszczęśliwie za bezwzględne beztalencie, - - Co się dziesięć lat nią żywi: Lena urok ma i wzięcie, - - Zdzich uczciwie robi pieniądz, więc nerwice ma i wrzody - - Ale mu zazdrości Henio, niezadbany, zły i głodny, - - Niezadbany, zły i głodny... - - - - - - Za wzór zawsze robił Henio odrzucania trefnych ofert: - - Znał Pascala i Montaigne'a, etyki był filozofem. - - Z tej zazdrości i z tej złości znów dziś robi za wyrocznię - - Etykę mu cel uprościł zniszczy Zdzicha zanim spocznie, - - Zniszczy Zdzicha zanim spocznie. - - - - - - W sumie przyszłościowy rocznik w wiek XXI-wszy wchodzi: - - Dzieci Marca, Grudnia, stoczni, chrzestni bólów przy porodzie; - - Kajam się za wstyd i gorycz, za niewyważenie racji; - - Więc ze skruchą i pokorą uzupełniam obserwacje, - - - - Uzupełniam obserwacje: - - - - - - - - Irka z Jurkiem gdzieś ugrzęźli na wsi krytej eternitem, - - Pewnie się nie odnaleźli w Trzeciej Rzeczypospolitej. - - Zbyszek, Romek, Anka, Paweł są tak prawi, że aż łyso - - - - I czym żyją, nie wiem nawet, więc i nie ma o czym pisać, - - Więc i nie ma o czym pisać. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Poezja śpiewana - - - - - - - - - - chord positioning - - - - - - Michał Korch - - - - - - - - - - - - - - \ No newline at end of file diff --git a/songs/nielubie.xml b/songs/nielubie.xml deleted file mode 100644 index 8199d1f5..00000000 --- a/songs/nielubie.xml +++ /dev/null @@ -1,78 +0,0 @@ - - - - Włodzimierz Wysocki - Agresywnie. Przetłumaczył też Kaczmarski, ale śpiewa na trochę inną melodię. - Włodzimierz Wysocki - Włodzimierz Wysocki - Wiktor Woroszylski - Ja nie lublu - - - Ja nienawidzę fatalnego końca, - Nie lubię kiedy los się śmieje w nos. - Nie znosze pory roku, dnia, miesiąca, - Gdy kością w gardle własny staje głos. - Nie lubię, gdy się draństwem chełpią dranie, - Nie lubię, gdy nieśmiali drżą jak liść. - Ani, gdy zaglądając mi przez ramię, - Ktoś obcy razem ze mną czyta list! - - - Nie lubię siebie, gdy mnie tchórz obleci, - I wstyd i wstręt ogarnia wtedy mnie. - Bardzo nie lubię, gdy strzelają w plecy, - A kiedy między oczy także nie! - Nie wierzę ludziom, gdy za głośno klaszczą, - We mgle frazesów głupio mi i źle. - Nie lubię, gdy pod sierść mnie jacyś głaszczą, - I gdy żelazo zgrzyta mi po szkle! - - - Odpycha mnie zarozumiała sytość - I mierzi język, co zapomniał słów - Takich zwyczajnych: ,,honor'', ,,przyzwoitość''... - O, niechby je przypomniał sobie znów! - Nie bawi mnie, gdy dołki kopią w nocy, - Gdy podstawiają nogę -- kiepski żart. - Nie lubię i przemocy i niemocy, - Tylko Chrystusa mi na krzyżu żal... - - - W zaduchu plotek duszę się i krztuszę, - Mam za złe pustym, rozmemłanym dniom. - Nie lubię, gdy butami włażą w duszę, - A jeszcze bardziej, kiedy plują w nią! - Nie miłe mi igrzyska, targowiska! - Ich zgiełk i taniość i w rękawie nóż! - Słyszałem, że jutrzenka zmian na błyska, - Lecz tego nie polubię nigdy już! - - - - - - - - - - - - Poezja śpiewana - - - - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/niepatrznato.xml b/songs/niepatrznato.xml deleted file mode 100644 index 914fb7f3..00000000 --- a/songs/niepatrznato.xml +++ /dev/null @@ -1,72 +0,0 @@ - - - - Andrzej Sikorowski - - Andrzej Sikorowski - Pod Budą - - - - - Świat jest taki a nie inny i zapewne się nie zmieni - ogłosili wczoraj słynni dwaj uczeni - a w przypadku słynnych ludzi każda myśl jest całkiem dobra - więc ci goście otrzymali zaraz Nobla - Mieli rację jest jak było czyli całkiem nieciekawie - w rowie leży pierwsza miłość po zabawie - jak się bawić to się bawić krzyż na szyi w dłoni "seta" - i na niebie czasem zjawi się kometa - - - - Zamknij oczy nie patrz na to moja miła - pod powieką znaczenie lepsze są widoki - i w tym nasza siła i w tym nasza siła - że umiemy jeszcze czasem marzyć - - - - Jak się bawić to się bawić a tu biedy coraz więcej - i ważniejszy jest karabin niźli serce - tutaj się zabawą żyje za to tępe rządzą głowy - a czasami kretyn z kijem bejsbolowym - Nie patrz miła na to wszystko człowiek musi się szanować - niech nie schyla się za nisko twoja głowa - lecz na chwilę moment jeden za to z góry ci dziękuję - otwórz oczy tylko kiedy mnie całujesz - - - A na resztę zamknij oczy moja miła - pod powieką znaczenie lepsze są widoki - i w tym nasza siła i w tym nasza siła - że umiemy jeszcze czasem marzyć - - - A na resztę zamknij oczy moja miła - pod powieką znaczenie lepsze są obrazy - - i w tym nasza siła i w tym nasza siła - że umiemy jeszcze czasem marzyć - - - - - - - - żal za - Poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - \ No newline at end of file diff --git a/songs/oblawa.xml b/songs/oblawa.xml deleted file mode 100644 index a9641e4e..00000000 --- a/songs/oblawa.xml +++ /dev/null @@ -1,87 +0,0 @@ - - - - Jacek Kaczmarski - Wg piosenki "Obława na wilki" W. Wysockiego - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Skulony w jakiejś ciemnej jamie smaczniem sobie spał - I spały małe wilczki dwa - zupełnie ślepe jeszcze - Wtem stary wilk przewodnik co życie dobrze znał - Łeb podniósł warknął groźnie aż mną szarpnęły dreszcze - - - Poczułem nagle wokół siebie nienawistną woń - Woń która tłumi wszelki spokój zrywa wszystkie sny - Z daleka ktoś gdzieś krzyknął nagle krótki rozkaz: goń - I z czterech stron wypadły na nas cztery gończe psy - - - Obława! Obława! Na młode wilki obława! - Te dzikie zapalczywe, w gęstym lesie wychowane! - Krąg śniegu wydeptany! W tym kręgu plama krwawa! - Ciała wilcze kłami gończych psów szarpane! - - - Ten który rzucił na mnie się niewiele szczęścia miał - Bo wypadł prosto mi na kły i krew trysnęła z rany - Gdym teraz - ile w łapach sił - przed siebie prosto rwał - Ujrzałem małe wilczki dwa na strzępy rozszarpane! - - - Zginęły ślepe, ufne tak puszyste kłębki dwa - Bezradne na tym świecie złym nie wiedząc kto je zdławił - I zginie także stary wilk choć życie dobrze zna - Bo z trzema naraz walczy psami i z ran trzech naraz krwawi - - - - Wypadłem na otwartą przestrzeń pianę z pyska tocząc - Lecz tutaj też ze wszystkich stron - zła mnie otacza woń! - A myśliwemu co mnie dojrzał już się śmieją oczy - I ręka pewna, niezawodna podnosi w górę broń! - - - Rzucam się w bok, na oślep gnam aż ziemia spod łap tryska - I wtedy pada pierwszy strzał co kark mi rozszarpuje - Wciąż pędzę, słyszę jak on klnie! I krew mi płynie z pyska - On strzela po raz drugi! Lecz teraz już pudłuje! - - - - Wyrwałem się z obławy tej schowałem w jakiś las - Lecz ile szczęścia miałem w tym to każdy chyba przyzna - Leżałem w śniegu jak nieżywy długi długi czas - Po strzale zaś na zawsze mi została krwawa blizna! - - - Lecz nie skończyła się obława i nie śpią gończe psy - I giną ciągle wilki młode na całym wielkim świecie - Nie dajcie z siebie zedrzeć skór! Brońcie się i wy! - O, bracia wilcy! Brońcie się nim wszyscy wyginiecie! - - - - - - - - - - Poezja śpiewana - - - - - - Onufry - - - Wpisałem uwagę, a nie tłumaczenie, bo jednak przy tym poziomie odstępstwa od oryginału o tłumaczeniu trudno mówić - - - diff --git a/songs/obok_ciebie.xml b/songs/obok_ciebie.xml deleted file mode 100644 index ceb908dd..00000000 --- a/songs/obok_ciebie.xml +++ /dev/null @@ -1,72 +0,0 @@ - - - - Orkiestra Naszych Dni - - Orkiestra Naszych Dni - Orkiestra Naszych Dni - - - - - Pewnie nie zdążę opłynąć świata, - Nie są mi dane Everesty sine, - - Ale do szczęścia wystarczyć może - Lekki podmuch nad Niegocinem. - - - - A Ty, miły, szukasz czegoś stale, - Na końcu świata, albo jeszcze dalej -- w niebie, - Przemierzając morza całe, - A to coś jest obok Ciebie. - - - - yńcie koledzy w dalekie Horny, - Zorza otuli nad biegunami, - - A moje szczęście bywa po prostu - Wschodem słońca nad Wigrami. - - - - Nie chcą się spełniać wielkie marzenia, - Chodzę po ziemi więc mocno, mój kotku, - Krótki jest opis mojego szczęścia -- - To łajba z Tobą w środku. - - - - - A Ty, miły, szukasz czegoś stale, - Na końcu świata, albo jeszcze dalej -- w niebie, - Przemierzając morza całe, - A ten ktoś jest obok Ciebie. - - - - - - - - - - - - szanta - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/obokciebie.xml b/songs/obokciebie.xml deleted file mode 100644 index 91c8c80c..00000000 --- a/songs/obokciebie.xml +++ /dev/null @@ -1,71 +0,0 @@ - - - - Orkiestra naszych dni - - Orkiestra naszych dni - Orkiestra naszych dni - - - - - Pewnie nie zdążę opłynąć świata, - Nie są mi dane Everesty sine, - Ale do szczęścia wystarczyć może - Lekki podmuch nad Niegocinem. - - - - A Ty, miły, szukasz czegoś stale - Na końcu świata , albo jeszcze dalej, w niebie, - Przemierzając morza całe, - A to coś jest obok Ciebie. - - - - yńcie koledzy w dalekie Horny, - Zorza otuli nad biegunami, - - A moje szczęście bywa po prostu - Wschodem słońca nad Wigrami. - - - - Nie chcą się spełniać wielkie marzenia, - Chodzę po ziemi więc mocno, mój kotku, - Krótki jest opis mojego szczęścia: - To łajba z Tobą w środku. - - - - A Ty, miły, szukasz kogoś stale, - Na końcu świata, albo jeszcze dalej, w niebie, - Przemierzając morza całe obok, - A ten ktoś jest obok ciebie. - - - - - - - - - - - - Skrzypek - Szanta - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/obraciachktorzypytalisie.xml b/songs/obraciachktorzypytalisie.xml deleted file mode 100644 index c901bf11..00000000 --- a/songs/obraciachktorzypytalisie.xml +++ /dev/null @@ -1,71 +0,0 @@ - - - - - Zwrotka 4/4, refren 3/4. - - - - - - - Wyszli bracia, wiatr we włosach, co za czas, - W oczach gwiazdy i drzewa na spodzie, - Pochyleni, zanurzeni po pas, - Brodzą w nocy czerwcowej jak w wodzie. - Zatrzaśnięte na krzyż okiennice, - Nieskoszony jescze zapach łąk - I już płoną pozrywane księżyce - W białych lampach zamkniętych rąk. - - - A z miłością się nie jest, czy jest, - Powiedz pierwszy, z kochania słyniesz. - Jeśli nie ma, to i tak szkoda łez, - Jeśli jest, to i tak kiedyś minie. - Wędrowali tak pewnego dnia, - Wędrowali tak w głębokie sny. - Pierwszym bratem chyba byłem ja, - Drugim bratem pewnie byłeś ty. - - - Czy to życie jest, czy tylko sen, - Pomyśl pierwszy, potem ja pomyślę. - I dziwili się to tamten, to ten, - Las się chwieje, jakby stał na Wiśle. - Mamy umrzeć, czy żyć dalej, może wiesz, - Rozważ pierwszy, potem ja rozważę, - A już spadał powoli jak zmierzch - Odgłos dzwonów bijących na twarze. - - - A z miłością się nie jest, czy jest, - Powiedz pierwszy, z kochania słyniesz. - Jeśli nie ma, to i tak szkoda łez, - Jeśli jest, to i tak kiedyś minie. - - Wędrowali tak pewnego dnia, - Wędrowali tak w głębokie sny. - Pierwszym bratem chyba byłem ja, - Drugim bratem pewnie byłeś ty. - - - - - - - - - - - - - chord positioning - - - Michał Korch - - - - - diff --git a/songs/odpowiedz_na_ankiete_twoj_system_wartosci.xml b/songs/odpowiedz_na_ankiete_twoj_system_wartosci.xml deleted file mode 100644 index 1b691834..00000000 --- a/songs/odpowiedz_na_ankiete_twoj_system_wartosci.xml +++ /dev/null @@ -1,81 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Polityka mi wisi - Dorodnym kalafiorem. - Błogosławieni cisi - I ci, co pyszczą w porę. - Historia mnie nie bierze, - Literatura nudzi. - Ja tam dziś w nic nie wierzę, - A już na bank - nie w ludzi. - Nawet drzewa twardnieją, by przyć, - Co tu mówić o ludziach, frajerzy! - - - A jak się urządzili - Ci z władz i z opozycji? - Ten bił, a tego bili -- - Obydwaj dziś w policji. - Więc żaden mnie nie skusi - Na byle ćmoje-boje. - ogosławieni głusi - I ci, co słyszą swoje. - Nawet drzewa, by przeżyć, korzenie - Zapuszczają głęboko pod ziemię. - - - Katabas kirchę wznosi - Nie dla nas, a dla Pana. - Więc jakby sam się prosił - By z glana kapelana. - Mnie tego nikt nie wrzepi, - Ja chcę mieć święty spokój. - ogosławieni ślepi - I ci, co widzą w mroku. - Nawet drzewa rosną w ciemnościach, - W dupie mają -- na czyich kościach. - - - Mnie nie rajcuje kasa, - Kwatera czy gablota. - Jak trafię skórę -- klasa -- - Pieroga wyłomotam. - Wykaże test, żem HIVnik, - To w żyłę -- i odjadę. - ogosławieni sztywni - I ci, co żyją z czadem. - Nawet drzewa próchnieją przedwcześnie, - A przecież istnieją bezgrzesznie. - - - - - - - - - Pochwała łotrostwa - poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/okrok.xml b/songs/okrok.xml deleted file mode 100644 index 80273d8e..00000000 --- a/songs/okrok.xml +++ /dev/null @@ -1,68 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - O krok od źródła konają z pragnienia. - O krok od piekła szaleją z rozkoszy. - Trzeźwieją z marzeń o krok od spełnienia. - O krok od celu własny cień ich płoszy. - - - Krok od triumfu opuszczają głowy. - Podnoszą głowy o krok od wyroku. - O krok od łaski tracą dar wymowy. - Krok od przepaści przyspieszają kroku. - - - O krok od zemsty nagle wielcy duchem. - O krok od drogi błądzą w próżnych sporach. - O krok od czynu wolą frazy kruche. - O krok od jutra przeżywają wczoraj. - - - O krok od zgody pusta złość ich bierze. - O krok od wiedzy wdychają zabobon. - O krok od Boga zaprzeczają wierze. - O krok od siebie nie chcą stać się sobą. - - - O krok od śmierci żywot im niedrogi. - O krok od życia śnią minione kaźnie. - Gromadzą księgi o krok od pożogi. - O krok od klęski czują się najraźniej. - - - Tak przez godzinę, dzień, miesiąc, rok, - Aż zrobią ten jeden nieuchronny krok... - Tak przez godzinę, dzień, miesiąc, rok - Aż zrobią ten jeden nieuchronny krok. - - - - - - - - Między nami - Poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/ostatniamruczankaalbospleenkubusiapuchatka.xml b/songs/ostatniamruczankaalbospleenkubusiapuchatka.xml deleted file mode 100644 index 666fec01..00000000 --- a/songs/ostatniamruczankaalbospleenkubusiapuchatka.xml +++ /dev/null @@ -1,83 +0,0 @@ - - - - Jacek Kaczmarski - Wiersz napisany przez Jacka Kaczmarskiego, gdy już nie mógł śpiewać. Oficjalnie nie ma więc melodii. Ja zasugerowany tytułem śpiewam go na melodię Kubusia Puchatka, co wydaje mi się (wbrew pozorom) współbrzmi z tym tekstem. - - - - - - - uchaj, Maleństwo, słuchaj dziecię, - Jak Mama Kangurzyca płacze... - Hohonie włóczą się po lesie, - Na próżno szuka cię Prosiaczek. - W gęstwinie jego hart nic niewart, - Gdy Krzyś się nudzi... bo - dojrzewa. - - - Wielkie przekleństwo dorosłości - - Określa marny los zwierzątek: - Królik Puchatka nie ugości, - - A Kłapouchy straci wątek - - Nie będzie więcej filozofem, - Gdy Krzyś okaże się Krzysztofem. - - - Zabawa się wypełni trwogą; - Krzysztof z Weltschmerzem się boryka - - apouchemu urwie ogon, - Z wściekłością prztyknie w nos Królika, - - A co najgorsze w tym przekleństwie -- - Całkiem zapomni o Maleństwie. - - - Tygrysek tranu nie dostanie, - (Namiętność całkiem nałogowa) - Z pomocą nie pospieszy ani - Z pigułką - Przemądrzała Sowa, - Kto zresztą wie, co stara bredzi, - Gdy nikt jej nigdy nie odwiedzi? - - - Kubuś Puchatek, jak do trunku - Nad dzbankiem miodu łepek skłania. - Dla znacznie większych to rozumków - Sprawy są nie do rozwikłania. - Małe co nieco nie wyjaśni - Jakże tu żyć po śmierci... baśni. - - - Kiedyś drewnianym pudłem duszy - Potrząśnie Krzysztof, jak skrzypcami. - Może się nawet trochę wzruszy, - Lecz raczej wzruszy ramionami. - Bo, chociaż baśń ożywią smyczki, - To tylko raz się gra w patyczki. - - - - - - - - - Poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - Kubuś Puchatek - diff --git a/songs/pierscienie.xml b/songs/pierscienie.xml deleted file mode 100644 index 0f0a76bd..00000000 --- a/songs/pierscienie.xml +++ /dev/null @@ -1,40 +0,0 @@ - - - - John Ronald Reuel Tolkien - Piosenka obrzędowa podobozu ,,Jedna wieża'', obóz nad jez. Święte, 2005 r. - Michał Korch - 21. WDHy „Żbiki” - Maria Skibniewska - - - - Trzy Pierścienie dla królów elfów pod otwartym niebem, - Siedem dla władców krasnali w ich kamiennych pałacach, - Dziewięć dla śmiertelników, ludzi śmiedci podległych, - Jeden dla Wladcy Ciemności na czarnym tronie - W krainie Mordor, gdzie zaległy cienie, - Jeden, by wszystkimi rządzić, Jeden, by wszystkie odnaleźć, - Jeden, by wszystkie zgromadzić i w ciemności związać - W krainie Mordor, gdzie zaległy cienie. - - - - - - - - - - - - chord positioning - - - Michał Korch - - - - - - \ No newline at end of file diff --git a/songs/piosenka_o_arbacie.xml b/songs/piosenka_o_arbacie.xml deleted file mode 100644 index e26090ca..00000000 --- a/songs/piosenka_o_arbacie.xml +++ /dev/null @@ -1,62 +0,0 @@ - - - - Bułat Okudżawa - Powtórzenie dwóch ostatnich linijek zwrotki ma inną melodię. Ostatnia linijka ostatniej zwrotki ma jeszcze inną melodię. - Bułat Okudżawa - Bułat Okudżawa - Andrzej Mandalin - - - - Rzeczny wir, rwący prąd, obca nazwa, łatwy rytm, - Lecz przejrzysty Twój nurt, jak kryniczny zdrój! - Ach, Arbacie, toś Ty, wiecznym przeznaczeniem mym! - W Tobie radość i gniew, w Tobie śmiech i ból. - Ach, Arbacie, toś Ty, wiecznym przeznaczeniem mym! - W Tobie radość i gniew, w Tobie śmiech i ból. - - - Gdy przechodniów Twych tłum sunie obok rojem pstrym, - Tak pospieszny ich krok, tak powszedni ślad. - Ach, Arbacie, toś Ty, wiarą i zbawieniem mym! - Wyślizgany Twój bruk to mój cały świat. - Ach, Arbacie, toś Ty, wiarą i zbawieniem mym! - Wyślizgany Twój bruk to mój cały świat. - - - Czarów nie da się zdjąć mocą dobrą, ani złą, - Choćbym tysiąc śnił miast, nie zamieszkam w nich! - Ach, Arbacie, toś Ty, ziemią obiecaną mą! - Niezbadanych Twych dróg nie przemierzy nikt. - Ach, Arbacie, toś Ty, ziemią obiecaną mą! - Niezbadanych Twych dróg nie przemierzy nikt. - - - - - - - - - - - - - - - poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/piosenka_o_krolu_i_zolnierzach.xml b/songs/piosenka_o_krolu_i_zolnierzach.xml deleted file mode 100644 index 167f04c3..00000000 --- a/songs/piosenka_o_krolu_i_zolnierzach.xml +++ /dev/null @@ -1,73 +0,0 @@ - - - - Bułat Okudżawa - - Bułat Okudżawa - Bułat Okudżawa - - Piesienka o korole i sołdatach - - - A kiedy na państwo ościenne wyruszał nasz król, - Królowa na drogę sucharów mu wór nasuszyła - I dziury na szatach mężowskich starannie zaszyła, - I w dwóch zawiniątkach mu dała machorkę i sól. - - - A kiedy się żegnał i zamku przekroczyć miał próg, - Objęła go czule i łzę uroniła rzęsistą: - -- A dajże im w kość, bo okrzyczy cię lud pacyfistą - I zabierz im słodkie pierniczki, bo przecież to wróg. - - - Pod wodzą kaprala oddziały czekają już dwa: - Trzech smutnych żołnierzy i tyluż żołnierzy wesołych. - Rzekł król: -- Furda prasa i radio, i cztery żywioły! - Victoria nas czeka i w ogóle, chłopcy, hurra! - - - Nim zmilkły oklaski, marszowa rozległa się pieśń, - Po drodze do armii król rozkaz skierował odgórny: - Wesołych żołnierzy dać kazał do intendentury, - A smutnych żołnierzy zostawił w piechocie i cześć! - - - I oto jutrzenka zwycięstwa już błyska zza chmur, - Trzech smutnych żołnierzy spisano co prawda na manko, - A kapral moralny pion tracąc ożenił się z branką, - Lecz łupem zwycięzców ogromny pierniczków padł wór! - - - Więc grzmijcie orkiestry! Niech serca uderzą nam w takt! - Niech smutek przelotny nam piersi radosnej nie gniecie! - Cóż smutnym żołnierzom po życiu na wesołym świecie? - A słodkich pierniczków dla wszystkich nie starczy i tak! - - - - - - - - - - - - - poezja śpiewana - - - - - - chord positioning - - - Michał Korch - - - Gdzieś zaginęła mi informacja, kto jest tłumaczem - - - diff --git a/songs/piosenkadlaprzyjaciela.xml b/songs/piosenkadlaprzyjaciela.xml deleted file mode 100644 index df7dc4c7..00000000 --- a/songs/piosenkadlaprzyjaciela.xml +++ /dev/null @@ -1,85 +0,0 @@ - - - - Wojciech Bellon - - Tomek Fojgt - Enigma - - - - - Przeczekamy jeszcze jedną zimę, - Żeby znów móc się spotkać, - - - j Przyjacielu, - - Opowiedzieć co dobrego, - I zapomnieć o złych chwilach, - - - j Przyjacielu, - - A gdy wiosną wyschną drogi, - Dogonimy tych co przeszli obok. - - - Przeczekamy ciszę między nami, - Płoche słowa i rozmowy nieskończone, - Chleba nigdy nam nie zbrakło, - Popatrz znowu kwitnie jabłoń, - Przyjacielu gwiazda spadła. - - - - - - Przeczekamy jeszcze jedno lato, - Wciąż nie wierząc że na karku mamy jesień, - - - j Przyjacielu, - - A dziewczynom co odeszły, - Odeślemy listy z deszczu, - - - j Przyjacielu, - - Żeby życia zbyt nie trudzić, - To epilog dopiszemy garścią złudzeń. - - - - - - j Przyjacielu... - - - - - - - - - - - - - W górach jest wszystko co kocham - Poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/piosenkanapisanamimochodem.xml b/songs/piosenkanapisanamimochodem.xml deleted file mode 100644 index 42349374..00000000 --- a/songs/piosenkanapisanamimochodem.xml +++ /dev/null @@ -1,89 +0,0 @@ - - - Mimochodem - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Słońce błyśnie między wschodem a zachodem, - Mimochodem obrysuje miasto chmur. - Jednych dziegciem dzień nakarmi, innych miodem, - Temu głowę wzniesie, temu napnie sznur. - Trochę starsze znów się stanie to, co młode, - Jakby strzepnął ptak kolejną kroplę z piór -- - Mimochodem, mimochodem, - Jakby strzepnął kroplę z piór. - - - Tym pod nogi róż kobierzec, tamtym - kłodę, - Pozostałym, mimochodem -- byle co. - Frustrat skargę śle, laureat pisze odę, - Raz się dobro jawi złem, raz -- dobrem zło. - Słowo wpada w morze słów, jak kamień w wodę, - Krążek myśli pozostawi, brnąc na dno -- - Mimochodem, mimochodem, - Krążek myśli, brnąc na dno. - - - Cierpi syty, niepojętym zdjęty głodem, - Zgłodniałego -- mimochodem syci złość. - Temu -- mostu przęsło, temu - dom z ogrodem, - Komuś o coś chodzi, za kimś -- chodzi coś: - Na stracenie, na pożytek i na szkodę, - Jak złośliwie między psy rzucona kość -- - Mimochodem, mimochodem, - Między psy rzucona kość. - - - Tańczą, walczą, zieją żarem, zioną chłodem, - Mimochodem spalą w pył, zetną w lód. - Swego Boga za słomianą szarpią brodę, - By im dał nadziei źdźbło, ładu łut. - Sen -- za jawę biorą, karę -- za nagrodę, - Odtwarzając krótkie scherzo swe - bez nut, - Mimochodem, mimochodem, - Krótkie scherzo swe -- bez nut. - - - Nic już więcej z tego rymu nie wywiodę, - Mimochodem układając cierpką pieśń. - Pocieszenie tylko dodam na osłodę, - Że w niej drzemie mimochodem ważka treść: - Chwila światła między wschodem a zachodem, - Wobec której trudno tak po prostu przejść - Mimochodem, mimochodem, - Trudno tak po prostu przejść. - Mimochodem... Mimochodem -- - Miasto chmur, chwile szczęść. - - - - - - - - - - - - - Mimochodem - - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/pl/bardowie/1788.xml b/songs/pl/bardowie/1788.xml new file mode 100644 index 00000000..a87872e1 --- /dev/null +++ b/songs/pl/bardowie/1788.xml @@ -0,0 +1,99 @@ + + + + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Ta pierwsza morska podróż do Australii! + Łotry przy burtach, prostytutki w kojach - + Wszyscy się bali, łkali i rzygali + W drodze do raju. Przewrotności Twoja + Panie, coś w jeszcze nam nieznanych planach + Miał czarne diabły strzegące wybrzeży + Edenu, który przeznaczyłeś dla nas, + A w który nikt, prawdę mówiąc, nie wierzył! + + + Czym żeśmy, marni, zasłużyli na to? + Ten, co zawisnąć miał za kradzież płaszcza - + Płakał nad swoją niechybną zatratą; + Nie widział Ciebie w robaczywych masztach + Statku, co tylko był więzieniem nowym; + Tej co kupczyła ciałami swych dziatek - + Ani przez mgnienie nie przyszło do głowy, + Że to nadziei - nie rozpaczy statek. + + + Niejeden żołnierz z ponurej eskorty + (Bo czym się ich los od naszego różnił?) + Wiedział, że nigdy już nie ujrzy portu, + Gdzie go podejmą karczmarze usłużni + I płatne dziewki; że zabraknie rumu + Zanim do celu przygnasz okręt szparki. + Z marynarzami pili więc na umór + I - wbrew zakazom - grali o więźniarki. + + + Prawda, nie wszyscy próby Twe przetrwali, + Ale też ciężkoś nas doświadczał, Panie: + Nie oszczędzałeś nam wysokiej fali, + Za którą mnogim przyszło w oceanie + Zakończyć żywot; innym dziąsła zgniły, + Wypadły zęby, rozgorzały wrzody… + Więc znaczą nasz zielony szlak mogiły + Szkorbutu, szału, francuskiej choroby. + + + Nikt nie odnajdzie w ruchomych odchłaniach + Ciał nieszczęśników - oprócz Ciebie, Boże. + Ich żywot grzeszny epitafiów wzbrania, + Lecz - ukarani. Więc wystarczy może, + Żeś się posłużył starszliwym przykładem: + Oni naprawdę dotarli do piekieł, + A umierając nie wierzył z nich żaden, + Że w swym cierpieniu umiera - człowiekiem. + + + Ląd nam się wydał niegościnny, dziki; + Łotr bez honoru, kobieta sprzedajna + Z dnia na dzień - jak się stać ma osadnikiem + Nieznanych światów? Bo rozpoznać Raj nam + Nie było łatwo; znaleść w sobie siłę, + Wbrew przeciwnościom, bez słowa zachęty + By mimo wszystko żyć - nim nam odkryłeś + Kraj szczodry w zboże, złoto i diamenty. + + + Łajdacki pomiot, łotrowskie nasienie + Czerpiąc ze spichrza Twoich dóbr wszelakich - + Choć tyle wiemy własnym doświadczeniem: + W nas jest Raj, Piekło - I do obu - szlaki. + + + + + + + + + + + + + Poezja śpiewana + + + + + Onufry + + + + + + diff --git a/songs/pl/bardowie/A_my_nie_chcemy_uciekac_stad.xml b/songs/pl/bardowie/A_my_nie_chcemy_uciekac_stad.xml new file mode 100644 index 00000000..a7ccdf4d --- /dev/null +++ b/songs/pl/bardowie/A_my_nie_chcemy_uciekac_stad.xml @@ -0,0 +1,77 @@ + + + Jacek Kaczmarski + Zwrotka 'Dym w dziurce od klucza' nie pojawia się w oficjalnych wersjach, które przeglądałem. + Przemysław Gintrowski + Jacek Kaczmarski; Przemysław Gintrowski + + + Stanął w ogniu nasz wielki dom + Dym w korytarzach kręci sznury + Jest głęboka, naprawdę czarna noc + Z piwnic płonące uciekają szczury + + + Krzyczę przez okno, czoło w szybę wgniatam + Haustem powietrza robię w żarze wyłom + Ten kto mnie słyszy ma mnie za wariata + Woła: co jeszcze świrze ci się śniło? + + + Więc chwytam kraty rozgrzane do białości + Twarz swoją widzę, twarz w przekleństwach + A obok sąsiad patrzy z ciekawością + Jak płonie na nim kaftan bezpieczeństwa + + + Dym w dziurce od klucza, a drzwi bez klamek + Pękają tynki wzdłuż spoconej ściany + Wsuwam swój język w rozpalony zamek + Śmieje się za mną ktoś jak obłąkany + + + Lecz większość śpi nadal, przez sen się uśmiecha + A kto się zbudzi nie wierzy w przebudzenie + Krzyk w wytłumionych salach nie zna echa + Na rusztach łóżek milczy przerażenie + + + Ci przywiązani dymem materacy + Przepowiadają życia swego słowa + Nam pod nogami żarzą się posadzki + Deszcz iskier z sufitu osiada na głowach + + + Dym coraz gęstszy, obcy ktoś się wdziera + A my wciśnięci w najdalszy sali kąt + Tędy — wrzeszczy — niech was jasna cholera! + A my nie chcemy uciekać stąd + + + + A my nie chcemy uciekać stąd + Krzyczymy w szale wściekłości i pokory + Stanął w ogniu nasz wielki dom + Dom dla psychicznie i nerwowo chorych + + + + + + + + Przybycie Tytanów + Poezja śpiewana + + + + + chord positioning + + + Adam + Onufry + + Dodaje rozmieszczenie akordów.Nie jestem na 100% pewien płyty + + diff --git a/songs/pl/bardowie/Ambasadorowie.xml b/songs/pl/bardowie/Ambasadorowie.xml new file mode 100644 index 00000000..35789504 --- /dev/null +++ b/songs/pl/bardowie/Ambasadorowie.xml @@ -0,0 +1,65 @@ + + + Jacek Kaczmarski + Jacek Kaczmarski + Jacek Kaczmarski + + + Jeszcze pod ręką globus - z taką mapą świata, + Na jaką stać strategię, plany i marzenia. + Jeszcze insygnia władzy, sobolowa szata, + Gęsty, trefiony włos i ręki gest bez drżenia. + Jeszcze w zasięgu dłoni zegar - jeszcze wcześnie, + Pewności siebie ruch wskazówki nie odbiera. + Wzrok - lustro duszy - widzi wszystko nawet we śnie, + Któremu spokój niesie Cyfra i Litera. + + + Tyle zrobili już, jak na swe młode lata, + Ulega dziejów wosk ich nieomylnym śladom - + To George de Selve - obiecujący dyplomata + I Jean de Dinteville - francuski ambasador. + + + Dyskretny przepych - tylko echem dostojeństwa, + Turecki dywan, włoska lutnia - znak obycia. + W milczących ustach bezwzględnego smak zwycięstwa, + W postawach - wielkość - osiągnięta już za życia. + Ciężka kotara obu wspiera tym - co kryje. + Patrzą przed siebie śmiało, pewni swoich racji, + Wszak dyplomacja włada wszystkim dziś - co żyje, + A oni - kwiat szesnastowiecznej dyplomacji! + + + Nie wiedzą, co to ból, co dżuma, albo katar. + Zachciankom wielkich - świat uczyni zawsze zadość! + To George de Selve - obiecujący dyplomata + I Jean de Dinteville - francuski ambasador. + + + Lecz w nastrojonej lutni nagle struna pęka + I żółkną brzegi kart w otwartej wiedzy księdze… + Za krucyfiksem błądzi mimowolnie ręka + Strzałka zegara iść zaczyna coraz prędzej! + Straszliwy kształt przed nimi zjawia się w pół kroku + I niszczy spokój - czy artysta się wygłupia? + Nie, to nie żart! Na kształt ten trzeba spojrzeć z boku! + Żeby zobaczyć jasno, że to czaszka trupia! + + + Byli - i nie ma ich, ach - cóż za wielka strata! + Jak nazywali się? Któż dzisiaj tego świadom? + Ach! George de Selve! Obiecujący dyplomata… + Ach! Jean de Dinteville, francuski ambasador… + + + + + Poezja śpiewana + + + + Onufry + + + diff --git a/songs/pl/bardowie/Bajka_o_glupim_Jasiu.xml b/songs/pl/bardowie/Bajka_o_glupim_Jasiu.xml new file mode 100644 index 00000000..47d1e9d7 --- /dev/null +++ b/songs/pl/bardowie/Bajka_o_glupim_Jasiu.xml @@ -0,0 +1,135 @@ + + + Głupi Jasio + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Ojców dom pożegnał głupi Jasio, + Szukać Wody Życia rad nierad. + Stopy ścisnął swym niedobrym braciom, + Którzy siłą go wysłali w świat. + Schedę jego wezmą i zmarnują — + Nic powiedzieć nie mógł, choćby chciał, + Więc wyruszył w drogę pogwizdując — + Starczy mu, że mowę zwierząt znał, + Starczy mu, że mowę zwierząt znał. + + + -- Głupi Jasiu, głupi Jasiu — + Śmiał się w lesie szczebiot ptasi + -- Prawda to, że ci rozumu brak! + Woda Życia nie istnieje, + A w obczyźnie nam zmarniejesz — + Ale on przed siebie szedł i tak, + Ale on przed siebie szedł i tak. + + + Szedł za słonkiem tam, gdzie zachodziło; + Pod stopami chrzęścił złoty żwir. + Ale złoto Jasia nie olśniło, + Wsłuchał się w wieczorny ptaków tryl. + -- Idź — ćwierkały ptaki — do stolicy, + Gdzie umiera Król na łożu z piór. + Uzdrów go wywarem z ziarn pszenicy, + On ci władzę da i jedną z cór, + On ci władzę da i jedną z cór. + + + -- Głupi Jasiu, głupi Jasiu — + Wabił w lesie szczebiot ptasi + -- Wszak bogactwo lepsze jest od biedy! + Nie istnieje Woda Życia, + Więc przynajmniej miej coś z życia — + Ale on i tak przed siebie szedł, + Ale on i tak przed siebie szedł. + + + Nie chciał władzy Jasio, bo był głupi + I nie myślał o najsłodszym z ciał, + Bo by się miłością, władzą upił, + A on Wodę Życia znaleźć miał. + Zawędrował w osypiska dzikie, + Gdzie się węże wiły mu u nóg. + Uciekłby, kto mądry, przed ich sykiem, + Ale Jasio syk zrozumieć mógł, + Ale Jasio syk zrozumieć mógł. + + + -- Głupi Jasiu, głupi Jasiu, + Jeśliś nas się nie przestraszył, + Idź przed siebie ścieżką na sam szczyt. + Lecz uważaj na uroki, + Nie oglądaj się na boki, + Bo cię wtedy nie ocali nikt, + Bo cię wtedy nie ocali nikt. + + + Pnie się w górę ścieżką kamienistą + Wśród upiorów, widm, bezgłowych ciał, + Ale nie przeraża go to wszystko + Bo nie takie strachy z domu znał. + Widzi już na szczycie, jak ze źródła + Woda Życia tryska srebrną mgłą, + A przy źródle jeden z braci mruga — + Popatrz Jasiu w dół, tam jest twój dom, + Popatrz Jasiu w dół, tam jest twój dom. + + + upi Jasiu, głupi Jasiu, + Coś na złudę się połasił, + Raz spojrzałeś w dół, jedyny raz, + Na nic trud i droga krwawa, + Zniknął dom i brata zjawa + I zmieniłeś się pod szczytem w głaz, + I zmieniłeś się pod szczytem w głaz. + + + Wraca teraz głupi Jaś z kamienia, + Pełznie drogą rok po roku cal, + Lecz przeminą całe pokolenia, + Nim pokonać zdoła złota dal. + A gdy dotrze już do domu kamień, + Dzieciom ktoś opowie o nim baśń + I pojawi się przy starej bramie + Ożywiony baśnią głupi Jaś, + Ożywiony baśnią głupi Jaś. + + + upi Jasiu, głupi Jasiu, + Rozumiałeś mowę ptasią, + Ale więcej już rozumiesz dziś — + + W baśniach śpią prawdziwe dzieje, + Woda Życia nie istnieje, + Ale zawsze warto po nią iść, + + Ale zawsze warto po nią iść. + + + + + + + + + Głupi Jasio + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + Jest jakaś sensowniejsza notacja bisów z różnymi akordami na końcach zwrotek? + + + + diff --git a/songs/pl/bardowie/Ballada_Wrzesniowa.xml b/songs/pl/bardowie/Ballada_Wrzesniowa.xml new file mode 100644 index 00000000..aa3c8322 --- /dev/null +++ b/songs/pl/bardowie/Ballada_Wrzesniowa.xml @@ -0,0 +1,97 @@ + + + + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + ugośmy na ten dzień czekali + Z nadzieją niecierpliwą w duszy, + Kiedy bez stów Towarzysz Stalin + Na mapie fajką strzałki ruszy. + + + Krzyk jeden pomknął wzdłuż granicy, + I zanim zmilkł zagrzmiały działa. + To w bój z szybkością nawałnicy + Armia Czerwona wyruszała. + + + + A cóż to za historia nowa? + Zdumiona spyta Europa, + + Jak to? To chłopcy Mołotowa + I sojusznicy Ribbentroppa. + + + + Zwycięstw się szlak ich serią znaczy + Sztandar wolności okrył chwałą. + owami polskich posiadaczy + Brukują Ukrainę całą. + + + Pada Podole, w hołdach Wołyń, + Lud pieśnią wita ustrój nowy. + Płoną majątki i kościoły + I Chrystus z kulą w tyle głowy. + + + Nad polem bitwy dłonie wzniosą + We wspólną pięść co dech zapiera + + Nieprzeliczone dzieci Soso, + Niezwyciężony miot Hitlera. + + + + Już starty z map wersalski bękart, + Już wolny Żyd i Białorusin, + Już nigdy więcej Polska ręka + Ich do niczego nie przymusi. + + + Nową im wolność głosi "Prawda", + Świat cały wieść obiega w lot, + Że jeden odtąd łączy sztandar + Gwiazdę, sierp, hakenkreuz i młot. + + + Tych dni historia nie zapomni, + Gdy stary ląd w zdumieniu zastygł + + I święcić będą nam potomni + Po pierwszym września - siedemnasty. + + + + + + + + + + + + + + + Poezja śpiewana + + + + chords + + + Onufry + + + Akordy wg śpiewnika Encore, ja za nie głowy nie dam, bo tego nie gram. + + + diff --git a/songs/Dylan_--_pastisz.xml b/songs/pl/bardowie/Bob_Dylan.xml similarity index 98% rename from songs/Dylan_--_pastisz.xml rename to songs/pl/bardowie/Bob_Dylan.xml index c07b7883..378e8815 100644 --- a/songs/Dylan_--_pastisz.xml +++ b/songs/pl/bardowie/Bob_Dylan.xml @@ -1,5 +1,5 @@ - + Jacek Kaczmarski diff --git a/songs/pl/bardowie/Ci_wszyscy_ludzie.xml b/songs/pl/bardowie/Ci_wszyscy_ludzie.xml new file mode 100644 index 00000000..1d4e6a4c --- /dev/null +++ b/songs/pl/bardowie/Ci_wszyscy_ludzie.xml @@ -0,0 +1,74 @@ + + + + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Ci wszyscy ludzie, którzy poszli precz + Z naszego życia, z naszego życia, + To także nasza rzecz, nie tylko ich to rzecz, + To stawka winy nie do przebicia. + To także nasza rzecz, nie tylko ich to rzecz, + To stawka winy nie do przebicia. + + + Ci wszyscy ludzie, których kazał minąć + Nasz pośpiech nagły, nasz pośpiech nagły, + Nieodwracalnie z pamięci naszej giną + I całych światów kształt odchodzi w diabły. + Nieodwracalnie z pamięci naszej giną + I całych światów kształt odchodzi w diabły. + + + Ci wszyscy ludzie, których nie ma j + (Nas dla nich nie ma też, nas dla nich nie ma) + Wiedzą, że nawet nie wiemy gdzie ich grób, + Że oni dla nas to tylko rozmów temat. + Wiedzą, że nawet nie wiemy gdzie ich grób, + Że oni dla nas to tylko rozmów temat. + + + Ci wszyscy ludzie, którzy wokół nas + Zawsze - nie tacy, zawsze - nie tacy, + Niegodni rozmów i niegodni łask - + Są, żyją, błądzą, więc nie mają racji. + Niegodni rozmów i niegodni łask - + Są, żyją, błądzą, więc nie mają racji. + + + Ci wszyscy ludzie, czyli wszyscy - my + My pominięci, my pochowani, + Żyjemy, jak pozwalaliśmy żyć — + Niepamiętanym, niewysłuchanym. + Żyjemy, jak pozwalaliśmy żyć — + Niepamiętanym, niewysłuchanym. + + + + + + + + + + Dzieci Hioba + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/bardowie/Dwie_skaly.xml b/songs/pl/bardowie/Dwie_skaly.xml new file mode 100644 index 00000000..636b4230 --- /dev/null +++ b/songs/pl/bardowie/Dwie_skaly.xml @@ -0,0 +1,79 @@ + + + Two Rocks + Jacek Kaczmarski + Refren — agresywnie, zwrotki — łagodnie, w ostatniej o jeden ton w górę. + Jacek Kaczmarski + Jacek Kaczmarski + + + + + + Po sztormach, burzach, nawałnicach, szkwałach + Na dwóch bliźniaczych zamieszkałem skałach. + Trzymam się obu w ciszy i zawiei — + Skały rozpaczy i skały nadziei. + + + Obie prastare i obie rzeźbione + Siłą żywiołów nieświadomych znaczeń; + Skałą rozpaczy — nadzieje stracone, + Skałą nadziei — przetrwane rozpacze. + + + Po sztormach, burzach, nawałnicach, szkwałach + Na dwóch bliźniaczych zamieszkałem skałach. + Od świtu do zmierzchu, od zmierzchu do świtu + Na skale grozy i skale zachwytu. + + + Obie potężne i obie wspaniałe + Wbrew horyzontom posągowe pozy; + Na skale grozy - zachwyty zwietrzałe, + W skale zachwytu - ciemna ruda grozy. + + + Po sztormach, burzach, nawałnicach, szkwałach + Na dwóch bliźniaczych zamieszkałem skałach. + Czekały na mnie przecież od początku: + Skała szaleństwa i skała rozsądku. + + + Obie lekarstwem przeciw nudzie ducha, + Obie modlitwy godne i przekleństwa; + W skale szaleństwa - rozsądku grań krucha, + W skale rozsądku - jaskinie szaleństwa. + + + Po sztormach, burzach, nawałnicach, szkwałach + Na dwóch bliźniaczych zamieszkałem skałach. + Jedna dla drugiej lustrem i wyrzutem, + A przecież z jednej energii wyklute. + + + Łączy je w głębiach niewidoczny korzeń + Którym na trwałe w sedno bytu wbite; + Tam, gdzie rozsądek - rozpaczą i grozą + Nadzieja - szaleństwem, szaleństwo - zachwytem. + + + + + + + Dwie Skały + + + + + + chord positioning + + + Michał Korch + + + + + diff --git a/songs/pl/bardowie/Jalta.xml b/songs/pl/bardowie/Jalta.xml new file mode 100644 index 00000000..e5a8d38c --- /dev/null +++ b/songs/pl/bardowie/Jalta.xml @@ -0,0 +1,120 @@ + + + + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Jak nowa rezydencja carów + użba swe obowiązki zna + Precz wysiedlono stąd Tatarów + Gdzie na świat wyrok zapaść ma + Okna już widzą słyszą ściany + Jak kaszle nad cygarem lew + Jak skrzypi wózek popychany + Z kalekim demokratą w tle + Lecz nikt nie widzi i nie słyszy + Co robi Góral w krymską noc + Gdy gestem w wiernych towarzyszy + Wpaja swą legendarną moc + + + Nie miejcie żalu do Stalina + Nie on się za tym wszystkim krył + Przecież to nie jest jego wina + Że Roosevelt w Jałcie nie miał s + Gdy się triumwirat wspólnie br + Za świata historyczne kształty + Wiadomo kto Cezara gr + I tak rozumieć trzeba Jałtę + + + W resztce cygara mdłym ogniku + Pływała Lwa Albionu twarz + Nie rozmawiajmy o Bałtyku + Po co w Europie tyle państw + Polacy — chodzi tylko o to + Żeby gdzieś w końcu mogli żyć + Z tą Polską zawsze są kłopoty + Kaleka troszczy się i drży + Lecz uspokaja ich gospodarz + Pożółkły dłonią głaszcząc wąs + Mój kraj pomocną dłoń im poda + Potem niech rządzą się jak chcą + + + Nie miejcie żalu do Churchilla + Nie on wszak za tym wszystkim stał + Wszak tylko po to tylko był tryumwirat + By Stalin dostał to co chciał + Komu zależy na pokoju + Ten zawsze cofnie się przed gwałtem + Wygra, kto się nie boi wojen + I tak rozumieć trzeba Jałtę + + + Ściana pałacu słuch napina + Gdy do kaleki mówi Lew + Ja wierzę w szczerość słów Stalina + Dba chyba o radziecką krew + I potakuje mu kaleka + Niezłomny demokracji stróż + Stalin to ktoś na miarę wieku + Oto mąż stanu, oto wódz! + Bo sojusz wielkich to nie zmowa + To przyszłość świata, wolność, ład + Przy nim i słaby się uchowa + I swoją część otrzyma strat + + + Nie miejcie żalu do Roosevelta + Pomyślcie ile musiał znieść + Fajka, dym cygar i butelka + Churchill co miał sojusze gdzieś + Wszakże radziły trzy imperia + Nad granicami co zatarte + W szczegółach zaś już siedział Beria + I tak rozumieć trzeba Jałtę + + + Więc delegacje odleciały + Ucichł na Krymie carski gród + Gdy na zachodzie działa grzmiały + Transporty ludzi szły na wschód + Świat wolny święcił potem tryumf + Opustoszały nagle fronty + W kwiatach już prezydenta grób + A tam transporty i transporty + Czerwony świt się z nocy budzi + Z woli wyborców odszedł Churchill + A tam transporty żywych ludzi + A tam obozy długiej śmierci + + + Nie miejcie więc do Trójcy żalu + Wyrok historii za nią stał + Opracowany w każdym calu + Każdy z nich chronił, co już miał + Mógł mylić się, zwiedziony chwilą + Nie był Polakiem ani Bałtem + Tylko ofiary się nie mylą + I tak rozumieć trzeba Jałtę + + + + + + + + + + + + + + + diff --git a/songs/pl/bardowie/Kantyczka_z_lotu_ptaka.xml b/songs/pl/bardowie/Kantyczka_z_lotu_ptaka.xml new file mode 100644 index 00000000..d3982e33 --- /dev/null +++ b/songs/pl/bardowie/Kantyczka_z_lotu_ptaka.xml @@ -0,0 +1,104 @@ + + + + Jacek Kaczmarski + + Przemysław Gintrowski + Jacek Kaczmarski; Przemysław Gintrowski + + + + + — Patrz, mój dobrotliwy Boże, + Na swój ulubiony ludek, + Jak wychodzi rano w zboże + Zginać harde karki z trudem. + Patrz jak schyla się nad pracą, + Jak pokornie klęski znosi + I nie pyta – Po co? Za co? + Czasem o coś Cię poprosi + + + — Ujmij trochę łaski nieba! + Daj spokoju w zamian chleba! + Innym udziel swej miłości! + Nam – sprawiedliwości! + + + — Smuć się, Chryste Panie, w chmurze + Widząc, jak się naród bawi, + Znowu chciałby być przedmurzem + I w pogańskiej krwi się pławić. + Dymią kuźnie i warsztaty, + Lecz nie pracą a – skargami, + Że nie taka jak przed laty + Łaska Twoja nad hufcami: + + + — Siły grożą Ci nieczyste + Daj nam wsławić się, o Chryste! + Kalwin, Litwin nam ubliża! + Dźwigniem ciężar Krzyża! + + + — Załam ręce, Matko Boska; + Upadają obyczaje, + Nie pomogła modłom chłosta – + Młodzież w szranki ciała staje. + W nędzy gzi się krew gorąca + Bez sumienia, bez oddechu, + Po czym z własnych trzewi strząsa + Niedojrzały owoc grzechu. + + + — Co zbawienie nam, czy piekło! + Byle życie nie uciekło! + Jeszcze będzie czas umierać! + Żyjmy tu i teraz! + + + — Grzmijcie gniewem Wszyscy Święci! + Handel lud zalewa boży, + Obce kupce i klienci + W złote wabią go obroże. + Liczy chciwy Żyd i Niemiec + Dziś po ile polska czystość; + Kupi dusze, kupi ziemie + I zostawi pośmiewisko… + + + — Co nam hańba, gdy talary + Mają lepszy kurs od wiary! + Wymienimy na walutę + Honor i pokutę! + + + — Jeden naród, tyle kwestii! + Wszystkich naraz – nie wysłuchasz! – + Zadumali się Niebiescy + W imię Ojca, Syna, Ducha… + + + + + + + + + + + + + + + Onufry + + + + + + + + + + diff --git a/songs/Kolysanka.xml b/songs/pl/bardowie/Kolysanka.xml similarity index 95% rename from songs/Kolysanka.xml rename to songs/pl/bardowie/Kolysanka.xml index e47c8ea4..ede5d999 100644 --- a/songs/Kolysanka.xml +++ b/songs/pl/bardowie/Kolysanka.xml @@ -1,5 +1,5 @@ - + Jacek Kaczmarski @@ -22,10 +22,10 @@ Z łóżka mnie nad ranem wzięli kiedy tatę brali - Mówiąc -- teraz my będziemy cię wychowywali + Mówiąc — teraz my będziemy cię wychowywali - Twoja stara zwiała -- szczwana i nieprędko wróci + Twoja stara zwiała — szczwana i nieprędko wróci Stary wyrok ma nagrany trójkę z karku zrzuci diff --git a/songs/pl/bardowie/Lekcja_historii_klasycznej.xml b/songs/pl/bardowie/Lekcja_historii_klasycznej.xml new file mode 100644 index 00000000..eb4b52e5 --- /dev/null +++ b/songs/pl/bardowie/Lekcja_historii_klasycznej.xml @@ -0,0 +1,60 @@ + + + Galia + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Galia est omnis divisa in partes tres + Quorum unam incolunt Belgae aliam Aquitani + Tertiam qui ipsorum lingua Celtae nostra Gali apelantur + O ave Caesar, morituri te salutant! + + + Nad Europą twardy krok legionów grzmi + Nieunikniony wróży koniec republiki + Gniją wzgórza galijskie w pomieszanej krwi + A Juliusz Cezar pisze swoje pamiętniki + + + + Pozwól Cezarze gdy zdobędziemy cały świat + Gwałcić rabować sycić wszelkie pożądania + Proste prośby żołnierzy te same są od lat + A Juliusz Cezar milcząc zabaw nie zabrania + + + + Cywilizuje podbite narody nowy ład + Rosną krzyże przy drogach od Renu do Nilu + Skargą krzykiem i płaczem rozbrzmiewa cały świat + A Juliusz Cezar ćwiczy lapidarność stylu + + + + + + + + Onufry + + + Było prawie OK samo, nic nie trzeba było robić, poza jedną zmianą (skasowałem wstawkę instrumentalną i wrzuciłem ją po tekście w ostatniej linijce każdej zwrotki i refrenu, tak się chyba lepiej czyta do gry) + + + + + + + chord positioning + + + + + Krzyk + Poezja śpiewana + diff --git a/songs/Limeryk_o_narodach_(3).xml b/songs/pl/bardowie/Limeryk_o_narodach.xml similarity index 67% rename from songs/Limeryk_o_narodach_(3).xml rename to songs/pl/bardowie/Limeryk_o_narodach.xml index 58fee231..1e7ea48a 100644 --- a/songs/Limeryk_o_narodach_(3).xml +++ b/songs/pl/bardowie/Limeryk_o_narodach.xml @@ -1,5 +1,5 @@ - + Jacek Kaczmarski @@ -9,160 +9,160 @@ - Był Anglik co przyjaźń nawiązał z Hindusem - Z najczystrzej sympatii, a nie pod przymusem, + Był Anglik, co przyjaźń nawiązał z Hindusem + Z najczystszej sympatii, a nie pod przymusem. Do dzisiaj by trwała - Ta przyjaźń wspaniała - Lecz Hindus nieświerzy dał mu ser. - Pretensje mieć trudno do tego Anglika - Gdy druch w narodowej go dumie dotyka, + Ta przyjaźń wspaniała, + Lecz Hindus nieświeży dał mu ser. + Pretensje mieć trudno do tego Anglika, + Gdy druh w narodowej go dumie dotyka. Więc wzgardził pariasem I przyjaźń swą z czasem - Położył u stup Irlandczyka + Położył u stóp - Irlandczyka. - Narody, narody, po diabła narody - Stojące na drodze do szczęścia i zgody, - Historia nam daje dobite dowody - Pragniecie pokoju -- usuńcie przeszkody - Narody, narody, narody + Narody, narody! Po diabła narody + Stojące na drodze do szczęścia i zgody? + Historia nam daje dobite dowody: + Pragniecie pokoju? - Usuńcie przeszkody - + Narody, narody, narody! - Raz Francóz sąsiada miał, co z Somalii, - W Tuluzie mieszkali i pastis piajli, + Raz Francuz sąsiada miał, co był z Somalii, + W Tuluzie mieszkali i pastis pijali. Lecz wnet się przekonał - Potomek Daltona, + Potomek Daltona Że druh jego łeb ma ze stali. Nie mieli pretensji koledzy Francuza, Że przepić nie umiał czarnego łobuza, - Lecz rzekli: Mom ami, - Jak pić chcesz, to z nami, + Lecz rzekli: Mon ami, + Jak pić chcesz - to z nami! Bo nie dla przybłędów Tuluza. Raz Chińczyk w Japonce się tak zauroczył, - Że wizję małżeństa był przed nią roztoczył, - Lecz kwiat Kraju Wiśni - Rzekł: Ani się mi śni, - Spójrz w lustro, wszak skośne masz oczy + Że wizje małżeństwa był przed nią roztoczył, + Lecz Kwiat Kraju Wiśni + Rzekł -ani się mi śni! + Spójrz w lustro, wszak skośne masz oczy! Cóż z sercem złamanym uczynić na świecie? - Więc poszedł do wojska i śnił o odwecie, - Lecz, losu ironio, - Brak było wojny z Japonią - Do mnichów dziś strzela w Tybecie. + Więc poszedł do wojska i śnił o odwecie. + Lecz - losu ironio! - + Brak wojny z Japonią + Do mnichów dziś strzela w Tybecie! Sympatię Singalez raz czuł do Tamila, - Choć wrogość dzieliła ich ludy na Sri La- - nce, dawnym Cejlonie, + Choć wrogość dzieliła ich ludy na Sri-La- + Nce - dawnym Cejlonie, Gdzie nawet są słonie, W polityce mądre nad wyraz. - Lecz słoń Singaleza, Tamilów sympatyk, - Zwykł mu po nocy wykradać granaty - I poją Singalez, - Że musi, choć z żalem. + Lecz słoń Singaleza - Tamilów sympatyk - + Zwykł noc mu po nocy wykradać granaty, + I pojął Singalez, + Że musi, choć z żalem Sympatie swe spisać na straty. - Był też Palestyńczyk, co z Żydem się bratał, - W przyjaźni tej widząc nadzieje dla świata, + Był też Palestyńczyk, co z Żydem się bratał + W przyjaźni tej widząc nadzieję dla świata, Strzelając do niego Powtarzał: Kolego, Ta krew nas połączy na lata. Lecz w takiej przyjaźni nie widział Żyd cnoty, Bo nie miał ochoty na nowe Golgoty, - Więc rzekł: Przyjacielu - My tu, w Izraelu, - Nie mamy dla ciebie roboty. + Więc rzekł - przyjacielu, + My tu, w Izraelu + Nie mamy dla ciebie roboty! - Libijczyk choć żony miał trzy muzułmanki, - Czadyjkę wprowadził do swojej lepianki + Libijczyk, choć żony miał trzy, muzułmanki, + Czadyjkę sprowadził do swojej lepianki I rzekł: Dla przykładu Dam ja z tobą czadu. - I brał ją wieczory i ranki. - Choć miłość przeszkodu pokonać potrafi, + I brał ją - wieczory i ranki. + Choć miłość przeszkody pokonać potrafi - Nie zebrał za czyn swój Libijczyk ów braw i Dla dobra socjali- - zmu ją mu zabrali + Zmu ją mu zabrali Ci, których wychował Kadafi. - Bez tchu w herbaciarni wypiwszy pięć herbat, - Albańczy zapałał przyjaźnią do Serba, + Bez tchu w herbaciarni wypiwszy pięć herbat + Albańczyk zapałał przyjaźnią do Serba, Lecz Serb po śliwowi- cy Albańczykowi Na zębach wypisał swój herbarz. - Szczerbaty Albańczyk to pół Albańczyka + Szczerbaty Albańczyk - to pół Albańczyka, Niejeden polityk się na tym potyka, Choć jęczy duch Tity, Że zbędny polityk, - Gdzie trzeba dentysty praktyka. + Gdzie trzeba dentysty - praktyka. - Na Cyprze był Turek, co druha miał Greka, + Na Cyprze był Turek, co druha miał - Greka, Obydwu zabrała rodzima bezpieka, Przy więźniów wymianie - Spotkali się w bramie, - Bez słowa minęli człek człeka. + Spotkali się w bramie - + Bez słowa minęli - człek człeka. Wnet Greczyn u Turków, u Greków zaś Turek - O jednej godzinie stanęli pod murek, + O jednej godzinie stanęli pod murek. W czas potem niedługi Na jednym i drugim Piaszczysty się wznosił pagórek. - Rosjanin był, który (nie jego to wina) - Za brata uwarzał pewnego Gruzina, + Rosjanin był, który - nie jego to wina - + Za brata uważał pewnego Gruzina. Czas drużby był krótki, Bo ów nie pił wódki, Rosjanin nie pijał zaś wina. Napisał na niego gdzie trzeba więc donos - I łzę nad przyjaźnią utoczył wzmocnioną, + I łzę nad przyjaźnią utoczył wzmocnioną. W obozie zaś Gruzin Odsiedział lat tuzin, - Lecz przecież go w końcu zwolniono + Lecz przecież go w końcu zwolniono! - Ci wszyscy, o których tak długo ty mędzę, - Co dzień widują na forum ONZ + Ci wszyscy, o których tak długo ty mendzę, + Co dzień się widują na forum OeNZet I skarżą się wzajem Na ludy i kraje, Nie skarżąc się jednak na nędzę. - Bo mają do siebie już te kuluary, + Bo mają do siebie już to kuluary Gdzie naród z narodem się chwyta za bary, Że nie o to chodzi, Kto komu gdzie szkodzi, - Lecz o to, po ile dolary. + Lecz o to - po ile dolary. - Był Polak patriota, co przy wódki skrzynce - Zawierał przyjaźni pakt z Ukraińcem, + Był Polak-patriota, co przy wódki skrzynce + Zawierał przyjaźni pakt z Ukraińcem. Od słowa do słowa Dotarli do Lwowa, - Ścierajęc się jak dwa odyńce. - Gdy bić się skończyli, trafili za kraty, - Podarłszy w pamięci doniosłe traktaty, - Bo gdy przyjdzie czas, - Wy nas, a my was - Po brzuchach budem ryzaty. + Ścierając się jak dwa odyńce. + Gdy bić się skończyli, trafili za kraty + Podarłszy w pamięci doniosłe traktaty: + Bo gdy przyjdzie czas - + Wy nas, a my was! + Po brzuchach! - i: budem rezaty! - Ach. Gdybyż narodów na świecie nie było, - Jak nam by się wtedy szczęśliwie żyło, + Ach gdybyż narodów na świecie nie było, + Jak nam by się wtedy szczęśliwie tu żyło! Dla dobra człowieka, dla szczęścia ludzkości, - Złączonej w potężnym uścisku miłości - - Aż z trzaskiem pękały by kości + Złączonej w potężnym uścisku miłości, + Aż z trzaskiem pękałyby kości. diff --git a/songs/Modlitwa.xml b/songs/pl/bardowie/Modlitwa.xml similarity index 81% rename from songs/Modlitwa.xml rename to songs/pl/bardowie/Modlitwa.xml index 6c97c678..e07370d4 100644 --- a/songs/Modlitwa.xml +++ b/songs/pl/bardowie/Modlitwa.xml @@ -1,5 +1,5 @@ - + Jacek Kaczmarski @@ -9,25 +9,25 @@ - Jeśli nas Matka Boska nie obroni + Jeśli nas Matka Boska nie obroni To co się stanie z tym narodem? Codzienne modły więc zanoszę do niej By ocaliła nas przed głodem - Przed głodem ust, którym zabrakło chleba + Przed głodem ust, którym zabrakło chleba Przed głodem serc, w których nie mieszka miłość Przed głodem zemsty, której nam nie trzeba Przed głodem władzy, co jest tylko siłą - Jeśli nas Matka Boska nie obroni + Jeśli nas Matka Boska nie obroni To co się stanie z Polakami? Codzienne modły więc zanoszę do niej By ocaliła nas przed nami - Nami, co toną, tonąc innych topią + Nami, co toną, tonąc innych topią Co marzą, innym odmawiając marzeń Co z głową w pętli jeszcze nogą kopią By ślad zostawić na kopniętej twarzy diff --git a/songs/Modlitwa_o_wschodzie_slonca.xml b/songs/pl/bardowie/Modlitwa_o_wschodzie_slonca.xml similarity index 68% rename from songs/Modlitwa_o_wschodzie_slonca.xml rename to songs/pl/bardowie/Modlitwa_o_wschodzie_slonca.xml index b29d6258..d39eed16 100644 --- a/songs/Modlitwa_o_wschodzie_slonca.xml +++ b/songs/pl/bardowie/Modlitwa_o_wschodzie_slonca.xml @@ -1,5 +1,5 @@ - + Natan Tenenbaum Ta piosenka dysponuje dwoma typami chwytów - jedne ze wzoszącą się tonacją (bardziej popularna), druga płaska. Tu zaprezentowana ta wznosząca. @@ -10,21 +10,21 @@ Ponadto rozmieszczenie chwytów jest takie, jak ja śpiewam, niekoniecznie zgodn - Każdy Twój wyrok przyjmę twardy - Przed mocą Twoją się ukorzę + Każdy Twój wyrok przyjmę twardy + Przed mocą Twoją się ukorzę Ale chroń mnie Panie od pogardy - Przed nienawiścią strzeż mnie Boże + Przed nienawiścią strzeż mnie Boże - Wszak Tyś jest niezmierzone dobro - Którego nie wyrażą słowa + Wszak Tyś jest niezmierzone dobro + Którego nie wyrażą słowa Więc mnie od nienawiści obroń I od pogardy mnie zachowaj - Co postanowisz niech się ziści - Niechaj się wola Twoja stanie + Co postanowisz niech się ziści + Niechaj się wola Twoja stanie Ale zbaw mnie od nienawiści Ocal mnie od pogardy Panie diff --git a/songs/pl/bardowie/Mucha_w_szklance_lemoniady.xml b/songs/pl/bardowie/Mucha_w_szklance_lemoniady.xml new file mode 100644 index 00000000..efe7a9ee --- /dev/null +++ b/songs/pl/bardowie/Mucha_w_szklance_lemoniady.xml @@ -0,0 +1,67 @@ + + + + Jacek Kaczmarski + Metrum zwrotek 4/4, refren 3/4. + Jacek Kaczmarski + Jacek Kaczmarski + + + + + + Oliwnej lampy płomyk się wypalił, + W rodzynki się zmarszczyły winogrona. + Wbrew sobie, syty baśni, usnął kalif, + Za włos go szarpie małpka oswojona. + + + Śnij nieszczęsny, śnij szczęściarzu + O swej wierze i zwątpieniu, + Śnij o łasce, śnij o karze, + + O oazie i pragnieniu. + O pustyni i wielbłądzie, + O bogactwie i o nędzy. + Kołowrotek śnij i kądziel, + Ład dywanu, chaos przędzy. + Wyśnij skrzydlatego konia, + Wyśnij osła pod kieratem, + Labiryntu sieć na dłoniach, + Każdą zdobycz i utratę. + Śnij korzenie, śnij owoce, + Śnij pałace, śnij ruiny, + Dni milczące, gwarne noce, + Góry mrok i blask kotliny. + We śnie nie śpiesz się, masz czas, + Snom daj płynąć, a nie płonąć, + Śnij, jak śni się tylko raz + Swą maleńką nieskończoność… + + + I tak minęła noc tysięczna pierwsza, + Odpłynął śpiewny głos Szeherezady, + Nie słychać w palenisku śmiechu świerszcza, + Trup muchy pływa w szklance lemoniady. + + + + + + + + Dwie skały + + + + + + chord positioning + + + Michał Korch + + + + + diff --git a/songs/Mury.xml b/songs/pl/bardowie/Mury.xml similarity index 51% rename from songs/Mury.xml rename to songs/pl/bardowie/Mury.xml index e5a280d9..7cb01785 100644 --- a/songs/Mury.xml +++ b/songs/pl/bardowie/Mury.xml @@ -1,5 +1,5 @@ - + Jacek Kaczmarski Jacek Kaczmarski Jacek Kaczmarski @@ -18,25 +18,25 @@ I pogrzebią stary świat! - Wkrótce na pamięć znali pieśń i sama melodia bez słów - Niosła ze sobą starą treść, dreszcze na wskroś serc i głów - Śpiewali więc, klaskali w rytm, jak wystrzał poklask ich brzmiał - I ciążył łańcuch, zwlekał świt - On wciąż śpiewał i grał + Wkrótce na pamięć znali pieśń i sama melodia bez słów + Niosła ze sobą starą treść, dreszcze na wskroś serc i głów + Śpiewali więc, klaskali w rytm, jak wystrzał poklask ich brzmiał + I ciążył łańcuch, zwlekał świt + On wciąż śpiewał i grał - Aż zobaczyli ilu ich, poczuli siłę i czas - I z pieśnią, że już blisko świt szli ulicami miast - Zwalali pomniki i rwali bruk: Ten z nami? Ten przeciw nam? - Kto sam ten nasz najgorszy wróg! - A śpiewak także był sam + Aż zobaczyli ilu ich, poczuli siłę i czas + I z pieśnią, że już blisko świt szli ulicami miast + Zwalali pomniki i rwali bruk: Ten z nami? Ten przeciw nam? + Kto sam ten nasz najgorszy wróg! + A śpiewak także był sam - Patrzył na równy tłumów marsz - Milczał wsłuchany w kroków huk - A mury rosły, rosły, rosły - Łańcuch kołysał się u nóg + Patrzył na równy tłumów marsz + Milczał wsłuchany w kroków huk + A mury rosły, rosły, rosły + Łańcuch kołysał się u nóg diff --git a/songs/pl/bardowie/Nasza_klasa.xml b/songs/pl/bardowie/Nasza_klasa.xml new file mode 100644 index 00000000..ef572818 --- /dev/null +++ b/songs/pl/bardowie/Nasza_klasa.xml @@ -0,0 +1,88 @@ + + + + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Co się stało z naszą klasą, pyta Adam w Tel Awiwie, + Ciężko sprostać takim czasom, ciężko w ogóle żyć uczciwie, + Co się stało z naszą klasą, Wojtek w Szwecji w porno--klubie + Pisze dobrze mi tu płacą za to, co i tak wszak lubię + Za to, co i tak wszak lubię + + + Kaśka z Piotrkiem są w Kanadzie, bo tam mają perspektywy, + Staszek w Stanach sobie radzi, Paweł do Paryża przywykł, + Gośka z Przemkiem ledwie przędą, w maju będzie trzeci bachor, + Próżno skarżą się urzędom, że też chcieliby na Zachód. + Że też chcieliby na Zachód. + + + Za to Magda jest w Madrycie i wychodzi za Hiszpana, + Maciek w grudniu stracił życie, gdy chodzili po mieszkaniach, + Janusz ten co zawiść budził, że go każda fala niesie + Jest chirurgiem, leczy ludzi, ale brat mu się powiesił. + Ale brat mu się powiesił. + + + Marek siedzi za odmowę, bo nie strzelał do Michała. + A ja piszę ich historię i to już jest klasa cała. + Jeszcze Filip fizyk w Moskwie dziś nagrody różne zbiera, + Jeździ kiedy chce do Polski, był przyjęty przez premiera. + Był przyjęty przez premiera. + + + Odnalazłem klasę całą na wygnaniu, w kraju, w grobie, + Ale coś się pozmieniało, każdy sobie żywot skrobie. + + Odnalazłem całą klasę, wyrośniętą i dojrzałą. + Rozdrapałem młodość naszą, lecz za bardzo nie bolało. + Lecz za bardzo nie bolo. + + + Już nie chłopcy lecz mężczyźni, już kobiety nie dziewczyny. + odość szybko się zabliźni, nie ma w tym niczyjej winy. + Wszyscy są odpowiedzialni, wszyscy mają w życiu cele, + Wszyscy w miarę są normalni, ale przecież to niewiele. + Ale przecież to niewiele. + + + Nie wiem sam co mi się marzy, jaka z gwiazd nade mną świeci, + Gdy wśród tych nieobcych twarzy szukam ciągle twarzy dzieci, + Czemu wciąż przez ramię zerkam, choć nie woła nikt: "kolego!" + Że ktoś ze mną zagra w berka, lub przynajmniej w chowanego… + Lub przynajmniej w chowanego… + + + asne pędy, własne liście zapuszczamy każdy sobie + I korzenie oczywiście, na wygnaniu,w kraju,w grobie + W dół, na boki, wzwyż ku słońcu, na stracenie, w prawo, w lewo. + Kto pamięta, że to w końcu jedno i to samo drzewo. + Jedno i to samo drzewo. + + + + + + + + Taboret - na bazie korekty MichałaKrzysiek Cz. + + + + Nie wiem jak z metrum i kapodastrem itp. + + + chord positioning + + + + + Poezja śpiewana + + diff --git a/songs/pl/bardowie/Nasza_klasa_92.xml b/songs/pl/bardowie/Nasza_klasa_92.xml new file mode 100644 index 00000000..23b1f525 --- /dev/null +++ b/songs/pl/bardowie/Nasza_klasa_92.xml @@ -0,0 +1,175 @@ + + + + Jacek Kaczmarski + Specyficzny akompaniament. + Jacek Kaczmarski + Jacek Kaczmarski + + + + + + + + + Osiągnęliśmy dojrzałość, zajmujemy stanowiska, + + Co się zżarło i wychlało - na zmęczonych puchnie pyskach. + + - Cośmy pozapominali - zostawiło w oczach pustkę; + + Żar zwycięstwa nas wypalił, jak karabinową łuskę, + + Jak karabinową łuskę. + + + + + + Rysiek wreszcie umył ręce, dotąd czarne po drukarni, + + Procesuje się zawzięcie o nagłówek "Solidarni". + + Julek grać nie umiał w piłkę, zwali go - "pryszczata menda", + + Taktyki ujawnił żyłkę w otoczeniu Prezydenta, + + W otoczenia Prezydenta. + + + + + + Kopnął źle, wszedł do rezerwy, ale nawet z ławki - kopie, + + Nie zawiodą Julka nerwy w Zjednoczonej Europie… + + + + Ela żyje nawet nieźle, co rok jeździ do Nepalu, + + Przekazuje, co przywiezie, przetrwa z tego, co odpalą, + + Przetrwa z tego, co odpalą. + + + + + + Lena wyszła nieszczęśliwie za bezwzględne beztalencie, + + Co się dziesięć lat nią żywi: Lena urok ma i wzięcie, + + Zdzich uczciwie robi pieniądz, więc nerwice ma i wrzody + + Ale mu zazdrości Henio, niezadbany, zły i głodny, + + Niezadbany, zły i głodny… + + + + + + Za wzór zawsze robił Henio odrzucania trefnych ofert: + + Znał Pascala i Montaigne'a, etyki był filozofem. + + Z tej zazdrości i z tej złości znów dziś robi za wyrocznię + + Etykę mu cel uprościł zniszczy Zdzicha zanim spocznie, + + Zniszczy Zdzicha zanim spocznie. + + + + + + W sumie przyszłościowy rocznik w wiek XXI-wszy wchodzi: + + Dzieci Marca, Grudnia, stoczni, chrzestni bólów przy porodzie; + + Kajam się za wstyd i gorycz, za niewyważenie racji; + + Więc ze skruchą i pokorą uzupełniam obserwacje, + + + + Uzupełniam obserwacje: + + + + + + + + Irka z Jurkiem gdzieś ugrzęźli na wsi krytej eternitem, + + Pewnie się nie odnaleźli w Trzeciej Rzeczypospolitej. + + Zbyszek, Romek, Anka, Paweł są tak prawi, że aż łyso + + + + I czym żyją, nie wiem nawet, więc i nie ma o czym pisać, + + Więc i nie ma o czym pisać. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Poezja śpiewana + + + + + + + + + + chord positioning + + + + + + Michał Korch + + + + + + + + + + + + + diff --git a/songs/pl/bardowie/Nie_lubie.xml b/songs/pl/bardowie/Nie_lubie.xml new file mode 100644 index 00000000..fb851208 --- /dev/null +++ b/songs/pl/bardowie/Nie_lubie.xml @@ -0,0 +1,78 @@ + + + + Włodzimierz Wysocki + Agresywnie. Przetłumaczył też Kaczmarski, ale śpiewa na trochę inną melodię. + Włodzimierz Wysocki + Włodzimierz Wysocki + Wiktor Woroszylski + Ja nie lublu + + + Ja nienawidzę fatalnego końca, + Nie lubię kiedy los się śmieje w nos. + Nie znosze pory roku, dnia, miesiąca, + Gdy kością w gardle własny staje głos. + Nie lubię, gdy się draństwem chełpią dranie, + Nie lubię, gdy nieśmiali drżą jak liść. + Ani, gdy zaglądając mi przez ramię, + Ktoś obcy razem ze mną czyta list! + + + Nie lubię siebie, gdy mnie tchórz obleci, + I wstyd i wstręt ogarnia wtedy mnie. + Bardzo nie lubię, gdy strzelają w plecy, + A kiedy między oczy także nie! + Nie wierzę ludziom, gdy za głośno klaszczą, + We mgle frazesów głupio mi i źle. + Nie lubię, gdy pod sierść mnie jacyś głaszczą, + I gdy żelazo zgrzyta mi po szkle! + + + Odpycha mnie zarozumiała sytość + I mierzi język, co zapomniał słów + Takich zwyczajnych: ,,honor'', ,,przyzwoitość''… + O, niechby je przypomniał sobie znów! + Nie bawi mnie, gdy dołki kopią w nocy, + Gdy podstawiają nogę — kiepski żart. + Nie lubię i przemocy i niemocy, + Tylko Chrystusa mi na krzyżu żal… + + + W zaduchu plotek duszę się i krztuszę, + Mam za złe pustym, rozmemłanym dniom. + Nie lubię, gdy butami włażą w duszę, + A jeszcze bardziej, kiedy plują w nią! + Nie miłe mi igrzyska, targowiska! + Ich zgiełk i taniość i w rękawie nóż! + Słyszałem, że jutrzenka zmian na błyska, + Lecz tego nie polubię nigdy już! + + + + + + + + + + + + Poezja śpiewana + + + + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/bardowie/Nocny_kamboj.xml b/songs/pl/bardowie/Nocny_kamboj.xml new file mode 100644 index 00000000..23ec7ae2 --- /dev/null +++ b/songs/pl/bardowie/Nocny_kamboj.xml @@ -0,0 +1,108 @@ + + + Aktorzy łódzkiej szkoły filmowej + na motywach ścieżki dźwiękowej autorstwa Johna Barry'ego + Jacek Kaczmarski + + + wersja polska + + + + Kiedy kamboj nie ma konia, + Kiedy kamboj nie ma konia, + Nie wie po co żyje, po co je(st). + + + + Jedź do miasta wielkiego, + Do wielkiego miasta jedź, + Tam kambojom bez konia łatwiej żyć, + + + + Zapytają Cię ludzie - Gdzie jest twój koń + Powiedz by się nie przypierdalali doń. + + + + wersja angielska + + + + (O,) łen de kamboj hez noł horsez, + Łen de kamboj hez noł horsez, + Hi daznt noł tu bi or not tu bi. + + + + Lets goł tu big siti, + Tu big siti lets goł + Zer łiwałt horses izjer tu liw. + + + + End wej łil ask ju - Wer iz jor hors + End ju anser “Kis maj as” + + + + + wersja rosyjska + + + + Niet łoszadi u kamboja, + Niet łoszadi u kamboja, + On nie znajet kak jemu żyt’ + + + + Ujezżaj w balszoj gorad, + W balszoj gorad ujezżaj, + am kambojom bez łoszadi liegczie żyt’ + + + + Budu sprasziwat’ ludi – Gdzie łoszad’ twaja, + Niet łoszadi, nit szczastia ni chuja. + + + + wersja łódzka + + + Kiedy aktor nie ma rola, + Kiedy aktor nie ma rola, + Nie wie po co żyje, po co jest. + + + Kiedy aktor nie ma roli, + Lub gdy rolę swą spierdoli + Nie wie, po co żyje, po co jest. + + + Jedź do miasta małego, + Do małego miasta - Uć. + Tam aktorom bez rola łatwiej żyć + + + + Zapytają koledzy - Gdzie sukces twój + "Sukces mój, biznes mój i (taki)…" + + + + + + + + + + + + + Kasia Tabor + + + diff --git a/songs/pl/bardowie/O_krok.xml b/songs/pl/bardowie/O_krok.xml new file mode 100644 index 00000000..4db0948e --- /dev/null +++ b/songs/pl/bardowie/O_krok.xml @@ -0,0 +1,68 @@ + + + + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + O krok od źródła konają z pragnienia. + O krok od piekła szaleją z rozkoszy. + Trzeźwieją z marzeń o krok od spełnienia. + O krok od celu własny cień ich płoszy. + + + Krok od triumfu opuszczają głowy. + Podnoszą głowy o krok od wyroku. + O krok od łaski tracą dar wymowy. + Krok od przepaści przyspieszają kroku. + + + O krok od zemsty nagle wielcy duchem. + O krok od drogi błądzą w próżnych sporach. + O krok od czynu wolą frazy kruche. + O krok od jutra przeżywają wczoraj. + + + O krok od zgody pusta złość ich bierze. + O krok od wiedzy wdychają zabobon. + O krok od Boga zaprzeczają wierze. + O krok od siebie nie chcą stać się sobą. + + + O krok od śmierci żywot im niedrogi. + O krok od życia śnią minione kaźnie. + Gromadzą księgi o krok od pożogi. + O krok od klęski czują się najraźniej. + + + Tak przez godzinę, dzień, miesiąc, rok, + Aż zrobią ten jeden nieuchronny krok… + Tak przez godzinę, dzień, miesiąc, rok + Aż zrobią ten jeden nieuchronny krok. + + + + + + + + Między nami + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/Oblawa_2.xml b/songs/pl/bardowie/Oblawa_2.xml similarity index 97% rename from songs/Oblawa_2.xml rename to songs/pl/bardowie/Oblawa_2.xml index 87f58170..a0a16db1 100644 --- a/songs/Oblawa_2.xml +++ b/songs/pl/bardowie/Oblawa_2.xml @@ -1,5 +1,5 @@ - + Jacek Kaczmarski @@ -29,7 +29,7 @@ Lecz go ściga nie Bóg ściga człowiek Śmigieł świst nad głowami grad pocisków i wrzask Co wyrywa źrenice spod powiek - Strzelców twarze pijane -- w drzew konarach znad luf + Strzelców twarze pijane — w drzew konarach znad luf Wrzący deszcz wystrzelonych ładunków To już nie polowanie nie obława nie łów To planowe niszczenie gatunków diff --git a/songs/pl/bardowie/Odpowiedz_na_ankiete_Twoj_system_wartosci_.xml b/songs/pl/bardowie/Odpowiedz_na_ankiete_Twoj_system_wartosci_.xml new file mode 100644 index 00000000..384ca282 --- /dev/null +++ b/songs/pl/bardowie/Odpowiedz_na_ankiete_Twoj_system_wartosci_.xml @@ -0,0 +1,81 @@ + + + + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Polityka mi wisi + Dorodnym kalafiorem. + Błogosławieni cisi + I ci, co pyszczą w porę. + Historia mnie nie bierze, + Literatura nudzi. + Ja tam dziś w nic nie wierzę, + A już na bank - nie w ludzi. + Nawet drzewa twardnieją, by przyć, + Co tu mówić o ludziach, frajerzy! + + + A jak się urządzili + Ci z władz i z opozycji? + Ten bił, a tego bili — + Obydwaj dziś w policji. + Więc żaden mnie nie skusi + Na byle ćmoje-boje. + ogosławieni głusi + I ci, co słyszą swoje. + Nawet drzewa, by przeżyć, korzenie + Zapuszczają głęboko pod ziemię. + + + Katabas kirchę wznosi + Nie dla nas, a dla Pana. + Więc jakby sam się prosił + By z glana kapelana. + Mnie tego nikt nie wrzepi, + Ja chcę mieć święty spokój. + ogosławieni ślepi + I ci, co widzą w mroku. + Nawet drzewa rosną w ciemnościach, + W dupie mają — na czyich kościach. + + + Mnie nie rajcuje kasa, + Kwatera czy gablota. + Jak trafię skórę — klasa — + Pieroga wyłomotam. + Wykaże test, żem HIVnik, + To w żyłę — i odjadę. + ogosławieni sztywni + I ci, co żyją z czadem. + Nawet drzewa próchnieją przedwcześnie, + A przecież istnieją bezgrzesznie. + + + + + + + + + Pochwała łotrostwa + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/Opowiesc_pewnego_emigranta.xml b/songs/pl/bardowie/Opowiesc_pewnego_emigranta.xml similarity index 79% rename from songs/Opowiesc_pewnego_emigranta.xml rename to songs/pl/bardowie/Opowiesc_pewnego_emigranta.xml index 3d939505..987aed84 100644 --- a/songs/Opowiesc_pewnego_emigranta.xml +++ b/songs/pl/bardowie/Opowiesc_pewnego_emigranta.xml @@ -1,5 +1,5 @@ - + Jacek Kaczmarski @@ -11,11 +11,11 @@ Nie bój się, nie zabraknie, to krajowa czysta - Ja widzisz przed wojną byłem komunista - Bo ja chciałem być kimś, bo ja byłem Żyd - A jak Żyd nie był kimś, to ten Żyd był nikt - Może stąd dla świata tyle z nas pożytku - Że bankierom i skrzypkom nie mówią: ty Żydku! + Ja widzisz przed wojną byłem komunista + Bo ja chciałem być kimś, bo ja byłem Żyd + A jak Żyd nie był kimś, to ten Żyd był nikt + Może stąd dla świata tyle z nas pożytku + Że bankierom i skrzypkom nie mówią: ty Żydku! Ja bankierem nie byłem, ani wirtuozem @@ -26,7 +26,7 @@ Na których się miało oprzeć odbudowę - A potem mnie -- lojalnego komunistę + A potem mnie — lojalnego komunistę Przekwalifikowali na manikiurzystę Ja kocham Mozarta, bóg to dla mnie Bach A tam, gdzie pracowałem, tylko krew i strach @@ -42,8 +42,8 @@ Żem się z krajem tym związał jak mogłem najgorzej - Za tę hańbę zasługi -- Warszawa czy Kraków - Gomułka nam powiedział -- Polska dla Polaków + Za tę hańbę zasługi — Warszawa czy Kraków + Gomułka nam powiedział — Polska dla Polaków Już nie dla przybłędów pospolita rzecz Wiesław jak faraon popędził nas precz I szli profesorowie, uczeni, pisarze @@ -67,8 +67,8 @@ I tak sam sobie zgotowałem zgubę - Meloman -- nie skrzypek, nie bankier -- a ubek - Oficer polityczny -- nie russkij gieroj + Meloman — nie skrzypek, nie bankier — a ubek + Oficer polityczny — nie russkij gieroj Ani syjonista, ani też i goj Jak ja powiem Jehowie: za mną Jahwe stań! Z tą Polską związanym pępowiną hańb diff --git a/songs/pl/bardowie/Ostatnia_mruczanka_albo_spleen_Kubusia_Puchatka.xml b/songs/pl/bardowie/Ostatnia_mruczanka_albo_spleen_Kubusia_Puchatka.xml new file mode 100644 index 00000000..d43e9296 --- /dev/null +++ b/songs/pl/bardowie/Ostatnia_mruczanka_albo_spleen_Kubusia_Puchatka.xml @@ -0,0 +1,83 @@ + + + + Jacek Kaczmarski + Wiersz napisany przez Jacka Kaczmarskiego, gdy już nie mógł śpiewać. Oficjalnie nie ma więc melodii. Ja zasugerowany tytułem śpiewam go na melodię Kubusia Puchatka, co wydaje mi się (wbrew pozorom) współbrzmi z tym tekstem. + + + + + + + uchaj, Maleństwo, słuchaj dziecię, + Jak Mama Kangurzyca płacze… + Hohonie włóczą się po lesie, + Na próżno szuka cię Prosiaczek. + W gęstwinie jego hart nic niewart, + Gdy Krzyś się nudzi… bo - dojrzewa. + + + Wielkie przekleństwo dorosłości + + Określa marny los zwierzątek: + Królik Puchatka nie ugości, + + A Kłapouchy straci wątek - + Nie będzie więcej filozofem, + Gdy Krzyś okaże się Krzysztofem. + + + Zabawa się wypełni trwogą; + Krzysztof z Weltschmerzem się boryka - + apouchemu urwie ogon, + Z wściekłością prztyknie w nos Królika, + + A co najgorsze w tym przekleństwie — + Całkiem zapomni o Maleństwie. + + + Tygrysek tranu nie dostanie, + (Namiętność całkiem nałogowa) + Z pomocą nie pospieszy ani + Z pigułką - Przemądrzała Sowa, + Kto zresztą wie, co stara bredzi, + Gdy nikt jej nigdy nie odwiedzi? + + + Kubuś Puchatek, jak do trunku + Nad dzbankiem miodu łepek skłania. + Dla znacznie większych to rozumków + Sprawy są nie do rozwikłania. + Małe co nieco nie wyjaśni + Jakże tu żyć po śmierci… baśni. + + + Kiedyś drewnianym pudłem duszy + Potrząśnie Krzysztof, jak skrzypcami. + Może się nawet trochę wzruszy, + Lecz raczej wzruszy ramionami. + Bo, chociaż baśń ożywią smyczki, + To tylko raz się gra w patyczki. + + + + + + + + + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + Kubuś Puchatek + diff --git a/songs/pl/bardowie/Pan_Kmicic.xml b/songs/pl/bardowie/Pan_Kmicic.xml new file mode 100644 index 00000000..228159cc --- /dev/null +++ b/songs/pl/bardowie/Pan_Kmicic.xml @@ -0,0 +1,100 @@ + + + Jacek Kaczmarski + 27.10.1989 +(wg H. Sienkiewicza) + Jacek Kaczmarski + Jacek Kaczmarski + + + + + + + + Wilcze zęby, oczy siwe + Groźnie garść obuszkiem furczy + Gniew w zawody z wichru zrywem + Dzika radość, lot jaskółczy + Czyn to czyn zapadła klamka + Puścić kura po zaściankach + + + + Hej, kto szlachta za Kmicicem + Hajda na Wołmontowicze + + + + Przodkom kule między oczy + Krótką rozkosz dać sikorkom + Po łbie kto się napatoczy + Kijów sto chudopachołkom + Potem picie do obłędu + Studnia, śnieg — my z tobą Jędruś + + + + Zdrada, krzyż, na krzyż przysięga + Tak krucyfiks cyrografem + I oddala się Oleńka + Żądze się wychłoszcze batem + Za to swoich siec czy obcych + Jedna sprawa — za mną chłopcy + + + + Wreszcie lek na duszy blizny + Polska suknem Radziwiła + Wróg prywatny, wróg ojczyzny + Niespodzianka jakże miła + Los, sumienie, panny stratę + Wynagrodzi spór z magnatem + + + + Jasna Góra, czas pokuty + Trup, trup — Kmicic strzela z łuku + Klasztor płaszczem nieb zasnuty + W Szwedzkich armat strasznym huku + Jędrek się granatem bawi + Ksiądz Kordecki błogosławi + + + + Jest nagroda za cierpienie + Kto się śmieli, ten korzysta + Dawnych grzechów odpuszczenie + Król Jędrkowi skronie ściska + Masz Tatarów, w drogę ruszaj + Raduj Boga rzeźą w Prusach + + + + Krzyż, ojczyzna, Bóg, prywata + Warchoł w oczach zmienia skórę + Wierny jest jak topór kata + I podobną ma naturę + Więc za słuszną sprawność ręki + Będzie ręka i Oleńki + Łaska króla, dworek dzieci + Szlachcic co przykładem świeci + + + + + + + + Dzieci Hioba + + + + + chord positioning + + + Adam Foland + + + diff --git a/songs/Pan_Podbipieta.xml b/songs/pl/bardowie/Pan_Podbipieta.xml similarity index 98% rename from songs/Pan_Podbipieta.xml rename to songs/pl/bardowie/Pan_Podbipieta.xml index d818487a..b9495459 100644 --- a/songs/Pan_Podbipieta.xml +++ b/songs/pl/bardowie/Pan_Podbipieta.xml @@ -1,5 +1,5 @@ - + Jacek Kaczmarski diff --git a/songs/Pan_Wolodyjowski.xml b/songs/pl/bardowie/Pan_Wolodyjowski.xml similarity index 93% rename from songs/Pan_Wolodyjowski.xml rename to songs/pl/bardowie/Pan_Wolodyjowski.xml index 007f2644..d977af20 100644 --- a/songs/Pan_Wolodyjowski.xml +++ b/songs/pl/bardowie/Pan_Wolodyjowski.xml @@ -1,5 +1,5 @@ - + Jacek Kaczmarski @@ -21,7 +21,7 @@ Trzęsie się z płaczu pan Zagłoba Nad symboliczną Polski trumną - I krwi nie woła -- sam nad grobem + I krwi nie woła — sam nad grobem Bo umrzeć łatwo, żyć jest trudno Więc szloch rycerskie trzęsie piersi Kaja bohater się i nicpoń @@ -42,11 +42,11 @@ Nie znał mądrości swej żołnierzyk Zajęty Baśką i szabelką Nie wątpić, w sens ofiary wierzyć - Jest rzeczą łatwą -- bywa wielką + Jest rzeczą łatwą — bywa wielką Lecz potem wbrew serc pokrzepieniu Łzę cenić tylko na policzku I na niebieskim na sklepieniu - Wypisać krwią dewizę -- Nic to + Wypisać krwią dewizę — Nic to diff --git a/songs/pl/bardowie/Piesn_o_snie.xml b/songs/pl/bardowie/Piesn_o_snie.xml new file mode 100644 index 00000000..808cfaa7 --- /dev/null +++ b/songs/pl/bardowie/Piesn_o_snie.xml @@ -0,0 +1,81 @@ + + + + Jacek Kaczmarski + + Przemysław Gintrowski + + + + + + Z zimna drżąc przy domowym ognisku + Zasłuchani w głodowy kiszek marsz + Po ostatnim wypijmy kieliszku + Zanim świecy dotli się blask + Papierosa puśćmy dokoła + Przeczytajmy z zakazanych coś ksiąg + Bo nad ranem nikt przecież nie woła + Nikt nie wywoła nas stąd + + + Gdzie łajdak pokaja się szczerze + Gdzie złodziej odda swój łup + Gdzie ktoś zanim powie nie wierzę + Świętemu upadnie do stóp + Gdzie krzywdy nie będą pomszczone + Lecz wynagrodzone do cna + Gdzie dziecko bezpiecznie zrodzone + Siądzie obok jagnięcia i lwa + + + Otuleni w swoją obecność + Czując w ustach wspomnienia smak + Nie dbajmy o świadomą konieczność + Co w twarze sypie nam mak + Noc jest jedna i świt jest po nocy + Pod zamkniętą powieką trwa blask + I nikomu nie zabraknie pomocy + Dopóki nie zabraknie mu nas + + + Gdzie zdrada to wtręt z obcej mowy + Podobnie jak przemoc i gwałt + Gdzie myśli nie chowa się w słowa + Lecz jawny jej daje się kształt + Gdzie rozpacz i ból są kojone + I żadna nie kala się łza + Gdzie dziecko bezpiecznie zrodzone + Siądzie obok jagnięcia i lwa + + + Ktoś powie to senne marzenie + Nie ma nic prawdziwszego od snu + Więc w obecność swą otuleni + Wspólnie wyśnimy go tu + Ktoś powie to senne marzenie + Nie ma nic prawdziwszego od snu + Więc w obecność swą otuleni + Wspólnie wyśnimy go tu + + + + + + + + + Onufry + + + + + + + chords + + + + + + diff --git a/songs/pl/bardowie/Pijak.xml b/songs/pl/bardowie/Pijak.xml new file mode 100644 index 00000000..567e95c5 --- /dev/null +++ b/songs/pl/bardowie/Pijak.xml @@ -0,0 +1,125 @@ + + + + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Napełnij szklankę mi + Ostatni nalej raz + Napełnij szklankę mi + I pójdę bo już czas + Nie płaczę pozwól p + Bo wstyd mi sobą b + + Napełnij szklankę mi + Napełnij szklankę mi + + + + Pijemy zdrowie twe + Bo łatwo mówić że + oży wszystko s + Że już nie będzie źle + Tym lepiej jeśli te + Proroctwa kłamstwem są + + Upiję wkrótce się + I zgubię ufność swą + + + + Pijemy zdrowie tych + Co dziś weseli są + Przyjaciół krewnych złych + Co z mego życia drwią + Tym lepiej jeśli mnie + Rozdrażnią drwiną swą + + Upiję wkrótce się + I zgubię nienawiść swą + + + + Napełnij szklankę mi + Ostatni nalej raz + Napełnij szklankę mi + I pójdę bo już czas + Tym lepiej jeśli mnie + Rozdrażni wino twe + + Upiję wkrótce się + Upiję wkrótce się + + + + Za moje zdrowie pij + Pijemy z winy mnie + I jeśli chcesz to bij + A jeśli nie to nie + Tym lepiej jeśli mnie + Cios dosięgnie twój + + Upiję wkrótce się + I żal zgubię mój + + + + Za te dziewczyny pij + Co będą kochać mnie + Za te dziewczyny pij + Co mówią o mnie źle + Tym lepiej jeśli te + Dziewczyny zimne są + + Upiję wkrótce się + I zgubię miłość swą + + + + Więc pijmy póki czas + Aż zwalę się pod stół + Bym nie czuł to com cz + Bym zgubił to com cz + Więc pijmy póki źle + Więc pijmy żeby pić + + Upiję wkrótce s + Nadziei zerwę n + + + + Napełnij szklankę mi + Ostatni nalej raz + Napełnij szklankę mi + I pójdę bo już czas + Nie płaczę zostaw mnie + Rozjaśnia wszystko się + + Napełnij szklankę mi + Napełnij szklankę mi + + + + + + + + Alek za Józkiem + + + + + + chord positioning + + + + + + + diff --git a/songs/Pijany_poeta.xml b/songs/pl/bardowie/Pijany_poeta.xml similarity index 96% rename from songs/Pijany_poeta.xml rename to songs/pl/bardowie/Pijany_poeta.xml index ef2c63e0..5d4c3fb9 100644 --- a/songs/Pijany_poeta.xml +++ b/songs/pl/bardowie/Pijany_poeta.xml @@ -1,5 +1,5 @@ - + Jacek Kaczmarski @@ -21,7 +21,7 @@ Alkochol nie szkodzi poecie - Kochają go bardzo drwiąc z rąk jego ------ + Kochają go bardzo drwiąc z rąk jego drżenia Ta drwina współczucia ma nazwę Ugoszczą przytulą ukoją cierpienia A on mimo wszystko ma za złe diff --git a/songs/pl/bardowie/Piosenka_napisana_mimochodem.xml b/songs/pl/bardowie/Piosenka_napisana_mimochodem.xml new file mode 100644 index 00000000..f7e4e6aa --- /dev/null +++ b/songs/pl/bardowie/Piosenka_napisana_mimochodem.xml @@ -0,0 +1,89 @@ + + + Mimochodem + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Słońce błyśnie między wschodem a zachodem, + Mimochodem obrysuje miasto chmur. + Jednych dziegciem dzień nakarmi, innych miodem, + Temu głowę wzniesie, temu napnie sznur. + Trochę starsze znów się stanie to, co młode, + Jakby strzepnął ptak kolejną kroplę z piór — + Mimochodem, mimochodem, + Jakby strzepnął kroplę z piór. + + + Tym pod nogi róż kobierzec, tamtym - kłodę, + Pozostałym, mimochodem — byle co. + Frustrat skargę śle, laureat pisze odę, + Raz się dobro jawi złem, raz — dobrem zło. + Słowo wpada w morze słów, jak kamień w wodę, + Krążek myśli pozostawi, brnąc na dno — + Mimochodem, mimochodem, + Krążek myśli, brnąc na dno. + + + Cierpi syty, niepojętym zdjęty głodem, + Zgłodniałego — mimochodem syci złość. + Temu — mostu przęsło, temu - dom z ogrodem, + Komuś o coś chodzi, za kimś — chodzi coś: + Na stracenie, na pożytek i na szkodę, + Jak złośliwie między psy rzucona kość — + Mimochodem, mimochodem, + Między psy rzucona kość. + + + Tańczą, walczą, zieją żarem, zioną chłodem, + Mimochodem spalą w pył, zetną w lód. + Swego Boga za słomianą szarpią brodę, + By im dał nadziei źdźbło, ładu łut. + Sen — za jawę biorą, karę — za nagrodę, + Odtwarzając krótkie scherzo swe - bez nut, + Mimochodem, mimochodem, + Krótkie scherzo swe — bez nut. + + + Nic już więcej z tego rymu nie wywiodę, + Mimochodem układając cierpką pieśń. + Pocieszenie tylko dodam na osłodę, + Że w niej drzemie mimochodem ważka treść: + Chwila światła między wschodem a zachodem, + Wobec której trudno tak po prostu przejść + Mimochodem, mimochodem, + Trudno tak po prostu przejść. + Mimochodem… Mimochodem — + Miasto chmur, chwile szczęść. + + + + + + + + + + + + + Mimochodem + + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/Piosenka_o_mufce_(2).xml b/songs/pl/bardowie/Piosenka_o_mufce.xml similarity index 97% rename from songs/Piosenka_o_mufce_(2).xml rename to songs/pl/bardowie/Piosenka_o_mufce.xml index 9f396147..7ab06e94 100644 --- a/songs/Piosenka_o_mufce_(2).xml +++ b/songs/pl/bardowie/Piosenka_o_mufce.xml @@ -1,79 +1,79 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Prześliczna dzieweczka na spacer raz szła - Gdy noc ją złapała wietrzysta i zła - Być może przestraszyłby ziąb i mrok ją - Lecz miała wszak mufkę prześliczną swą - - - - Nie ruszaj to moje weź precz łapy swoje - Popsujesz ją boję się o mufkę swą - - - - Więc szła w dół ulicy przez zamieć i mrok - Gdy jakiś młodzieniec z nią zrównał swój krok - Na widok jej uśmiech rozjaśnił mu twarz - Ach panno prześliczną wszak mufkę ty masz - - - - Wiem dobrze że mam mufkę śliczną jak sen - Co chłopców spojrzenia przyciąga co dzień - Różowym jedwabiem podszyta pod spodem - A z wierzchu futerko co chroni przed chłodem - - - - Lecz mufka jest moja i nic do niej ci - - Bo mama kazała jej strzec dobrze mi - Więc idź już w swą drogę i zostaw mnie już - Bo nie dam ci mufki i za tysiąc róż - - - - Lecz noc była zimna i pannie co szła - Zachciało się winka kieliszek lub dwa - Po winku zbyt mocnym zagościł sen w niej - A chłopcy z jej mufką igrali że hej - - - - Zbudziwszy się w płacz uderzyła i jęk - Zepsuli mi mufkę i szew na niej pękł - Zszargali futerko i jedwab na fest - I na nic ma mufka zapewne już jest - - - - Więc młode dziewczęta strzec trzeba się wam - Tych chłopców co z wami chcą być sam na sam - Przeminą raz dwa wina szum słodkie słówka - A w darze zastanie wam dziurawa mufka - - - - - - - - Krzysiek Cz. - - - - - - - - + + + + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Prześliczna dzieweczka na spacer raz szła + Gdy noc ją złapała wietrzysta i zła + Być może przestraszyłby ziąb i mrok ją + Lecz miała wszak mufkę prześliczną swą + + + + Nie ruszaj to moje weź precz łapy swoje + Popsujesz ją boję się o mufkę swą + + + + Więc szła w dół ulicy przez zamieć i mrok + Gdy jakiś młodzieniec z nią zrównał swój krok + Na widok jej uśmiech rozjaśnił mu twarz + Ach panno prześliczną wszak mufkę ty masz + + + + Wiem dobrze że mam mufkę śliczną jak sen + Co chłopców spojrzenia przyciąga co dzień + Różowym jedwabiem podszyta pod spodem + A z wierzchu futerko co chroni przed chłodem + + + + Lecz mufka jest moja i nic do niej ci + + Bo mama kazała jej strzec dobrze mi + Więc idź już w swą drogę i zostaw mnie już + Bo nie dam ci mufki i za tysiąc róż + + + + Lecz noc była zimna i pannie co szła + Zachciało się winka kieliszek lub dwa + Po winku zbyt mocnym zagościł sen w niej + A chłopcy z jej mufką igrali że hej + + + + Zbudziwszy się w płacz uderzyła i jęk + Zepsuli mi mufkę i szew na niej pękł + Zszargali futerko i jedwab na fest + I na nic ma mufka zapewne już jest + + + + Więc młode dziewczęta strzec trzeba się wam + Tych chłopców co z wami chcą być sam na sam + Przeminą raz dwa wina szum słodkie słówka + A w darze zastanie wam dziurawa mufka + + + + + + + + Krzysiek Cz. + + + + + + + + diff --git a/songs/pl/bardowie/Pozegnanie_Okudzawy.xml b/songs/pl/bardowie/Pozegnanie_Okudzawy.xml new file mode 100644 index 00000000..10348bf7 --- /dev/null +++ b/songs/pl/bardowie/Pozegnanie_Okudzawy.xml @@ -0,0 +1,95 @@ + + + + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Na ile wiary brak gorącej, + Że jest na niebie jakiś bóg, + Na tyle wiąże koniec z końcem + Łańcucha katorżnika nóg. + Na ile wciąż nadzieja szarpie, + Że coś się dla nas w mrokach tli, + + Na tyle wigilijne karpie + Śnią smacznie swe beztroskie sny. + + + + Piosenka pożegnania — + Piosenką jest utraty, + Żegnałem ludzi i zdania — + Traciłem całe światy. + I nic nie pozostało + Prócz tego, co nucicie! + + To wcale nie jest mało + Tak żegnać całe życie. + + + + Na ile trwa, co odchodzi, + Nabite na Historii hak, + Na tyle zauważą młodzi, + Że jednak czegoś jest im brak. + Na ile ufa młody dureń + W niewyczerpany zapas lat, + + Na tyle mu bezbronną skórę + Tnie raz po raz bezwzględny bat. + + + + + Na ile zdolny jest do krzyku + W obronie innych każdy z nas, + Na tyle trwa ten kraj pomników, + Strumieniem podmywany głaz. + Na ile skory do ofiary + Jest ten, co bluźnił, łgał i kradł, + + Na tyle wierzy człowiek stary + W to, że ocali własny świat. + + + + + Ach, świat przebrzmiałych dźwięków + Jakąż melodię wiódł! + Już jej nie wskrzesisz ręką, + Już nie ma tamtych nut… + + + Ach, z tego, czego już nie ma + Jakiż by mógł być świat! + + Ale to inny temat — + Nam już nie starczy lat… + + + + + + + + + Między Nami + + + + + + chord positioning + + + Michał Korch + + + + + diff --git a/songs/Rondo_czyli_piosenka_o_kacu_gigancie_(3).xml b/songs/pl/bardowie/Rondo_czyli_piosenka_o_kacu_gigancie.xml similarity index 98% rename from songs/Rondo_czyli_piosenka_o_kacu_gigancie_(3).xml rename to songs/pl/bardowie/Rondo_czyli_piosenka_o_kacu_gigancie.xml index 5a4be50c..66cfac20 100644 --- a/songs/Rondo_czyli_piosenka_o_kacu_gigancie_(3).xml +++ b/songs/pl/bardowie/Rondo_czyli_piosenka_o_kacu_gigancie.xml @@ -1,5 +1,5 @@ - + Jacek Kaczmarski diff --git a/songs/Rozbite_oddzialy.xml b/songs/pl/bardowie/Rozbite_oddzialy.xml similarity index 95% rename from songs/Rozbite_oddzialy.xml rename to songs/pl/bardowie/Rozbite_oddzialy.xml index b56b221b..457011e6 100644 --- a/songs/Rozbite_oddzialy.xml +++ b/songs/pl/bardowie/Rozbite_oddzialy.xml @@ -1,5 +1,5 @@ - + Jacek Kaczmarski @@ -34,7 +34,7 @@ Przychodzą po zmierzchu do kobiet im obcych - A tam, kędy przejdą -- urodzą się chłopcy. + A tam, kędy przejdą — urodzą się chłopcy. Gdy wrócą, przygnani kolejną zawieją, Zobaczą, że synów swych nie rozumieją. Spisują więc dla nich noc w noc pamiętniki diff --git a/songs/pl/bardowie/Sen_Katarzyny_II.xml b/songs/pl/bardowie/Sen_Katarzyny_II.xml new file mode 100644 index 00000000..a224a6bd --- /dev/null +++ b/songs/pl/bardowie/Sen_Katarzyny_II.xml @@ -0,0 +1,75 @@ + + + Jacek Kaczmarski + Jacek Kaczmarski + Jacek Kaczmarski + + + Na smyczy trzymam filozofów Europy + Podparłam armią marmurowe Piotra stropy + Mam psy, sokoły, konie - kocham łów szalenie + A wokół same zające i jelenie + + Pałace stawiam, głowy ścinam + + Kiedy mi przyjdzie na to chęć + Mam biografów, portrecistów + I jeszcze jedno pragnę mi + + + Stój Katarzyno! Koronę Carów + Sen taki jak ten może Ci z głowy zdjąć! + + + Kobietą jestem ponad miarę swoich czasów + Nie bawią mnie umizgi bladych lowelasów + Ich miękkich palców dotyk budzi obrzydzenie + Już wolę łowić zające i jelenie + Ze wstydu potem ten i ów + Rzekł o mnie: niewyżyta niemra! + I pod batogiem nago biegł + Po śniegu dookoła Kremla! + + + + Kochanka trzeba mi takiego jak imperium + Co by mnie brał tak jak ja daję - całą pełnią + Co by i władcy i poddańca był wcieleniem + I mi zastąpił zające i jelenie + Co by rozumiał tak jak ja + Ten głupi dwór rozdanych ról + I pośród pochylonych głów + Dawał mi rozkosz albo ból! + + + + Gdyby się taki kochanek kiedyś znalazł + Wiem! Sama wiem! Kazałabym go ściąć! + + + + + + + Onufry + + + + + + + + + chord positioning + + + + + + + + + Krzyk + Poezja śpiewana + + diff --git a/songs/Pinokio.xml b/songs/pl/bardowie/Smiech.xml similarity index 98% rename from songs/Pinokio.xml rename to songs/pl/bardowie/Smiech.xml index 5de93605..650731bc 100644 --- a/songs/Pinokio.xml +++ b/songs/pl/bardowie/Smiech.xml @@ -1,5 +1,5 @@ - + Pinokio Krzysztof Sieniawski diff --git a/songs/pl/bardowie/Wakacyjna_przypowiesc_z_metafizycznym_moralem.xml b/songs/pl/bardowie/Wakacyjna_przypowiesc_z_metafizycznym_moralem.xml new file mode 100644 index 00000000..ac3bbc79 --- /dev/null +++ b/songs/pl/bardowie/Wakacyjna_przypowiesc_z_metafizycznym_moralem.xml @@ -0,0 +1,91 @@ + + + Muszelki + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Zrywamy się przed świtem, nie myśląc o śniadaniu + Milczący, źli a przy tym zupełnie niewyspani. + Okrągły księżyc drwi z nas jak puste dno butelki; + + Lecz nam to nie pierwszyzna, idziemy po muszelki. + + + + Szlak wiedzie brzegiem morza na zachód - w kołdrze mroku, + Więc z tyłu pełznie zorza cierpliwie krok po kroku. + Na piasku rosną cienie jak rozciągnięte szelki - + + Idziemy niestrudzenie, idziemy po muszelki. + + + + Muszelki - rzecz nietrwała, po prawdzie nic nie warta, + Ale córeczka chciała - córeczka jest uparta. + Z fal słońce się wychyla jak złota pierś modelki; + + Umyka nam ta chwila - idziemy po muszelki. + + + + Palców u stóp maleństwa kaleczą się boleśnie. + Co robić? Na przekleństwa za późno - i za wcześnie - + Na wątpliwości antrakt, na cierpień bagatelki, + + Bo zgrzyta zębów mantra - idziemy po muszelki. + + + + Pierś słońca już w zenicie wspiera się nam na plecach + Potężnym żarem życia jak samo serce pieca. + Pot ciurka strumykami, dziurawią piach kropelki; + + Wyschnięci na pergamin idziemy po muszelki. + + + + W krąg wodorostów zieleń piętrzy się drwiącą warstwą + I cuchnie - a muszelek? Muszelek - na lekarstwo! + Nie w naszej widać mocy odnaleźć skarb tak wielki! + + Na skórze, w chłodzie nocy pęcznieją nam bąbelki. + + + + Lecz córcia łapką gładką pieczeń skwierczącą klepie: + - Nie przejmuj się tak, Tatku! Jutro ci pójdzie lepiej! + Los żaden nas nie zmoże, choć przeszkód pełen wszelkich! + + Chwała Ci dobry Boże za drogę po muszelki! + + + + + + + + + + + + + + + + Poezja śpiewana + + + + + Onufry + + + + + + diff --git a/songs/Wedrowka_z_cieniem.xml b/songs/pl/bardowie/Wedrowka_z_cieniem.xml similarity index 50% rename from songs/Wedrowka_z_cieniem.xml rename to songs/pl/bardowie/Wedrowka_z_cieniem.xml index 7db79dd4..2310b4be 100644 --- a/songs/Wedrowka_z_cieniem.xml +++ b/songs/pl/bardowie/Wedrowka_z_cieniem.xml @@ -1,5 +1,5 @@ - + Jacek Kaczmarski @@ -9,45 +9,45 @@ - Po ulic mokrym, ciemnym tle, + Po ulic mokrym, ciemnym tle, Pod prószącymi latarniami, - Ja wlokę cień, cień wlecze mnie, - Kałuże lśnią nam pod nogami... + Ja wlokę cień, cień wlecze mnie, + Kałuże lśnią nam pod nogami… - Dawno nie było nam tak źle -- + Dawno nie było nam tak źle — Zostaliśmy zupełnie sami. - Ja wlokę cień, cień wlecze mnie, - Kałuże lśnią nam pod nogami... + Ja wlokę cień, cień wlecze mnie, + Kałuże lśnią nam pod nogami… - Ja się zawiodłem, cień zawiódł się -- + Ja się zawiodłem, cień zawiódł się — Tak jest już z tymi dziewczynami! - I wlokę go, on wlecze mnie, - Kałuże lśnią nam pod nogami... + I wlokę go, on wlecze mnie, + Kałuże lśnią nam pod nogami… - Ja mówię: z jej kaprysów drwię, + Ja mówię: z jej kaprysów drwię, Nie będzie kierowała nami! - I wlokę go, on wlecze mnie, - Kałuże lśnią nam pod nogami... + I wlokę go, on wlecze mnie, + Kałuże lśnią nam pod nogami… - Był czas gdy cień mój cieszył się -- - Jak ona mnie -- jej cień go mamił... - I wlokę go, on wlecze mnie, - Kałuże lśnią nam pod nogami... + Był czas gdy cień mój cieszył się — + Jak ona mnie — jej cień go mamił… + I wlokę go, on wlecze mnie, + Kałuże lśnią nam pod nogami… - A teraz mówi: z żalu kpię! - Lecz dobrze wiem, że mówiąc -- kłamie, - Więc wlokę cień, cień wlecze mnie, - Kałuże lśnią nam pod nogami... + A teraz mówi: z żalu kpię! + Lecz dobrze wiem, że mówiąc — kłamie, + Więc wlokę cień, cień wlecze mnie, + Kałuże lśnią nam pod nogami… - Tak pocieszamy wzajem się - Idąc długimi ulicami... - Ja wlokę cień, cień wlecze mnie, + Tak pocieszamy wzajem się + Idąc długimi ulicami… + Ja wlokę cień, cień wlecze mnie, Kałuże lśnią nam pod nogami. diff --git a/songs/pl/bardowie/Zbroja.xml b/songs/pl/bardowie/Zbroja.xml new file mode 100644 index 00000000..477c794f --- /dev/null +++ b/songs/pl/bardowie/Zbroja.xml @@ -0,0 +1,127 @@ + + + Jacek Kaczmarski + Jacek Kaczmarski + Jacek Kaczmarski + + + + + + Dałeś mi Panie zbroję + Dawny kuł płatnerz ją + W wielu pogięta bojach + W wielu ochrzczona krw + W wykutej dla giganta + Potykam się co krok + Bo jak sumienia szant + Uciska lewy bok + + + Lecz choć zaginął hełm i miecz + Dla ciała żadna w niej ostoja + To przecież w końcu ważna rzecz + Zbroja + + + Magicznych na niej rytów + Dziś nie odczyta nikt + Ale wykuta z mitów + I wieczna jest jak mit + Do ciała mi przywarła + Przeszkadza żyć i spać + A tłum się cieszy z karła + Co chce giganta grać + + + Lecz choć zaginął hełm i miecz + Dla ciała żadna w niej ostoja + To przecież w końcu ważna rzecz + Zbroja + + + A taka w niej powaga + Dawno zaschniętej krwi + Że czuję jak wymaga + I każe rosnąć mi + Być może nadaremnie + Lecz stanę w niej za stu + Zdejmij ją Panie ze mnie + Jeśli umrę podczas snu + + + Bo choć zaginął hełm i miecz + Dla ciała żadna w niej ostoja + To przecież w końcu ważna rzecz + Zbroja + + + Wrzasnęli hasło — wojna! + Zbudzili hufce hord + Zgwałcona noc spokojna + Ogląda pierwszy mord + Goreją świeże rany + Hańbiona płonie twarz + Lecz nam do obrony dany + Pamięci pancerz nasz + + + Więc choć za ciosem pada cios + I wróg posiłki śle w konwojach + Nas przed upadkiem chroni wciąż + Zbroja + + + Wywlekli pudła z blachy + Napchali kul do luf + I straszą — sami w strachu + Strzelają do ciał i słów + Zabrońcie żyć wystrzałem + Niech zatryumfuje gwałt + Nad każdym wzejdzie ciałem + Pamięci żywej kształt + + + Choć słońce skrył bojowy gaz + I żołdak pławi się w rozbojach + Wciąż przed upadkiem chroni nas + Zbroja + + + Wytresowali świnie + Kupili sobie psy + I w pustych słów świątyni + Stawiają ołtarz krwi + Zawodzi przed bałwanem + Półślepy kapłan łgarz + I z każdym nowym zdaniem + Hartuje pancerz nasz + + + + Choć krwią zachłysnął się nasz czas + Choć myśli toną w paranojach + Jak zawsze chronić będzie nas + Zbroja + + + + Zbroja, Zbroja + + + + + + + Live (1990) + + + + + chord positioning + + + Adam Foland + + + diff --git a/songs/pl/bardowie/Zrodlo.xml b/songs/pl/bardowie/Zrodlo.xml new file mode 100644 index 00000000..0008e799 --- /dev/null +++ b/songs/pl/bardowie/Zrodlo.xml @@ -0,0 +1,70 @@ + + + + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Płynie rzeka wąwozem jak dnem koleiny, która samą siebie żłobiła + Rosną ściany wąwozu, z obu stron coraz wyżej, tam na górze są ponoć równiny; + I im więcej tej wody, tym się głębiej potoczy + Sama biorąc na siebie cień zboczy… + + + Piach spod nurtu ucieka, nurt po piachu się wije, własna w czeluść ciągnie go siła. + Ale jest ciągle rzeka na dnie rozpadliny, jest i będzie, będzie jak była, + Bo źródło + Bo źródło + Wciąż bije. + + + A na ścianach wąwozu pasy barw i wyżłobień, tej rzeki historia tych brzegów - + Ślady głazów rozmytych, cienie drzew powalonych, muł zgarnięty pod siebie wbrew sobie + A hen, w dole blask nikły ciągle ziemię rozcina, + Ziemia nad nim się zrastać zaczyna… + + + Z obu stron żwir i glina, by zatrzymać go w biegu, woda syczy i wchłania Lecz żyje + I zakręca, omija, wsiąka, wspina się, pieni, ale płynie, wciąż płynie wbrew brzegom - + Bo źródło + Bo źródło + Wciąż bije. + + + I są miejsca gdzie w szlamie woda niemal zastygła pod kożuchem brudnej zieleni; + Tam ślad, prędzej niż ten co zostawił go, znika - niewidoczne bagienne są sidła. + Ale źródło wciąż bije, tłoczy puls między stoki, + Więc jest nurt, choć ukryty dla oka! + + + Nieba prawie nie widać, czeluść chłodna i ciemna, niech się sypią lawiny kamieni! + I niech łączą się zbocza bezlitosnych wąwozów, + Bo cóż drąży kształt przyszłych przestrzeni + Jak nie rzeka podziemna? + Groty w skałach wypłucze, żyły złote odkryje - + Bo źródło + Bo źródło + Wciąż bije. + + + + + + + + + + + + + Onufry + + + + + + diff --git a/songs/pl/bardowie/kara_barabasza.xml b/songs/pl/bardowie/kara_barabasza.xml new file mode 100644 index 00000000..63c18463 --- /dev/null +++ b/songs/pl/bardowie/kara_barabasza.xml @@ -0,0 +1,107 @@ + + + + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + W karczmie z widokiem na Golgotę + Możesz się dzisiaj napić z łotrem, + Leje się wino krwawe, złote, + Stoły i pyski świecą mokre. + Ten ścisk to zysk dla gospodarza, + Wieść się po mieście szerzy chyża, + Że można ujrzeć tu zbrodniarza, + Co właśnie wyłgał się od krzyża. + + + Żyjemy! Dobra nasza! + Co z życia chcesz, za życia bierz! + Pijmy za Barabasza! + Barabasz pije też! + + + Pije, lecz mowy nie odzyskał, + Jeszcze nie pojął, że ocalał. + oń, która kubek wina ściska — + Jakby ściskała łeb bretnala. + Stopy pod stołem plącze w tańcu, + Szaleńca, co o drogę pyta: + Każda z nich stopą jest skazańca, + A wolna! Żywa! Nieprzebita! + + + + Piją mieszczanie i żebracy, + Żołdacy odstawili włócznie + + I piją też po ciężkiej pracy, + Bawi się całe miasto hucznie. + Namiestnik dał dowody łaski! + Bez łaski — czymże byłby żywot? + Toasty, śpiewy i oklaski + + -- Jest na tym świecie sprawiedliwość! + + + + + Ryknął Barabasz śmiechem wreszcie, + Ręce szeroko rozkrzyżował - + + I poszła nowa wieść po mieście: + -- Żyje! Żartuje, bestia zdrowa! + ychać w pałacu, co się święci, + Próżno się Piłat usnąć stara, + Bezładnie tańczą mu w pamięci + + owa - polityka, tłum i wiara… + + + + + W karczmie z widokiem na Golgotę + Blask świtu po skorupach skacze, + Gospodarz przegnał precz hołotę + + I liczy zysk. Barabasz płacze. + W karczmie z widokiem na Golgotę + Blask świtu po skorupach skacze, + Gospodarz przegnał precz hołotę + I liczy zysk. Barabasz płacze. + + Barabasz płacze. + + + + Żyjemy! Dobra nasza! + Co z życia chcesz, za życia bierz! + Pijmy za Barabasza! + Barabasz człowiek też! + + + + + + + + Głupi Jasio + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/bardowie/ksiezniczka_i_pirat.xml b/songs/pl/bardowie/ksiezniczka_i_pirat.xml new file mode 100644 index 00000000..557aeb4b --- /dev/null +++ b/songs/pl/bardowie/ksiezniczka_i_pirat.xml @@ -0,0 +1,104 @@ + + + + Jacek Kaczmarski + Po każdym aEa jest motyw (podaje dźwieki): a e h c gis a dis e a, a między ref. a zwrotką: a gis a h c h c e a e c h a gis a h. + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Pirat z soli i goryczy + W sieci świata się szamocze. + Gwiazdy drżą Księżniczce w oczach, + W pustym zamku sowa krzyczy. + On zza mórz przyzywa burze, + By mu szlak kreśliły w toni. + Ona wdycha z linii dłoni, + Bukiet tęsknot i odurzeń. + On zza mórz przyzywa burze. + + + Z niewiadomych oddali + Płynie fala ku fali. + Czy ją spotka, czy minie + W ciemnych wirów gęstwinie? + + + Sztorm go rzuca na wybrzeże, + Gdzie Księżniczki stoi zamek. + Ona mu otwiera bramę, + Pirat ją w ramiona bierze. + Tętnią ściany i sklepienia + Cieni szeptem i oddechem, + Jego serce — suchy wiecheć, + Lecz jej serce jest z płomienia. + Tętnią ściany i sklepienia. + + + Fala z falą się zderza + Poszukując przymierza. + Czy je znajdą, splątane, + Czy rozprysną się w pianę? + + + On ją trzyma, ona krzyczy, + Ona krzyczy, kielich strąca. + Tak się miesza w nich bez końca + Trunek tęsknot i goryczy. + Usypiają o poranku, + Oślepieni swym olśnieniem, + Ścichły echa, zgasły cienie, + Milczy sowa w pustym zamku. + Usypiają o poranku. + + + Fala wtapia się w falę + I zapada w oddale. + Czy wśród burz i kipieli + Nic ich już nie rozdzieli? + + + On odpływa odurzony, + Zdobyć dla niej złote grody. + Bierze w drogę tęsknot słodycz, + Jej czekanie smak ma słony. + Czy on świat zdobędzie dla niej + I Księżniczka z nim odpłynie? + Czy on wróci i zostanie, + Czy za widnokręgiem zginie? + Czy on świat zdobędzie dla niej? + + + + Płyną fale przed siebie + I znikają w oddali. + Nie pytajcie się fali + O to, czego nikt nie wie. + + + + + + + + + + + Dwie skały + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/bardowie/oblawa.xml b/songs/pl/bardowie/oblawa.xml new file mode 100644 index 00000000..030f370f --- /dev/null +++ b/songs/pl/bardowie/oblawa.xml @@ -0,0 +1,87 @@ + + + + Jacek Kaczmarski + Wg piosenki "Obława na wilki" W. Wysockiego + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Skulony w jakiejś ciemnej jamie smaczniem sobie spał + I spały małe wilczki dwa - zupełnie ślepe jeszcze + Wtem stary wilk przewodnik co życie dobrze znał + Łeb podniósł warknął groźnie aż mną szarpnęły dreszcze + + + Poczułem nagle wokół siebie nienawistną woń + Woń która tłumi wszelki spokój zrywa wszystkie sny + Z daleka ktoś gdzieś krzyknął nagle krótki rozkaz: goń + I z czterech stron wypadły na nas cztery gończe psy + + + Obława! Obława! Na młode wilki obława! + Te dzikie zapalczywe, w gęstym lesie wychowane! + Krąg śniegu wydeptany! W tym kręgu plama krwawa! + Ciała wilcze kłami gończych psów szarpane! + + + Ten który rzucił na mnie się niewiele szczęścia miał + Bo wypadł prosto mi na kły i krew trysnęła z rany + Gdym teraz - ile w łapach sił - przed siebie prosto rwał + Ujrzałem małe wilczki dwa na strzępy rozszarpane! + + + Zginęły ślepe, ufne tak puszyste kłębki dwa + Bezradne na tym świecie złym nie wiedząc kto je zdławił + I zginie także stary wilk choć życie dobrze zna + Bo z trzema naraz walczy psami i z ran trzech naraz krwawi + + + + Wypadłem na otwartą przestrzeń pianę z pyska tocząc + Lecz tutaj też ze wszystkich stron - zła mnie otacza woń! + A myśliwemu co mnie dojrzał już się śmieją oczy + I ręka pewna, niezawodna podnosi w górę broń! + + + Rzucam się w bok, na oślep gnam aż ziemia spod łap tryska + I wtedy pada pierwszy strzał co kark mi rozszarpuje + Wciąż pędzę, słyszę jak on klnie! I krew mi płynie z pyska + On strzela po raz drugi! Lecz teraz już pudłuje! + + + + Wyrwałem się z obławy tej schowałem w jakiś las + Lecz ile szczęścia miałem w tym to każdy chyba przyzna + Leżałem w śniegu jak nieżywy długi długi czas + Po strzale zaś na zawsze mi została krwawa blizna! + + + Lecz nie skończyła się obława i nie śpią gończe psy + I giną ciągle wilki młode na całym wielkim świecie + Nie dajcie z siebie zedrzeć skór! Brońcie się i wy! + O, bracia wilcy! Brońcie się nim wszyscy wyginiecie! + + + + + + + + + + Poezja śpiewana + + + + + + Onufry + + + Wpisałem uwagę, a nie tłumaczenie, bo jednak przy tym poziomie odstępstwa od oryginału o tłumaczeniu trudno mówić + + + diff --git a/songs/pl/bardowie/spotkanie_w_porcie.xml b/songs/pl/bardowie/spotkanie_w_porcie.xml new file mode 100644 index 00000000..51c1589b --- /dev/null +++ b/songs/pl/bardowie/spotkanie_w_porcie.xml @@ -0,0 +1,103 @@ + + + + Jacek Kaczmarski + Piosenka Wizbora przerobiona przez Wysockiego, a następnie spolszczona przez Kaczmarskiego + Jacek Kaczmarski + Jacek Kaczmarski + + + + + W Amsterdamie statek nasz na wyładunku był, + Człowiek do roboty nie miał nic, więc w porcie pił. + Piję po obcemu nie rozumiem, nudzę się, + Kiedy jakiś czarny siada koło mnie. + + + - America - mówi do mnie - zrozumiałem, + Rozejrzałem się i mówię - Sowietskij Sojuz. + - Soviet Union - on się cieszy, ja do pełna mu nalałem, + Jak raz swoich nie było więc był pełny luz. + + + Po ichniemu nie rozumiem, on po ludzku też, + Lecz jest wódka, więc jest tłumacz, przy niej mów co chcesz. + Postawiłem po sto gram, niech Negr widzi że gest mam, + Jemu przecież w Ameryce ciężko jest. + + + On tymczasem mówi - Stany Zjednoczone + To największe państwo z wszystkich świata państw! + W bankach złota ma zasoby niezliczone, + Chcesz z nim zacząć to już nie masz żadnych szans. + + + A ja na to - Kreml w niebo śle rakiety! + Bez wysiłku wielkich rzek zawraca bieg! + Żal mi ciebie lecz niestety + Również trudny kunszt baletu + Najlepiej posiadł on na planecie tej! + + + Przyszło potem po gram dwieście do rozmowy chęć, + Wyjaśniłem mu że jest ofiarą klasowych spięć, + Lecz Murzyna marynarski umysł wciąż w ciemnościach trw + + I na światły wywód mój odpowiedź dał: + + + - U nas jest na głowę po dwa samochody, + Zbudowaliśmy największy świata gmach, + Nasza demokracja daje nam swobody, + Których oczekuje cały świat we łzach. + + + A ja na to - my w niebo ślem rakiety! + Bez wysiłku wielkich rzek cofamy bieg! + Żal mi ciebie lecz niestety + Również trudny kunszt baletu + Najlepiej posiedliśmy na planecie tej! + + + Szybko nabierała tempa ta wymiana zdań, + Ale nie chciał Negr zrozumieć co jest dobre dlań. + Postawiłem po gram trzysta, myślę teraz zgodzi się, + Ale on choć ledwie mówi jednak mówi, że: + + + - Ja posiadam wielki kanion Colorado. + Delfinów język też rozszyfrowałem ja. + U mnie Niagara jest największy z wodospadów + I gwiazd pięćdziesiąt moja flaga ma, + + + A ja na to - ja w niebo ślę rakiety! + Bez wysiłku wielkich rzek zawracam bieg! + Żal mi ciebie lecz niestety + Również trudny kunszt baletu + Najlepiej ja posiadłem na planecie tej! + + + + + + + + + Bankiet + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + Akordy są takie jak ja gram… Nie koniecznie muszą się zgadzać z wersją Kaczmarskiego :P + + + diff --git a/songs/pl/bardowie/wloczedzy.xml b/songs/pl/bardowie/wloczedzy.xml new file mode 100644 index 00000000..d4dc7c38 --- /dev/null +++ b/songs/pl/bardowie/wloczedzy.xml @@ -0,0 +1,105 @@ + + + + Jacek Kaczmarski + + Przemysław Gintrowski + Przemysław Gintrowski, Jacek Kaczmarski, Zbigniew Łapiński + + + + + Wchodzimy z twarzami zdrowymi od mrozu, + Siadamy przy ogniu tańczącym z radości, + Ścieramy z nadgarstków odciski powrozów, + Wołamy o wino i chleb, i tłustości, + Spod ścian patrzą na nas w milczeniu miejscowi, + Napięci, na wszystko gotowi. + + + Wchłaniamy łapczywie wielkimi kęsami, + Łykamy alkohol aż warczy nam w grdykach, + Bekniemy czasami, pierdniemy czasami, + Aż z ław w ciepło wzbija się woń wędrownika + I płynie pod ściany miejscowych jak ręka + Co mówi - przestańcie się lękać, + + Co mówi - przestańcie się lękać. + + + + Śpiewamy piosenki o drodze i pracy, + O braku pieniędzy i braku miłości, + Podnoszą się ze snu miejscowi pijacy, + Słuchają oczami rozumnej przeszłości, + Ktoś wstanie, podejdzie, zapyta, kto my. + -- My dzieci wolności, bezdomne my psy. + + + Przysiądą się stawiać i pytać nieśmiale, + Gdzie dobrze, gdzie lepiej, a gdzie pieniądz rośnie + I plączą się cienie pod niską powałą, + I coraz jest ciaśniej i duszniej, i głośniej, + Bo oto włóczędzy z przeszłością swą mroczną + Dla ludu się stają wyrocznią, + + Dla ludu się stają wyrocznią. + + + + Mówimy o wojnach w dalekich krainach, + Zmyślamy bogactwa zdobyte, stracone, + Słuchają jak mszy, dolewają nam wina + I dziewki przysiądą się też, ośmielone, + Do ognia dorzuci przebiegły gospodarz: + Noc długa korzyści mu doda. + + + Rozgrzani, snujemy niezwykłą opowieść, + Zazdroszcząc im tego, że tacy ciekawi, + Choć mają, co każdy tak chciałby mieć człowiek, + A za byle co już gotowi zastawić, + By włóczyć się, szukać i błądzić jak my + I żyć bez wytchnienia, bez nocy i dni, + + I żyć bez wytchnienia, bez nocy i dni. + + + + Pijemy i każdy już ma coś na oku — + Ten nocleg w piekarni, ten pannę piersiastą, + Świt znajdzie nas znowu za miastem na stoku, + Gdzie nikt tak naprawdę nic nie ma na własność, + A wam pozostanie piosenka i sny: + -- My dzieci wolności, bezdomne my psy… + Dzieci wolności… + + Dzieci wolności, psy… + + + + + + + + + + + + + Wojna postu z karnawałem + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/bardowie/zrodlo_ii.xml b/songs/pl/bardowie/zrodlo_ii.xml new file mode 100644 index 00000000..6ef841ef --- /dev/null +++ b/songs/pl/bardowie/zrodlo_ii.xml @@ -0,0 +1,87 @@ + + + Rozlewiska + Jacek Kaczmarski + + Jacek Kaczmarski + Jacek Kaczmarski + + + + + Jak daleko od źródeł swoich rzeka odpływa, + Wyrzeźbiwszy własne granice; + Niesie szlam wypłukany z ciemnych głębin i wzywa + Do radości słonecznym odbiciem… + Ale płyną nią szczątki, co na światło nieczułe, + Bo obrosłe ciemnością i mułem. + + + Obojętny brzeg — płaski, lecz nad wszystko wyniosły, + Rzeki nurt nieuchronnie wyzyska! + Karmi trawy i bagna co z nicości wyrosły, + Więc na nicość niezmiennie nieczułe: + Tak tworzą się z rzek + -- Rozlewiska… + + + Duszny upał się szerzy, w przerażonym powietrzu + Krążą chmury żarłocznych owadów; + Nie odnaleźć tu brzegów, ni obszarów nie zmierzyć + Ani wdychać oparów rozkładu! + Ani wody źródlanej nie odnaleźć czystości, + Ani głębi, ni głębokości! + + + Gdzie jest cel tych taplawisk, co choć dążą do morza, + Roztapiają się wciąż w grzęzawiska? + Nurt się pławi w kałużach, bagno — bagnem odciska, + Niemożliwe — ni powódź, ni pożar… + Tak tworzą się z rzek + -- Rozlewiska… + + + Żeby rzekę odszukać — trzeba w niej się zanurzyć + Dać okleić się tym, co nią płynie; + W dno muliste się wpatrzyć, gdzie się prąd po nim struży, + Bo — co na dnie — nigdy nie zginie! + Ale rzeka, to tylko źródła płynne jest ciało, + A gdzie dusza? Gdzie źródło zostało? + + + W źródle siła i trwanie, ukojenie pragnienia, + Dźwięk daleki a przecież jedyny! + Więc za dźwiękiem, pod prąd rzeki mętnej, zgubionej + Trzeba czołgać się, pełznąć i płynąć, + Bo tylko się źródło nie zmienia. + Bije wodą przeczystą, + Z głębi ziemi zrodzoną + I żyje wciąż wbrew + Rozlewiskom… + + + + + + + + + + + + Głupi Jasio + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + Źródło + diff --git a/songs/pl/custom/21wdh/Prawo_dzungli.xml b/songs/pl/custom/21wdh/Prawo_dzungli.xml new file mode 100644 index 00000000..7e7c8221 --- /dev/null +++ b/songs/pl/custom/21wdh/Prawo_dzungli.xml @@ -0,0 +1,89 @@ + + + + Rudyard Kipling + Na potrzeby młodszoharcerskie… + Michał Korch + + Józef Birkenmajer + + + + + Oto jest zbiór praw dżungli — jak niebo wieczysty, niemylny, + Ginie wilk, co je łamie; wilk, co ich słucha jest szczęśliwy i silny. + Jak pnącza, co pień opasują, tak Prawo wkoło nas się winie, + + Bo wilk jest siłą drużyny, a siła wilka w drużynie. + + + + Pij do syta, lecz w miarę. Kąp się codziennie od kity do głowy, + A pomnij, że dzień jest od spania, a noc przeznaczona na łowy. + Niechaj się szakal łasi tygrysom! Lecz ty, gdy wyrośniesz, o, szczenię, + + Pamiętaj, że wilk jest łowcą — i sam ma zdobywać jedzenie. + + + + Gdy spotkają się dwa stada i nie chcą sobie ustąpić uprzejmie, + Leż spokojnie, bo może starszyzna bezkrwawo spór ten rozejmie. + Nora jest wilka schronieniem, lecz gdy wykopał ją nazbyt widocznie, + + Rada mu prześle przestrogę, ażeby się przeniósł niezwłocznie. + + + + Gdyś zaczął łów przed północą, milcz — nie budź lasu szczekaniem, + Bo spłoszysz nam wszelką zwierzynę i my bez łupu zostaniem. + Poluj dla siebie, dla szczeniąt, dla druhów. Krew taka nie brudzi! + + Lecz bez potrzeby nie poluj! Po siedmiokroć wara polować na ludzi! + + + + Gdy porwiesz zdobycz słabszemu, nie pożeraj wszystkiego w próżności. + Nędzarz jest w Prawa opiece, zostaw mu choć skórę i kości! + Zdobycz drużyny ma służyć za jadło całej drużynie, + + A kto tę zdobycz chciał unieść do własnej nory, niech zginie! + + + + Wilczyca ma prawo do leża. Gdy samcom powiodą się łowy, + Wolno jej żądać dziesięcin dla wilcząt — i nigdy nie dozna odmowy! + Wilk — ojciec jest panem w swej norze. To wolny myśliwiec włóczęga! + + Sądzi go jeno Rada, a władza drużyny go nie dosięga. + + + + Gdy Prawo jest w czymś niedokładne, szukajcie pomocy w swym herszcie: + On starszy, mocniejszy i mędrszy — więc jego przepisów się dzierżcie! + Takie są Prawa Puszczańskie. Wyliczyć je — niepodobieństwo! + + Lecz sercem Prawa, głową i koścem jest… posłuszeństwo! + + + + + + + + + + + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/custom/21wdh/Trzy_pierscienie_dla_krolow_elfow.xml b/songs/pl/custom/21wdh/Trzy_pierscienie_dla_krolow_elfow.xml new file mode 100644 index 00000000..db53b637 --- /dev/null +++ b/songs/pl/custom/21wdh/Trzy_pierscienie_dla_krolow_elfow.xml @@ -0,0 +1,32 @@ + + + John Ronald Reuel Tolkien + Piosenka obrzędowa podobozu ,,Jedna wieża'', obóz nad jez. Święte, 2005 r. + Michał Korch + 21. WDHy „Żbiki” + Maria Skibniewska + + + Trzy Pierścienie dla królów elfów pod otwartym niebem, + Siedem dla władców krasnali w ich kamiennych pałacach, + Dziewięć dla śmiertelników, ludzi śmiedci podległych, + Jeden dla Wladcy Ciemności na czarnym tronie + W krainie Mordor, gdzie zaległy cienie, + Jeden, by wszystkimi rządzić, Jeden, by wszystkie odnaleźć, + Jeden, by wszystkie zgromadzić i w ciemności związać + W krainie Mordor, gdzie zaległy cienie. + + + + + + + + + chord positioning + + + Michał Korch + + + diff --git a/songs/pl/custom/21wdh/Wioda_wioda_drogi_w_swiat.xml b/songs/pl/custom/21wdh/Wioda_wioda_drogi_w_swiat.xml new file mode 100644 index 00000000..7e32f49f --- /dev/null +++ b/songs/pl/custom/21wdh/Wioda_wioda_drogi_w_swiat.xml @@ -0,0 +1,49 @@ + + + John Ronald Ruel Tolkien + Wiersz zaczerpnięty z książki ,,Hobbit, czyli tam i z powrotem''. + +Na potrzeby obrzędowości obozu 21 WDHy "Żbiki". + Michał Korch + 21. WDHy ,,Żbiki" + Włodzimierz Lewik + + + Wiodą, wiodą drogi w świat, + Wśród lesistych gór zieleni, + W mrocznych grotach znacząc ślad, + Wśród zbłąkanych mknąc strumieni. + Poprzez biały zimny śnieg, + Łąki kwietne i majowe, + Omijając skalny brzeg + I pagóry księżycowe. + + + Wiodą, wiodą drogi w świat, + Pod gwiazdami mkną na niebie — + Choć wędrować każdy rad, + W końcu wraca w dom, do siebie. + Oczy, które ognia dziw + Oglądały — i pieczary, + Patrzą czule w zieleń niw + I kochany domek stary. + + + + Wiodą, wiodą drogi w świat… + + + + + + + + + + chord positioning + + + Michał Korch + + + diff --git a/songs/pl/custom/21wdh/Zbik.xml b/songs/pl/custom/21wdh/Zbik.xml new file mode 100644 index 00000000..8ca99f29 --- /dev/null +++ b/songs/pl/custom/21wdh/Zbik.xml @@ -0,0 +1,74 @@ + + + Kołysanka + + + + + + + + Jest w Warszawie oddział zwany + „Żbikiem” - zna go świat. + Zacnych mężów ród wybrany + Sam rycerzy kwiat. + + + Każdy tu sie dobrze czuje + Jeśli chłop jak ćwik. + Reguł trzy obowiązuje - + Stosuj je - toś „Żbik”. + + + Trzeba dzień i noc pracować. + Dla pośpiechu stać. + + Obiad jadać tylko w święta. + + A, broń Boże, spać. + + + Lecz to wszystko nie jest ważne. + Każdy z nas to wie - + Kto nie w „Żbiku” na pociechę + Niechaj śpi i je. + + + Niechaj patrzy sie z zazdrością. + Jak tu dobrze nam. + + A gdy chętkę już poczuje. + Niech tu wstąpi sam! + + + Pozna, że kto wszedł do „Żbika” + Stracił serce swe. + Jaki morał stąd wynika - + + O tym każdy wie. + + + + + + + + + + Piosenka harcerska + + + + + + chord positioning + + + Kasia KowalskaMichał Korch + + + + + + Dla Wojtusia z popielnika… + diff --git a/songs/pl/custom/21wdw/Bagno.xml b/songs/pl/custom/21wdw/Bagno.xml new file mode 100644 index 00000000..92297409 --- /dev/null +++ b/songs/pl/custom/21wdw/Bagno.xml @@ -0,0 +1,119 @@ + + + 21. WDW „Stare Żbiki” + Piosenka wykonywana na specyficznie nastrojonej gitarze: kołeczki równolegle. + 21. WDW „Stare Żbiki” + 21. WDW „Stare Żbiki” + + + Wujek Euzebiusz dał mi kilka cegieł + Żebym zbudował zamek bo miałem kilka cegieł + Które dał mi wujek Euzebiusz + Więc zbudowałem zamek na skalistym podłożu + Ale utonął w bagnie bo podłoże było skaliste + Prawie jak dusza wujka Euzebiusza + + + Wujek Euzebiusz, je je je… + + + Więc chciałem więcej cegieł + Od wujka Euzebiusza + Ale wujek Euzebiusz + Niestety utonął w bagnie + Bo podłoże było skaliste + Więc resztę cegieł + Wziąłem od ciotki Matyldy + + + Ciotka Matylda, je je je… + + + Więc zbudowałem zamek nowy + Na skalistym podłożu + Ale utonął w bagnie bo podłoże było skaliste (prawie) + A ciotka Matylda wyleciała w powietrze + Bo paliła fajkę w atmosferze pełnej metanu + I była duża dziura do której wpadła + Ciotka Matylda + + + Duża dziura, je je je… + + + Więc następne cegły wyłowiłem z bagna wędką + Ale ciotki Matyldy i wujka Euzebiusza + Nie wyłowiłem z bagna bo byli brzydcy i starzy + I śmierdzieli tak bardzo jak śpiwór Szymona + + + Śpiwór Szymona, je je je… + + + Poszedłem po rozum do Tłuszcza + I zbudowalem cegielnię z cegieł wyjętych z bagna + By zrobić więcej cegieł + I zbudowałem zamek na skalistym podłożu + Ale utonął w bagnie bo podłoże było skaliste + Jak kamień nerkowy małego ślicznego zajączka + + + Kamień nerkowy, je je je… + + + Więc wyłowiłem osła i krowę prosto z bagna + I poszła na dno cegielnia + Z zasady zachowania masy na dnie bagna + A potem z osła i krowy wyłonił się nagle m + A z mułu zrobiłem cegły + + + Osioł i krowa, je je je… + + + I zbudowałem zamek + Ale byłem sprytniejszy i postawiłem zamek + Na żabiej łapce i stał piękny zamek + Sięgął wieżami nieba i ten zamek stał tak długo + Aż grzmotnął w niego piorun + + + Grzmotnął piorun, je je je… + + + Ale zamek miał piorunochron piękny chromowy piorunochron + ugi jak kamień nerkowy małego ślicznego zajączka + Lecz było to stresujące szczególnie dla żabiej łapki + Która nagle skoczyła o pięć mil dalej + + + Żabia łapka, je je je… + + + A pięć mil dalej też było skaliste bagno i zamek + Poszedł na dno bo nie wytrzymał napięcia powierzchniowego + A pieśń już kończyć trzeba + Bo kartka nam się kończy na której są zapisane + Godziny porannego budzenia + + + + Czary-mary, zmieniamy gitary + + + + + + + + + + + + chord positioning + + + Onufry + + + \ No newline at end of file diff --git a/songs/pl/custom/21wdw/Ballada_antysojowa.xml b/songs/pl/custom/21wdw/Ballada_antysojowa.xml new file mode 100644 index 00000000..c28bd423 --- /dev/null +++ b/songs/pl/custom/21wdw/Ballada_antysojowa.xml @@ -0,0 +1,78 @@ + + + + Jakub Pochrybniak + Powstało w czasie obozu 21. WDH w Rumunii w 2003 roku, gdy kwatermistrz zagroził podaniem na stół po raz siódmy w tygodniu kotletów sojowych. + Krzysztof Myszkowski + 21. WDW „Stare Żbiki” + + + + + Brnąłem do ciebie, barze, + Przez mrozy i wiatry, + Przez śnieżyce i zaspy + Fagarasz i Tatry + Przez bezbarwne, bez smaku + Kotlety sojowe + I wreszcie mięso w barze + O tyle lepsze od soi, że aż odbiera mowę + + + A teraz jeść, nareszcie jeść + Mięsiwa — nie soję + Smakowe kubki cieszą się + A jelita z tęsknoty aż stoją + Cięlęcina, wołowina + Zapachem swym nęci + Od mięsa krów, szalonych krów + Wprost w głowie się kręci Vivat mięso! + + + yną przeze mnie kęsy + Rozkoszy dodając + Wielka jest kiełbasy moc + O jej smaku nie wspominając + Tkwi w moim wnętrzu mięso + Z mięsa siła ogromna powstaje + Kwatermistrz — soi z Tesco fan + Nawet nie wie ile dobre mięso daje + + + Mięso, mięso wspaniałe jest + A soja nie całkiem + Jak soję zjesz, to bardzo chcesz + Kwatermistrza uderzyć wałkiem + Marzy mi się, marzy mi się + Z kiełbasą fasolka + Jeśli kwatermistrz soję da + To będzie rozpierdolka + + + + + + + + + + + Piosenka harcerska - parodia + + + + + + + chord positioning + + + Taboret na podstawie orginałuKuba na podstawie pamięci i zdrowego rozsądkuOnufry na podstawie poprawek z KK + + + + + Porozmieszczane. Metrum jak zwykle. Sugerowałbym G0 zamiast Gzm7 - taka jest ogólnie przyjęta notacja. Nie wiem, co się pochrzaniło ze sprawdzającymi. Co poza tym? Nie wiem, co robisz z myślnikami, więc wstawiłem potrójny jako pauzę (LaTeX tak właśnie tworzy pauzy, jak wiesz). + + Ballada majowa + diff --git a/songs/cosjeszcze.xml b/songs/pl/custom/21wdw/Cos_jeszcze.xml similarity index 71% rename from songs/cosjeszcze.xml rename to songs/pl/custom/21wdw/Cos_jeszcze.xml index 2e839196..b5e698d7 100644 --- a/songs/cosjeszcze.xml +++ b/songs/pl/custom/21wdw/Cos_jeszcze.xml @@ -1,38 +1,38 @@ - - - - Jakub Pochrybniak - Gra się bodajże na strunie E ,,glissando'' przez wszystkie dżwięki, najpierw w górę, a potem w dół. - Jakub Pochrybniak - 21. WDH „Stare Żbiki” - - - - - Były dwa kleszcze, - Zdechły dwa kleszcze, - Fajne były, - Pośpiewajmy jeszcze. - - - - - - - - - - - - - - chord positioning - - - Michał Korch - - - - - - + + + + Jakub Pochrybniak + Gra się bodajże na strunie E ,,glissando'' przez wszystkie dżwięki, najpierw w górę, a potem w dół. + Jakub Pochrybniak + 21. WDW „Stare Żbiki” + + + + + Były dwa kleszcze, + Zdechły dwa kleszcze, + Fajne były, + Pośpiewajmy jeszcze. + + + + + + + + + + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/creutzfeld.xml b/songs/pl/custom/21wdw/Creutzfeldt-Jakob.xml similarity index 82% rename from songs/creutzfeld.xml rename to songs/pl/custom/21wdw/Creutzfeldt-Jakob.xml index c33c15bb..89d02834 100644 --- a/songs/creutzfeld.xml +++ b/songs/pl/custom/21wdw/Creutzfeldt-Jakob.xml @@ -1,5 +1,5 @@ - + Ryszard Kostecki @@ -10,7 +10,7 @@ - Creutzfeld Jakob naszym przyjacielem jest! + Creutzfeld Jakob naszym przyjacielem jest! diff --git a/songs/fortepian.xml b/songs/pl/custom/21wdw/Fortepian_Szopena.xml similarity index 84% rename from songs/fortepian.xml rename to songs/pl/custom/21wdw/Fortepian_Szopena.xml index 0a5593a6..d0c88152 100644 --- a/songs/fortepian.xml +++ b/songs/pl/custom/21wdw/Fortepian_Szopena.xml @@ -1,41 +1,41 @@ - - - - Jakub Pochrybniak - Gra się bodajże na strunie E ,,legato'' przez wszystkie dżwięki, najpierw w górę, a potem w dół. - Jakub Pochrybniak - 21. WDH „Stare Żbiki” - - - - - Był Szopen, - zdechł Szopen. - Fortepian wypadł przez okno, - ideał sięgnął bruku -- - fajny był, - szkoda go - - - - - - - - - - - - - - - - - chord positioning - - - - - - - + + + + Jakub Pochrybniak + Gra się bodajże na strunie E ,,legato'' przez wszystkie dżwięki, najpierw w górę, a potem w dół. + Jakub Pochrybniak + 21. WDW „Stare Żbiki” + + + + + Był Szopen, + zdechł Szopen. + Fortepian wypadł przez okno, + ideał sięgnął bruku — + fajny był, + szkoda go + + + + + + + + + + + + + + + + + chord positioning + + + + + + + diff --git a/songs/idziesobiekrolik.xml b/songs/pl/custom/21wdw/Idzie_sobie_krolik.xml similarity index 51% rename from songs/idziesobiekrolik.xml rename to songs/pl/custom/21wdw/Idzie_sobie_krolik.xml index bcb69d1d..8fe68892 100644 --- a/songs/idziesobiekrolik.xml +++ b/songs/pl/custom/21wdw/Idzie_sobie_krolik.xml @@ -1,69 +1,69 @@ - - - Idzie sobie Bolo - Jakub Pochrybniak, Marek Grabowski - Piosenka jest bardziej o podręczniku do survivalu, którego Bolo był właścicielem, a nie o nim samym, bo Bolo to fajny koleś :). - Kabaret Potem - 21. WDH „Stare Żbiki” - - - - - - Idzie sobie królik, słychać kroki Bolka, - Bolo idzie z nożem, będzie rozpierdolka. - Już przyleciał Bolek i w króliku dłubie, - Królik już nie żyje, Bolo ma to w dupie. - - - - Aa, już jest Bolo, - - Aa, nożem tnie, - - Aa, flaki trysną, - - Aa, fajnie, co? - - - ońce raźniej świeci, swąd się w polu snuje, - Bolo dalej pruje, królik już się psuje. - Spróbował go Bolo, już zielony wszędzie, - - Uwaga, uwaga, Bolo bekać będzie. - - - - Mnoża się króliki, patroszyć je można, - Sytuacja niezła, tylko trochę gorzej z rytmem. - Króliki na polu, już się cieszy Bolek, - Bo dla niego mięso, dla nas zaś rosołek. - - - - Patroszyć króliki w myśl ludowych przysłów - To jeden z największych, ludzkich idiotyzmów. - Skończył się już królik, flaków nie ma prawie, - Bolo niedomyty zaczął dłubać w trawie. - - - - - - - - - Przeróbka - - - - - chord positioning - - - Michał Korch - - - - Wiosenna Pieśń Radości - + + + Idzie sobie Bolo + Jakub Pochrybniak, Marek Grabowski + Piosenka jest bardziej o podręczniku do survivalu, którego Bolo był właścicielem, a nie o nim samym, bo Bolo to fajny koleś :). + Kabaret Potem + 21. WDW „Stare Żbiki” + + + + + + Idzie sobie królik, słychać kroki Bolka, + Bolo idzie z nożem, będzie rozpierdolka. + Już przyleciał Bolek i w króliku dłubie, + Królik już nie żyje, Bolo ma to w dupie. + + + + Aa, już jest Bolo, + + Aa, nożem tnie, + + Aa, flaki trysną, + + Aa, fajnie, co? + + + ońce raźniej świeci, swąd się w polu snuje, + Bolo dalej pruje, królik już się psuje. + Spróbował go Bolo, już zielony wszędzie, + + Uwaga, uwaga, Bolo bekać będzie. + + + + Mnoża się króliki, patroszyć je można, + Sytuacja niezła, tylko trochę gorzej z rytmem. + Króliki na polu, już się cieszy Bolek, + Bo dla niego mięso, dla nas zaś rosołek. + + + + Patroszyć króliki w myśl ludowych przysłów + To jeden z największych, ludzkich idiotyzmów. + Skończył się już królik, flaków nie ma prawie, + Bolo niedomyty zaczął dłubać w trawie. + + + + + + + + + Piosenka harcerska - parodia + + + + + chord positioning + + + Michał Korch + + + + Wiosenna Pieśń Radości + \ No newline at end of file diff --git a/songs/pl/custom/21wdw/Piosenka_do_spiewania_przy_pokonywaniu_wzgorz_miedzy_Rzeczka_Walimiem_a_Gluszyca.xml b/songs/pl/custom/21wdw/Piosenka_do_spiewania_przy_pokonywaniu_wzgorz_miedzy_Rzeczka_Walimiem_a_Gluszyca.xml new file mode 100644 index 00000000..34bb17e5 --- /dev/null +++ b/songs/pl/custom/21wdw/Piosenka_do_spiewania_przy_pokonywaniu_wzgorz_miedzy_Rzeczka_Walimiem_a_Gluszyca.xml @@ -0,0 +1,64 @@ + + + + Bajbus + Było: Muzyka: ,,Pressgang'' — Alek + + + + + + + Tam gdzie szkoła na Nowowiejskiej street + Harcerzyków luźny oddział szedł + Drużynie trzeba dziś świeżej krwi + Harcerzyków dwudziestej pierwszej + + + A że byłem wtedy durny kiep + Kota szybko wzięła mnie za łeb + W słoniowe trepy obuli mnie + Harcerzyki z dwudziestej pierwszej + + + Jak o prawa upominać się + Lech z Magnudem nauczyli mnie + Niejeden zuch dzięki temu wył + Mały zuch z dwudziestej pierwszej + + + Nikt nie zliczy ile forsy dał + Parking na który Ekspert wszystkich gnał + Dla chwały twej o drużyno ma + Dla kochanej dwudziestej pierwszej + + + Hen daleko miły został dom + Kiedyś dostał kopertę do swych rąk + Komendant ten numer wyciął ci + Adaś Foland z dwudziestej pierwszej + + + Gdy harcerzy szyk formuje się + W żadnym rzędzie nie zobaczysz mnie + W nieznane podły wiedzie los + Los b.s. z dwudziestej pierwszej + + + + + + + + AlekKrzysiek Cz. + + + + + + + + Branka + + + diff --git a/songs/pl/custom/21wdw/cos.xml b/songs/pl/custom/21wdw/cos.xml new file mode 100644 index 00000000..6f2330ef --- /dev/null +++ b/songs/pl/custom/21wdw/cos.xml @@ -0,0 +1,26 @@ + + + Jakub Pochrybniak + Gra się bodajże na strunie E basowej „glissando” wszystkie dźwięki w górę a potem w dół… + Jakub Pochrybniak + 21. WDW „Stare Żbiki” + + + Był koń, + zdechł koń, + fajny był, + szkoda go. + + + + + + + + chord positioning + + + Michał Korch + + + diff --git a/songs/pl/custom/281wdh/Piosenka_z_pociagu_pospiesznego_Bieszczady_z_Katowic_do_Zagorza_przez_Krakow_Plaszow_Tarnow_Stroze.xml b/songs/pl/custom/281wdh/Piosenka_z_pociagu_pospiesznego_Bieszczady_z_Katowic_do_Zagorza_przez_Krakow_Plaszow_Tarnow_Stroze.xml new file mode 100644 index 00000000..f1955aa1 --- /dev/null +++ b/songs/pl/custom/281wdh/Piosenka_z_pociagu_pospiesznego_Bieszczady_z_Katowic_do_Zagorza_przez_Krakow_Plaszow_Tarnow_Stroze.xml @@ -0,0 +1,81 @@ + + + + 281. WDH + + 281. WDH + 281. WDH + + + + + Opadły mgły i pociąg ze snu się budzi, + Górą snuje się dym, + Przy ruszaniu szybkim się ktoś wywrócił, + Ktoś tam śpi na koledze swym. + Pies się włóczy po pod kołami bez głowy, + Trzeba zmienić jazdy kierunek, + otek niesie młotkowy. + + + + A ciuchcia toczy, toczy swój skład uroczy, + Toczy, toczy się skład. + + Ty, co wisisz na lampie, by stać mógł ktoś, + Już dość, już dość, już dość! + Nie ma tu tuneli drutów z prądem brak, + A więc wdrapuj się szybko na dach. + + Bo nowy dzień wstaje, bo nowy dzień wstaje, + Nowy dzień, + + Wstaje nowy dzień. + + + Z czarnego snu już miasto się wynurza, + ońce rozpędza mrok. + Na koleje polskie się ktoś oburza, + Bo coraz większy jest tlok. + Śpi na półce nad nami osób pięć pospołu, + Ale półka urwać się nie może, + Trzymamy ją od dołu. + + + + A ciuchcia toczy, toczy swój skład uroczy, + Toczy, toczy się skład. + + Ty, co leżysz na dachu, by stać mógł ktoś, + Już dość, już dość, już dość! + Usiądź sobie z brzegu i zrób miejsce nam, + Bo my zaraz wdrapiemy się tam. + + Bo nowy dzień wstaje, bo nowy dzień wstaje, + Nowy dzień. + + Wstaje nowy dzień. + + + + + + + + + + + + + + chord positioning + + + Michał Korch + + + Sprawdzający nie słyszał nigdy tej piosenki. + + Opadły mgły + + diff --git a/songs/pl/custom/281wdh/dzungla.xml b/songs/pl/custom/281wdh/dzungla.xml new file mode 100644 index 00000000..1f2c4722 --- /dev/null +++ b/songs/pl/custom/281wdh/dzungla.xml @@ -0,0 +1,114 @@ + + + + 281. WDH + Spisane na podstawie maila od 281., być może nie dokładnie. + 281. WDH + 281. WDH + + + + + Szedłem kiedyś po pustyni, + Tam mnie napadł goryl dziki, + + + Hej, hej, hej, hej, hej, + + + + A pustynia była wielka, + Więc na drzewo jemu zwiałem. + + + Hej, hej, hej, hej, hej, + ungla, dżungla, pustynia, + ungla, dżungla, pustynia + ungla, dżungla, pustynia. + + + Pewnej księżycowej nocy + Kobra zjadła mi pięć kocy, + + + + Zawinięty w szósty byłem + + I dynamit podpaliłem. + + + + Raz tubylcy mnie złapali, + No i zjeść mnie zamierzali, + + + + + Ale ja co jeść nie miałem + + I ich wszystkich pozjadałem. + + + + Proszę państwa oto miś, + Miś jest bardzo grzeczny dziś, + + + + Chętnie państwu łapę poda, + Nie chce podać, a to szkoda. + + + + Dzik jest dziki, dzik jest zły, + Dzik ma bardzo ostre kły, + + + + Kto spotyka w lesie dzika, + Ten na drzewo zaraz zmyka. + + + + Na go, na go, na gondoli, + Pewna para się całuje, + + + + Wietrzyk bardzo łajbą buja, + + Ona trzyma go za rękę. + + + + + Idzie harcerz borem, lasem, + Wymachuje swym kompasem, + + + + + A harcerka robi zupę, + Harcerz łapię ją za słowa. + + + + + + + + + + + + + + chord positioning + + + Michał Korch + + Nie wiem do końca jak jest z refrenami. + + + diff --git a/songs/pl/folk/kwiat_jabloni/Idzie_zima.xml b/songs/pl/folk/kwiat_jabloni/Idzie_zima.xml new file mode 100644 index 00000000..e7719b2f --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/Idzie_zima.xml @@ -0,0 +1,49 @@ + + + Kasia Sienkiewicz + Kasia Sienkiewicz + Kwiat Jabłoni + + + Ktoś pogasił wszystkie światła, + Świat się ugiął od zamieci + I pomimo wielkich chęci + Nie mam dobrych wieści. + + + Chciałoby się uciec, + Nie przed wszystkim się da, + Idzie zima + Aaaaa… + + + + + + Wiem, że nigdy nie jest łatwa, + Niesie ciemny dzień przy sobie, + Nieruchome myśli w głowie + Żywe są o Tobie. + + + Byle śpiewać było o czym, + Serce było wciąż gorące, + Znowu krótsze będą noce, + Zobaczymy słońce. + + + + Nie ma takiej nadziei, + Która jeszcze coś zmieni, + Idzie zima… + Aaaaa… + + + + + niemożliwe + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/Lego.xml b/songs/pl/folk/kwiat_jabloni/Lego.xml new file mode 100644 index 00000000..ebc71294 --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/Lego.xml @@ -0,0 +1,72 @@ + + + Jacek Sienkiewicz + Kasia Sienkiewicz + Kwiat Jabłoni + + + Czasami chciałbym być zrobiony z klocków lego + Byś mogła mi wymienić głowę, gdy ją mam za ciężką + onie miałbym trochę mniej skomplikowane + Ale mógłbym nimi chwycić wszystko, co od ciebie dosta + Co od ciebie dosta + I pewnie mógłbym mocno trzymać się podstawy + Nawet gdybyś wywróciła mi świat do góry nogami + Do góry nogami + I można byłoby nawet rzucić mną o ścianę + A ja miałbym pewność, że i tak wtedy nic mi się nie stanie + Nic mi się nie stanie + + + Na niebie grzmi + Od wiatru lecą łzy + Już dawno bym się rozsypał, gdyby nie ty + Na niebie grzmi + Wali z całych sił + Jeśli chcę, do ciebie muszę iść + + + Czasami chciałbym być zupełnie pusty w środku + By chociaż przez chwilę poczuć trochę większy spokój + Trochę większy spokój + Nie ważne gdzie bym był i czego bym nie robił + Miałbym przyklejony uśmiech do mojej małej głowy + Mojej małej głowy + Bez cienia wątpliwości, bez niepewnych kroków + I w kółko zadawanych pytań, czy już jestem gotów, ooo + Czasami chciałbym być zrobiony z klocków lego + Bo nie mógłbym zrobić ci wtedy niczego złego + Niczego złego + + + + Na niebie grzmi + Od wiatru lecą łzy + Już dawno bym się rozsypał, gdyby nie ty + + + Ooo, ooo + Ooo, ooo + Ooo, ooo + Ooo, ooo + Ooo, ooo + Ooo, ooo + Ooo, ooo + + + + Na niebie grzmi + Od wiatru lecą łzy + Jeśli chcę, do ciebie muszę iść + Jeśli chcę, do ciebie muszę iść + Tak bardzo chcę do ciebie, więc muszę iść + + + + Pokaz slajdów + Poezja śpiewana + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/buka.xml b/songs/pl/folk/kwiat_jabloni/buka.xml new file mode 100644 index 00000000..06cff39a --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/buka.xml @@ -0,0 +1,54 @@ + + + Kasia Sienkiewicz + Kasia Sienkiewicz + Kwiat Jabłoni + + + + + + + + W dolinie spokój + A w niej wreszcie mieszkam ja + Świat mam na oku + I taki już jest od lat + I pytasz czemu na trawie jest szron + I skąd nadchodzi czarny front + Chmur, które idą do nas + Wiatr wieje ze wszystkich stron + Lepiej zamknę drzwi + + + Wiem, że nie ma nic gorszego niż Buka + Mówi, że wróci, ale nie wiesz kiedy + I stanie pod domem, bo siebie się nie da oszukać + Strach jest ten sam, jak wtedy + + + Wyglądam przez okno + Raczej nie przyszedł nikt + Ale podobno + Nie wszystko widać gdy... + Na szybach i na trawie jest szron + Gdy nadchodzi czarny front + Chmur, które idą do nas + Wiatr wieje ze wszystkich stron + Lepiej zamknę drzwi + + + + Po tylu latach wiem już na pewno + Że kiedy przyjdzie jasne będzie jedno + Złe myśli nie były tego warte + Zostawię drzwi otwarte + + + + Mogło być nic + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/byle_jak.xml b/songs/pl/folk/kwiat_jabloni/byle_jak.xml new file mode 100644 index 00000000..11058284 --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/byle_jak.xml @@ -0,0 +1,75 @@ + + + Kwiat Jabłoni + + + Latami pracuję ciężko + Tnąc gałąź, na której ciągle siedzi sam + Dni co raz szybciej biegną + Lecz jeszcze dzisiaj nie sięgnie w nas + Jesteś dla niego przestrzenią + Popisów polem i miejscem ważnych spraw + Gdy spadnie będzie pewien + Nie byłaś polem a celem + + + Jak mam obronić ziemię gdy jak walczyć nie wiem + I wszystko robię byle jak + Byle jak, byle jak, byle jak + Byle jak, byle jak, byle jak + Byle jak, byle jak, byle jak + + + Myślał, że zna Cię na wylot + Że da się zmierzyć Cię według jego praw + Zważyć i wycenić wszystko + Co znajdzie spośród słońc i traw + Samego siebie wyprzedza + Myślał, że idzie po Tobie by znaleźć dom + Nigdy tego nie pojął + Nie szedł po Tobie lecz z Tobą + + + Jak mam obronić ziemię kiedy mam wrażenie + Że bronić będę całkiem sam + Całkiem sam, całkiem sam, całkiem sam + Całkiem sam, całkiem sam, całkiem sam + Całkiem sam, całkiem sam, całkiem sam + + + + Jak mam bronić Ciebie, gdy jak walczyć nie wiem? + Jak mam bronić Ciebie? + + + + Jak mam bronić Ciebie? Jak mam bronić Ciebie? + Jak mam bronić Ciebie, gdy jak walczyć nie wiem? + Jak mam bronić Ciebie? Jak mam bronić Ciebie? + Jak mam bronić Ciebie? + + Byle jak Całkiem sam + + + + Byle jak + Byle jak + Byle jak + Całkiem sam + Całkiem sam + Całkiem sam + Byle jak + Byle jak + Byle jak + Całkiem sam + Całkiem sam + Całkiem sam + + + + Mogło być nic + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/bylominelo.xml b/songs/pl/folk/kwiat_jabloni/bylominelo.xml new file mode 100644 index 00000000..42583661 --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/bylominelo.xml @@ -0,0 +1,60 @@ + + + Kwiat Jabłoni + Kwiat Jabłoni + + + Było, minęło + Było miło, minęło + Było miło, minęło, minęło + Było, minęło + Było miło, minęło + Było miło, minęło, minęło + + + Po trochu zbieram w całość siebie + Za każdym razem kiedy jestem z Tobą razem + Padam z nóg + + + + Mimo tylu wrażeń i wielkich marzeń + Mogę wiele z siebie dać + By odejść znów + + + + Wiem, że słów na pewno mi zabraknie + Więc będzie łatwiej + Gdy mnie nie odnajdziesz + Tak będzie łatwiej + Więc odejdę stąd nad ranem, snem zostanę + Wiem, że będzie łatwiej + Będzie łatwiej + Będzie łatwiej, wiem + + + Po trochu zbieram w całość siebie + I już nie pytam Ciebie jak się czujesz + Mój świat wiruje + Mimo tylu nadziei wiem, że trzeba było to zmienić + Mogę dziś dać niemało + By tak zostało + + + + + + + Będzie łatwiej, wiem + Będzie łatwiej, wiem + + + + Pokaz slajdów + Inna + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/dom.xml b/songs/pl/folk/kwiat_jabloni/dom.xml new file mode 100644 index 00000000..4e6c410c --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/dom.xml @@ -0,0 +1,70 @@ + + + Jacek Sienkiewicz + Jacek Sienkiewicz + Kwiat Jabłoni + + + Znowu zamykam drzwi + Na noc przekręcam czwarty spust + Zasłaniam okna by + Nikt nie zobaczył drżących ust + Szczelin i pęknięć brak + Pozamykany szczelnie dom + Na zewnątrz wszystko gra + A w środku nie wiadomo co + + + Odkąd pamiętam + Meble spadają i trzęsie się dach + Przed domem spokój + Aż słychać najlżejszy wiatr + + + Nie umiem wyjść + Żeby stanąć przy tobie + Mijają dni + Znowu nic ci nie powiem + Znów mi się śnisz + Bliżej nie mogę podejść + Czy starczy mi lat + Żeby pozbyć się ścian? + + + + Czy starczy mi lat + żeby pozbyć się ścian + + + Spędzam kolejny dzień + W tym domu bez pękniętych ścian + Zamknięte okna, drzwi + Dostać się do mnie nie ma jak + Sam nie wiem jak mam wyjść + Nie tylko szyby są ze szkła + Jak mam się ruszyć gdy + Nie widzę granic moich ram + + + Odkąd pamiętam + Meble spadają i trzęsie się dach + Przed domem spokój + Aż słychać najlżejszy wiatr + + + + + Płomienie trawią od środka dom + Pożar wybucha we mnie co noc + Chcę powiedzieć wszystko, lecz brakuje słów + Za mało lat, za mało lat, za mało + + + + + Pokaz Slajdów + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/dzien_dobry.xml b/songs/pl/folk/kwiat_jabloni/dzien_dobry.xml new file mode 100644 index 00000000..591d4024 --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/dzien_dobry.xml @@ -0,0 +1,48 @@ + + + Kasia Sienkiewicz + Kwiat Jabłoni + + + + + + + Dzień dobry, dobrze zobaczyć Ciebie chociaż raz + Na jakiś czas + Już 8 rano, wiadomo, że nie zdążysz więc + Nie trzeba biec + Popatrz dookoła, nikt tu nie wie po co ż + I o czym śnić + Za sobą zostaw górę trosk i wyrusz zanim zgubisz trop + Powiedz jak to jest... + + + Że nie słyszysz mnie + I nic nie mówisz, a każdy dobrze wie + Że nie śpisz, gdy zapada zmrok + I nie wiesz kiedy zrobić krok + Powiedz jak to jest... + + + Wracasz nad ranem, blady świt odbija się + Od szyb i mgieł + Gonitwa myśli nie opuści Cię i ja to wiem + I znam ten bieg + W pośpiechu gubisz własny cień + Kolejny rok, kolejny dzi + I nie wiem jak to jest... + + + + + I nie wiem jak to jest... + + + + + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/dzis_pozno_pojde_spac.xml b/songs/pl/folk/kwiat_jabloni/dzis_pozno_pojde_spac.xml new file mode 100644 index 00000000..0531582c --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/dzis_pozno_pojde_spac.xml @@ -0,0 +1,52 @@ + + + Jacek Sienkiewicz + Jacek Sienkiewicz + Kwiat Jabłoni + + + Dziś późno pójdę spać + Gdy wszyscy będą w łóżkach + Otwarte oczy mam + A głowa pełna i pusta + I nie wiem o czym myśleć mam + Żeby mi się przyśnił taki świat + W którym się nie boję spać + W którym się nie boję spać + + Już na mnie idzie tłum + I depcze wszystko po drodze + Nie mogę uciec mu + On też przed sobą nie może + Gwiazd już nie widać, no bo jak? + Kiedy łuna z ziemi bije tak + Jak gdyby chciała zalać świat + Jak gdyby chciała zalać świat + + + Choć nie chcę budzić się + Nie umiem spać + Świat dziwny jest jak sen + A sen jak świat x2 + + + Nie mogę ruszyć w przód + Nogi sklejone taśmami + Zaczynam spadać w dół + Spadam do góry nogami + Myślę sobie, zaraz obudzę się + Lecz im bardziej spadam, tym bardziej widzę, że + To wszystko chyba nie jest sen + To wszystko chyba nie jest sen + + + + + + niemożliwe + Inna + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/kto_powie_mi_jak.xml b/songs/pl/folk/kwiat_jabloni/kto_powie_mi_jak.xml new file mode 100644 index 00000000..5cb01077 --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/kto_powie_mi_jak.xml @@ -0,0 +1,52 @@ + + + Jacek Sienkiewicz + Jacek Sienkiewicz + Kwiat Jabłoni + + + Stoję gdzieś pod niebem, pod nogami piach + Mam podobno iść przed siebie + Chociaż nie wiem jak, oj nie wiem + Robię pierwszy krok, muszę więc gdzieś dojść + Góra wielka, droga kręta + Trudno czasem iść, nie stękać + Chcę od razu wiedzieć na czym stoi świat + Jak poznawać siebie lepiej + Jak nie potknąć się o ciebie + Idąc byle jak + + + + Więc kto powie mi jak radzić sobie mam + Taki wielki świat nade mną mam + Ileś tam lat, lecz to niewiele da + Doświadczenia ciągle brak + + + + + + + + Będziesz w pocie czoła walczyć o swój świat + Będziesz wodą żyć i chlebem + Myśleć będziesz nad swym celem + Tak podobno mówił On człowiekowi co + Zbłądził jedząc owoc wiedzy + Bo chciał wiedzieć co miał wiedzieć + Tak już w życiu bywa od zarania lat + Że kto winny musi być + Ten winny będzie choćby nie wiem jak + Starał się sam + + + + + niemożliwe + Poezja śpiewana + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/moglo_byc_nic.xml b/songs/pl/folk/kwiat_jabloni/moglo_byc_nic.xml new file mode 100644 index 00000000..961cd5e2 --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/moglo_byc_nic.xml @@ -0,0 +1,73 @@ + + + Jacek Sienkiewicz + Kwiat Jabłoni + + + + + + Jestem tu zupełnie sam + Choć przed chwilą stałem w tłumie + Leżę pośród czterech ścian + Czuje jakbym w środku topił się + Szary sufit nie chce spaść + Moje ciało nie podniesie mnie + Przecież Ty masz tak jak ja + Że wszystkiego coraz więcej chcesz... + Więcej chcesz... + + + I to zapiera dech + Że jest coś, a nie nic + Gdy budzisz się to nadal jesteś Ty + I to zapiera dech + Że obok Ciebie jest ktoś + I że mogło być nic... + A jest wszystko... + A jest wszystko... + Jest wszystko... + + + Jesteś tu zupełnie sam + Najzwyczajniej w świecie jesteś + Nikt nie czeka na Twój znak + Nikt nie patrzy jak potykasz się + Nie ma fanfar, złotych bram + Barwnych świateł, ciepła tłumu + Piękno da się znaleźć tam + Nawet w ciszy i bezruchu + + + I to zapiera dech + Że jest coś, a nie nic + Gdy budzisz się to nadal jesteś Ty + I to zapiera dech + Że obok Ciebie jest ktoś + I że mogło być nic... + + + + A skoro szarość nie zachwyca + To ilu potrzebujesz barw + Bo chociaż wczoraj zaszło słońce + To nie musi jutro wstać + + + + + + na na na na na + na na na na na + na na na na na... + na na na...na na na... + + + + + Inna + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/niemozliwe.xml b/songs/pl/folk/kwiat_jabloni/niemozliwe.xml new file mode 100644 index 00000000..81778f63 --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/niemozliwe.xml @@ -0,0 +1,39 @@ + + + Kasia Sienkiewicz + Kwiat Jabłoni + + + Tłum ludzi biegnie przez mój pokój + Każdy chce powiedzieć to co doskonale wiem + A przecież miał być, miał być spokój + Chwila głuchej ciszy, twardy sen + + + Niemożliwe nam się dostało + Nie ma powodów do łez + A każdy mówi, że mało + musisz więcej niż chcesz + + + Zabierają rzeczy i wynoszą łóżko + Okna ani ściany nie są teraz moje + Wciąż nie widzę końca, ale mówią mi że już niedługo + I że przyszli tylko po to by za chwilę odejść + + + + Gdzie jestem, nie wiem + Wyciągam ręce przed siebie + Gdzie jestem, nie wiem wyciągam ręce do ciebie + Gdzie jestem, nie wiem + Wyciągam ręce przed siebie + Gdzie jestem, nie wiem wyciągam ręce do ciebie + + + + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/od_nowa.xml b/songs/pl/folk/kwiat_jabloni/od_nowa.xml new file mode 100644 index 00000000..ae8a885e --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/od_nowa.xml @@ -0,0 +1,60 @@ + + + Jacek Sienkiewicz + Jacek Sienkiewicz, Kasia Sienkiewicz + Kwiat Jabłoni + + + Wyobraź sobie, że umiesz widzieć rzecz + Taką, jaka ona jest + Że da się zdjąć okulary skojarzeń + Wymazać wspomnień obrazy + Patrząc na fotel już nie widzę go + Widzę ciebie jak siedzisz i płaczesz + Patrząc na tęczę widzę podbite oko + Widzę przepaść głęboką + + + + Czy mógłby ktoś tak wyzerować świat + Żeby się nic nie stało do wczoraj? + Bez słów, co bolą, bez otwartych ran + Żebyśmy się poznali od nowa + + + + Żeby się nic nie stało do wczoraj + Żebyśmy się poznali od nowa + + + Jakby to było gdyby wszystko to, co jest + Miało tylko jeden dzień? + Podalibyśmy sobie dłonie bez żalu + Bez powrotu koszmarów + Teraz, gdy patrzę dookoła to + Wszystko wydaje mi się czarnobiałe + Cały mój świat się przełamał w połowie + Możesz być świętym lub wrogiem + + + + + + Uuu-uuu-u, uuu uuu + + + + + + Tak wyzerować świat + Bez otwartych ran + Żeby się nic nie stało do wczoraj + + + + + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/wodymidaj.xml b/songs/pl/folk/kwiat_jabloni/wodymidaj.xml new file mode 100644 index 00000000..904a05a5 --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/wodymidaj.xml @@ -0,0 +1,71 @@ + + + Jacek Sienkiewicz + Jacek Sienkiewicz + Kwiat Jabłoni + + + Wrzuceni są w świat + I wrzuceni są w siebie + Oooo wszyscy pod niebem + + + Czy będziesz żył tak jak pan + Lub gdzieś pod płotem i sam + Oooo tego nie wiesz + + + Czy będziesz żył pośród gór + Czy może miast wielkich mur zasłoni + Jeee wrzuceni w siebie + + + Jak wielki pożar jest świat + Co wiecznie trawić się ma + Od nieba aż aż po ziemię + + + Więc przez płonący las przeprowadź mnie + Niech z nieba spadnie na mnie wielki deszcz + I przez płonący las przeprowadź mnie + Jak wielka rzeka wpłyń, uratuj mnie + + + I wciąż poznają ten świat + Poznają gwiazdy i ziemię + Oooo wszyscy pod niebem + + + Czy poznasz świat lejąc łzy + Lub w zgodzie z nim będziesz żyć + Zależy tylko od ciebie + + + Czy będziesz stąpać po dnie + Lub z głową w chmurach we śnie + Aaaaa Wrzuceni w siebie + + + Choć wiecznie płonie ten świat + To w sercu wierzę, że ja + Aaaaa Już się nie zmienię + + + + + Wody mi daj, wody mi daj + Wody mi daj, wody mi daj + Wody mi daj, wody mi daj + + Wody mi daj, wody mi daj + + + + + + niemożliwe + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/wzieli_zamkneli_mi_klub.xml b/songs/pl/folk/kwiat_jabloni/wzieli_zamkneli_mi_klub.xml new file mode 100644 index 00000000..c6f1c37e --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/wzieli_zamkneli_mi_klub.xml @@ -0,0 +1,35 @@ + + + Jacek Sienkiewicz + Jacek Sienkiewicz + Kwiat Jabłoni + + + Chcę dziś zwojować cały świat + aśnie dzisiaj udowodnię - jestem czegoś wart + Idę już Krakowskim zbliżam się + Już niedługo, już za chwilę, za minuty dwie + + + I nagle serce staje i aż zapiera dech + Świat szybko wiruje, a ja pewna jestem, że + Wzięli zamknęli dziś mój ulubiony klub + Pod drzwiami ludzi tłum już nie zabaluję tu + Okna zabite, techno nie poleci już + Na blacie gruby kurz, a my nie zatańczymy tu + + + Światła ulic wyznaczają szlak + Wyobrażam sobie w głowie jak za dawnych lat + Po zajęciach pójdę właśnie tam + Miesiąc kończy się, no ale na jedno mnie stać + + + + + niemożliwe + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/za_siodma_gora.xml b/songs/pl/folk/kwiat_jabloni/za_siodma_gora.xml new file mode 100644 index 00000000..b4bb271d --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/za_siodma_gora.xml @@ -0,0 +1,45 @@ + + + Kasia Sienkiewicz + Antoni Wojnar + Kwiat Jabłoni + + + Za siódmą chmurą, nie jedną rzeką, + Jest świat co się tylko w nadziei mieści, + Dla jednych w życiu bywa pociechą, + Dla niego nie jeden stał się lepszy. + + + Ten który zamknie oczy zmęczone, + Otworzyć je może po tamtej stronie. + Na sercu ciężko, myśli zlęknione, + Czy drogi nie ma w powrotną stronę + + + Na na na na na na na na + Na na na na na na na na + Na na na na na na na na + Na na na na na na na na na na + + + Znalazł się jednak człowiek bezradny, + Spokoju nigdy nie umiał zaznać, + Strzelił i wydał oddech ostatni, + By swoje myśli daleko zabrać. + + + Leciał wytrwale, okrążył chmury, + Rzeki przepłynął, wyprzedził światło, + Gdy ląd odnalazł, stanął na górze, + Oczy zamgliło, oddechu brakło. + + + + + niemożliwe + + + + + diff --git a/songs/pl/folk/kwiat_jabloni/zasnalem_na_trawniku.xml b/songs/pl/folk/kwiat_jabloni/zasnalem_na_trawniku.xml new file mode 100644 index 00000000..f30892bc --- /dev/null +++ b/songs/pl/folk/kwiat_jabloni/zasnalem_na_trawniku.xml @@ -0,0 +1,71 @@ + + + Jacek Sienkiewicz + Jacek Sienkiewicz + Kwiat Jabłoni + + + Zasnąłem na trawniku + Chciałem tylko na sekundę + To nie miała być godzina ani dwie + Zasnąłem na trawniku + Ze trzysta rzeczy do zrobienia + Przecież świat się nie zmienia kiedy śpię + Jest już późny wieczór + Wiem, że mam nieodebrane, no przepraszam cię + Ja miałem słodki sen + Że nie ma mnie tu wcale + Że jestem niebem i trawnikiem i tym drzewem + No wybacz proszę, że + + + + Zasnąłem na trawniku + + + + + + + + + Zasnęłam na trawniku + Chciałam tylko na sekundę + To nie miała być godzina ani dwie + Zasnęłam na trawniku + Trzysta rzeczy do zrobienia + Przecież świat się nie zmienia kiedy śpię + Jest już późny wieczór + Wiem, że mam nieodebrane, no przepraszam cię + Ja miałam słodki sen + Że nie ma mnie tu wcale + Że jestem niebem i trawnikiem i tym drzewem + No wybacz proszę, że + + + + Zasnąłam na trawniku + + + + + + + + + + Ooo... + + + + + + + + Pokaz slajdów + + + + Myślę, że nie jest to idealne zapisanie tej piosenki, przyjmiemy poprawki. + + diff --git a/songs/pl/harc/Ballada_rajdowa.xml b/songs/pl/harc/Ballada_rajdowa.xml new file mode 100644 index 00000000..52dc85ef --- /dev/null +++ b/songs/pl/harc/Ballada_rajdowa.xml @@ -0,0 +1,49 @@ + + + Ballada o harcerzu + + + + Naszej ziemi śpiewamy, ziemi pokłon składamy, + Taki prosty, serdeczny, harcerski, + Niechaj echo poniesie tę balladę rajdowa + W nowe jutro i przyszłość nową. + + + + Właśnie tu na tej ziemi, młody harcerz meldował + Swą gotowość umierać za Polske. + Tak, jak ty niesiesz plecak, on niósł w ręku karabin + W sercu miłość, nadzieję i troskę. + Może tu w Nowej Słupi, Daleszycach, Bielicach + Brzozowymi krzyżami znaczonych, + Swą dziewczynę pożegnał nic nie wiedząc, że tylko + Kilka dni życia mu przeznaczone. + + + + Na pomniku wyryto, ze szesnaście miał wiosen, + Że był śmiały, odważny, radosny. + Kiedy padał płakała cała puszcza jodłowa, + Nie doczekal czekanje tak wiosny. + I choć on nie doczekał, to nie zginał tak sobie — + Przetarł szlak, którym dzisiaj wędrujesz, + Kiedy tak przy ognisku śpiewasz sobie balladę, + Tak jak on w sercu ojczyznę czujesz. + + + + + + Piosenka harcerska + + + + chord positioning + + + Michał Korch + + W takiej wersji śpiewa Barakowa z 281. Nie znam autorów. + + diff --git a/songs/pl/harc/Bieszczadzki_rajd.xml b/songs/pl/harc/Bieszczadzki_rajd.xml new file mode 100644 index 00000000..eb9fa037 --- /dev/null +++ b/songs/pl/harc/Bieszczadzki_rajd.xml @@ -0,0 +1,57 @@ + + + + Piotr Frankowicz, Julian Jaworz-Dutka + Piosenka powstała lub/i była śpiewana podczas "Harcerskiej Operacji Bieszczady 40". + Piotr Frankowicz, Julian Jaworz-Dutka + Wołosatki - Grube Dudy + + + + + Zebrało się nas tutaj wielu takich jak ty + Siadaj z nami przyjacielu a zaśpiewamy ci + + + + Rajd rajd bieszczadzki rajd + Czy to w słońce czy to w deszcz + + Idziesz z nami przyjacielu + Bo sam chcesz + + + + Każdy harcerz przeżyć chce ten bieszczadzki rajd + Aby wzmocnićswoje siły jemy dużo pajd + + + + Czasem chleba nam brakuje ale fajno jest + Ktoś nas wtedy poratuje to braterski gest + + + + Może kiedyś tu za rok wszysczy się spotkamy + Obsiądziemy ogień w koło i tak zaśpiewamy + + + + + + + + Adam + + Adam-->piosenka jest na płycie analogowej, więc jeśli ktoś ma odpowiednie ustrojstwo to można by przegrać ja na nośnik dla ludzi :) + + + + chords + + + + + Bieszczady jak co roku… + + diff --git a/songs/Bieszczadzki_trakt.xml b/songs/pl/harc/Bieszczadzki_trakt.xml similarity index 97% rename from songs/Bieszczadzki_trakt.xml rename to songs/pl/harc/Bieszczadzki_trakt.xml index d3acffa5..b2c429d4 100644 --- a/songs/Bieszczadzki_trakt.xml +++ b/songs/pl/harc/Bieszczadzki_trakt.xml @@ -1,5 +1,5 @@ - + Bogdan Adamek diff --git a/songs/Harcerskie_idealy.xml b/songs/pl/harc/Harcerskie_idealy.xml similarity index 55% rename from songs/Harcerskie_idealy.xml rename to songs/pl/harc/Harcerskie_idealy.xml index 69ca3bf2..1a9da464 100644 --- a/songs/Harcerskie_idealy.xml +++ b/songs/pl/harc/Harcerskie_idealy.xml @@ -1,5 +1,5 @@ - + @@ -15,22 +15,22 @@ A zaraz pod nim harcerskich dziesięć praw. - Ramię pręż, słabość krusz i nie zawiedź w potrzebie, - Podaj swą pomocną dłoń Tym, co liczą na Ciebie, - Zmieniaj świat, zawsze bądź sprawiedliwy i odważny, - Śmiało zwalczaj wszelkie zło, niech twym bratem będzie każdy. + Ramię pręż, słabość krusz i nie zawiedź w potrzebie, + Podaj swą pomocną dłoń Tym, co liczą na Ciebie, + Zmieniaj świat, zawsze bądź sprawiedliwy i odważny, + Śmiało zwalczaj wszelkie zło, niech twym bratem będzie każdy. - I świeć przykładem, świeć, - I leć w przestworza leć, - I nieś ze sobą wieść, - Że być harcerzem chcesz. + I świeć przykładem, świeć, + I leć w przestworza leć, + I nieś ze sobą wieść, + Że być harcerzem chcesz. - A gdy spyta cię ktoś: „Skąd ten krzyż na twej piersi”, - Z dumą odpowiesz mu: ,,Taki mają najdzielniejsi - I choć mało mam lat w mym harcerskim mundurze - Bogu, ludziom i ojczyźnie na ich wieczną chwałę służę.'' + A gdy spyta cię ktoś: „Skąd ten krzyż na twej piersi”, + Z dumą odpowiesz mu: ,,Taki mają najdzielniejsi + I choć mało mam lat w mym harcerskim mundurze + Bogu, ludziom i ojczyźnie na ich wieczną chwałę służę.'' diff --git a/songs/Hymn_harcerski.xml b/songs/pl/harc/Hymn_harcerski.xml similarity index 62% rename from songs/Hymn_harcerski.xml rename to songs/pl/harc/Hymn_harcerski.xml index 11be6cd9..b6495b70 100644 --- a/songs/Hymn_harcerski.xml +++ b/songs/pl/harc/Hymn_harcerski.xml @@ -1,5 +1,5 @@ - + Wszystko co nasze Ignacy Kozielewski; Olga Drahonowska-Małkowska @@ -12,15 +12,15 @@ - Wszystko co nasze Polsce oddamy - W niej tylko życie, więc idziem żyć - Świty się bielą otwórzmy bramy - Rozkaz wydany, wstań w słońce idź - Ramię pręż, słabość krusz - Ducha tęż ojczyźnie miłej służ - Na jej zew w bój czy w trud - Pójdzie rad harcerzy polskich ród - Harcerzy polskich ród + Wszystko co nasze Polsce oddamy + W niej tylko życie, więc idziem żyć + Świty się bielą otwórzmy bramy + Rozkaz wydany, wstań w słońce idź + Ramię pręż, słabość krusz + Ducha tęż ojczyźnie miłej służ + Na jej zew w bój czy w trud + Pójdzie rad harcerzy polskich ród + Harcerzy polskich ród diff --git a/songs/Ida_skauci.xml b/songs/pl/harc/Ida_skauci.xml similarity index 93% rename from songs/Ida_skauci.xml rename to songs/pl/harc/Ida_skauci.xml index f29d004b..3b64bd2d 100644 --- a/songs/Ida_skauci.xml +++ b/songs/pl/harc/Ida_skauci.xml @@ -1,5 +1,5 @@ - + @@ -31,7 +31,7 @@ Rzucim światu pieśń o cudzie raz, dwa, trzy Będziem śpiewać pieśń radości O wspaniałym dniu wolności raz, dwa, trzy, - raz, dwa, trzy, raz, dwa, trzy + raz, dwa, trzy, raz, dwa, trzy diff --git a/songs/Juz_rozpalilo_sie_ognisko.xml b/songs/pl/harc/Juz_rozpalilo_sie_ognisko.xml similarity index 93% rename from songs/Juz_rozpalilo_sie_ognisko.xml rename to songs/pl/harc/Juz_rozpalilo_sie_ognisko.xml index 8fe69839..e200111b 100644 --- a/songs/Juz_rozpalilo_sie_ognisko.xml +++ b/songs/pl/harc/Juz_rozpalilo_sie_ognisko.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/harc/Kaszubskie_noce.xml b/songs/pl/harc/Kaszubskie_noce.xml new file mode 100644 index 00000000..abe7a238 --- /dev/null +++ b/songs/pl/harc/Kaszubskie_noce.xml @@ -0,0 +1,67 @@ + + + Tu szumi las… + Zbigniew Kowalczyk, Tomasz Krzepkowski, Dariusz Jagodziński + Piosenka nie opowiada wcale o Kaszubach w Polsce. Opowiada o Kaszubach w Ontario [1], Kanada, co wyjaśnia sens słów: "I choć Ojczyzna jest tak daleko" [2]. + +Cytując za [3]: +Tekst piosenki pisany był etapami. Pierwsze dwie zwrotki i refren powstały podczas biwaku na Kaszubach. Napisane na stanicy Karpaty w październikowy wieczór, gdy drużyna ruszyła w teren patrolami a drużynowy miał natchnienie… +Darek rzadko wtedy rozstawał się z gitarą. W trakcie krótkiej przerwy między roboczym zadaniem a wyprawą w teren powstała melodia. Melodia była gotowa, ale z tekstem nie wychodziło – było kilka pierwszych słów i pomysł na temat, czyli Kaszuby. Gdy wędrownicy wrócili z wyprawy drużynowy miał już tekst. Taki był początek. + +Trzecia zwrotka (w kolejności w jakiej powstawał tekst) została napisana latem następnego roku podczas obozu Szczepu Warszawa na terenie ‘przy tartaku’. Dh Tomek Krzepkowski był wtedy oboźnym podobozu wędrowników. Gdzie wraz z Darkiem znaleźli inspirację do napisania tekstu tego już nie wiem ;) Czwarta zwrotka ‘a gdy drużyna…’ powstała w późniejszych latach, w pewnym sensie jako przypomnienie, że nasze drogi się rozchodzą i coraz rzadziej mamy szansę, by spotkać się, porozmawiać, powspominać. Oczywiście po latach niektórzy próbowali dodać jakieś gesty, kołysanie fal, itp., co mija się z głębszym sensem piosenki i spłyca zawarte myśli. Dla ułatwienia zmieniano sobie także tonację, jednak Kaszubskie Noce prawidłowo brzmią jedynie w oryginalnej tonacji, czyli w E-dur. Napisałem, że początek i inspiracja to 7DHW, gdyż w tej drużynie wiele się działo i wiele piosenek zostało przez nią rozpropagowanych, no i powstała ta jedna własna. W składzie w jakim powstały Kaszubskie Noce drużyna działała od 1985 do 1989 roku. + +[1] https://goo.gl/maps/cz6w4VbnqgmLAdZS9 +[2] http://kronikamontrealska.com/2012/07/06/kanadyjskie-kaszuby-ontario/ +[3] https://www.zhpharcerki.org/organizacja_harcerek/egazetka_4/gazetka_4_piosenki_A.htm + Dariusz Jagodziński + 7 DH Wędrowników im. phm Alka Dawidowskiego ZHPzgk (Kanada, Ontario) + + + Kaszubskie noce, nad nami lśniące + Harcerski krąg, ogniska blask, + Gdy się tu znajdziesz, wtedy zrozumiesz + Że wszystko to, łączy nas. + + + To szumi las, kołysze drzewa + Fala jeziora, brzegi zalewa + Tu mały Giewont, czoło pochyla + A my siedzimy, harcerska brać. + + + I choć Ojczyzna, jest tak daleko + Lecz nasze myśli, wciąż do niej mkną + Tam też wśród nocy, płoną ogniska + Harcerskie piosnki, unosi wiatr. + + + + A gdy drużyna, znowu jest razem + Płonie ognisko, gitara gra, + Znów wspominamy, pierwsze wyprawy + Trudy radości, wspaniały czas. + + + + Czy ty pamiętasz, pierwsze ognisko + Pierwsze spojrzenie, cudowna noc, + Gwiazdy na niebie, byłeś tak blisko + Mówiłaś wtedy: „Kocham Cię” [a ja nie!] + + + + + Kaszuby + Kanada + + Piosenka harcerska + + + + + + Piotr Tabor + + Zmienić tonację na E-dur ? + + diff --git a/songs/pl/harc/Plonie_ognisko_i_szumia_knieje.xml b/songs/pl/harc/Plonie_ognisko_i_szumia_knieje.xml new file mode 100644 index 00000000..5aece49b --- /dev/null +++ b/songs/pl/harc/Plonie_ognisko_i_szumia_knieje.xml @@ -0,0 +1,48 @@ + + + + + + Płonie ognisko i szumią knieje + Drużynowy jest wśród nas + Opowiada starodawne dzieje + Bohaterski wskrzesza czasg A7 d + + + O rycerstwie spod kresowych granic + O obrońcach naszych polskich granic + A ponad nami wiatr szumny wieje + I dębowy huczy las + + + Już do odwrotu głos trąbki wzywa + Alarmując ze wszech stron + Wstaje wiara w ordynku szczęśliwa + Serca biją zgodny ton + + + Każda twarz się w uniesieniu płoni + Każdy laskę krzepko dzierży w dłoni + A z młodzieńczej się piersi wyrywa + Pieśń potężna, pieśń jak dzwon. + + + + + + + + + + + + + + + + + + + + + diff --git a/songs/pl/harc/Ptaki_ptakom.xml b/songs/pl/harc/Ptaki_ptakom.xml new file mode 100644 index 00000000..57f52a50 --- /dev/null +++ b/songs/pl/harc/Ptaki_ptakom.xml @@ -0,0 +1,68 @@ + + + + Jerzy Frankiewicz + + Zbigniew Kocój + + + + + + Wybiegani, wysłuchani, wybawieni + Siądźcie wkoło do ogniska mego stóp + Chcę powiedzieć wam o tamtej złej jesieni + Z której przyszedł ten harcerski leśny grób + + + Myśli mieli rozczochrane jak wy dzisiaj + I mundury te dzisiejsze mieli też + Lecz stanęli w pogotowiu, gdy padł wystrzał + Aby bronić tej największej z wielkich wież + + + Harcerze, którym słowa na ustach zamierały + Harcerki, którym uśmiech zabrał wojny czas + Jak ptaki po przestworzach losu szybowały + I padały jak puszczony bez nadziei głaz + + + Mogli odejść, mogli uciec w swoje jutro + Nikt by słowa im powiedzieć nie był śmiał + Lecz zostali, chociaż było im tak trudno + Gdy za strzałem padał ciągle drugi strzał + + + + To dla Polski tak czuwali dniem i nocą + Polski sztandar osłaniali piersią swą + I odeszli, kiedy wzięto ich przemocą + Aby w ziemię wtopić całą duszę swą + + + + Niech im pokłon odda nasze pokolenie + Tym, co umrzeć tam umieli mimo snów + I gdy przyjdą, by podeptać nam marzenia + Polski sztandar my osłońmy piersią znów + + + + + + + + + + Piosenka harcerska + + + + + Onufry + + + + + + diff --git a/songs/pl/harc/Swietlany_krzyz.xml b/songs/pl/harc/Swietlany_krzyz.xml new file mode 100644 index 00000000..af393877 --- /dev/null +++ b/songs/pl/harc/Swietlany_krzyz.xml @@ -0,0 +1,39 @@ + + + + + + Idziemy w jasną z błękitu utkaną dal, + Drogą wśród łąk, pól bezkresnych + I wśród zbóż szumiących fal. + + + Cicho, szeroko jak okiem spojrzenie śle. + Jakieś się snują marzenia + W wieczornej spowitej mgle + + + Idziemy naprzód i ciągle pniemy się wzwyż, + By zdobyć szczyt ideałów: + Świetlany harcerski krzyż. + + + + + + + + + + + + + + + + + + + + + diff --git a/songs/SzaraLilijka.xml b/songs/pl/harc/Szara_lilijka.xml similarity index 97% rename from songs/SzaraLilijka.xml rename to songs/pl/harc/Szara_lilijka.xml index 0ce1a61a..39943fba 100644 --- a/songs/SzaraLilijka.xml +++ b/songs/pl/harc/Szara_lilijka.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/harc/harcerska_dola.xml b/songs/pl/harc/harcerska_dola.xml new file mode 100644 index 00000000..dc7620c2 --- /dev/null +++ b/songs/pl/harc/harcerska_dola.xml @@ -0,0 +1,37 @@ + + + Alternatywne, uproszczone chwyty: +[a / a E a / a A7 d / E a] + + + Z miejsca na miejsce, z wiatrem wtór + Z lasu do lasu, z pól do pól + + Wszędzie nas pędzi, wszędzie gna + Harcerska dola radosna + + + + Nam trud niestraszny ani znój + Bo myśmy złu wydali bój + + I z nim do walki wciąż nas gna + Harcerska dola radosna + + + + Nasza pogoda, jasny wzrok + Niechaj rozjaśnią ludziom mrok. + + Niechaj i innym szczęście da + Harcerska dola radosna + + + + + Piosenka harcerska + + + + + diff --git a/songs/pl/harc/idalesni.xml b/songs/pl/harc/idalesni.xml new file mode 100644 index 00000000..59742e8e --- /dev/null +++ b/songs/pl/harc/idalesni.xml @@ -0,0 +1,46 @@ + + + Jerzy Jurandot + Jerzy Wasowski + Janusz Zakrzeński + + + Nie ma nikt na świecie domu jak my mamy, + Jest zielony latem , zima śnieżnobiały, + Mamy dach z gałęzi, z mchu miękkiego łóżko, + Lampa jest nam księżyc ponad leśna dróżka, + + + Idą, idą leśni, kompas maja z gwiazd, + Nikt nie słyszy pieśni, tylko jeden las, + Idą, idą leśni, drogę leśnym daj, + Tam gdzie my jesteśmy, tam jest wolny kraj. + + + Górą chmurka płynie, ptak po niebie tańczy, + Dołem przez gęstwinę idą partyzanci, + Drapieżniki leśne, wilków złych wataha, + Żandarm wejść tu nie chce i SS ma stracha. + + + + Nie wiadomo nigdy gdzie i skąd spadniemy + Mścić niemieckie krzywdy wobec polskiej ziemi, + Długa nasza droga, bron ugniata ramie, + Kule są dla wroga, a ostatnia dla mnie. + + + + Nie martw się dziewczyno, trzeba mieć nadzieje, + Wszak nie wszyscy giną, może ocaleje, + Jak będzie ładnie wrócić do swej wioski, + Gdy ostatni padnie żołdak hitlerowski. + + + + Piosenka żołnierska + + + + + diff --git a/songs/pl/harc/najemnicy.xml b/songs/pl/harc/najemnicy.xml new file mode 100644 index 00000000..b4c8e838 --- /dev/null +++ b/songs/pl/harc/najemnicy.xml @@ -0,0 +1,67 @@ + + + + + Bicie agresywne. + + + + + + + W dżunglach Katangi i bagnach Konga, + W stepach Jemenu, w piaskach Sudanu, + Gdzie śmierć swe żniwa zbiera codziennie + Walczą psy wojny, najemni żołnierze. + + + Czerwone łuny na niebie, czarna dokoła noc + I naprzód, wciąż naprzód najemni żołnierze + + I vive la guerre, i vive la morte… + + + + Gdy huczą działa, świszczą pociski, + Gdy serce wali jak opętane + Brudni od kurzu, od potu ciemni + Biegną w ataku, biegną w nieznane. + + + + Gdy przy ognisku, przy ognisku siąda + + I dawne dzieje wspominać zaczną, + + Uśmiech rozjaśni zmęczone twarze, + Gdy z bronią w ręku wśród dżungli zasną. + + + + Dla tych, co w piaskach Zambii i Konga, + + I dla tych, co w bezimiennych grobach, + Dla wszystkich, którzy polegli w walce, + Bóg wojny wieniec niesie laurowy. + + + + + + + + + + + + + + chord positioning + + + Michał Korch + + Chyba autor jest generalnie nieznany + + + diff --git a/songs/pl/kabaret/Diridindonda.xml b/songs/pl/kabaret/Diridindonda.xml new file mode 100644 index 00000000..ac5edec6 --- /dev/null +++ b/songs/pl/kabaret/Diridindonda.xml @@ -0,0 +1,62 @@ + + + Artur Andrus + + Artur Andrus + Artur Andrus + + + La, la, la, la... + + + Po białym winie, mój Boże, + Czerwone miałam oczy, + On mnie prowadził nad morze + I mierzwił mi warkoczyk. + Splot był słoneczny, słoneczny był Split, + Nie był niegrzeczny i grzeczny nie był zbyt, + Mierzwił, czarował, całował + I śpiewał aż po świt: + + + Diri diri din, di diri din donda, + Ukrast ću te, znaj, moja mala bjonda, + Diri diri din, di diri din donda, + Voljet ću te ja, moja mala bjonda, + La, la, la, la... + + + Wszystkie koszule z rozcięciem, + Bo zarost miał na klatce, + Mówił, że dziadek był księciem, + A zęby ma po matce, + Że ma gitarę i zna basistę Queen, + Ma pod Zadarem rozlewnię białych win + I czy ja w sumie rozumiem, + Co znaczy "diri din"? + + + + Gdy się zjawi wstyd, niczego się nie bój, + Wspomnij sobie Split i ten wielki przebój. + Wspomnieniami leć, po brzegu, po zboczu, + Czasem trzeba mieć winny kolor oczu. + + + I uśmiechaj się do męża, do żony, + Każdy dobrze wie, na co biją dzwony, + Póki w sercu gra, zapomnij o wstydzie + Młodość jeszcze trwa, gdy choć raz na tydzień... + Diri diri din, din, din, + Diri diri don, don, don, + Diri diri din, din, din + Diri diri donda. + + + + Piosenka kabaretowa + + + + + diff --git a/songs/pl/kabaret/Nie_lubie_wampirow.xml b/songs/pl/kabaret/Nie_lubie_wampirow.xml new file mode 100644 index 00000000..5e602685 --- /dev/null +++ b/songs/pl/kabaret/Nie_lubie_wampirow.xml @@ -0,0 +1,67 @@ + + + + Kabaret ,,Potem'' + + Władysław Sikora + Kabaret ,,Potem'' + + + + + Mrok zapada, ciemna noc + Gwiazdy już na niebie świecą + Na dole lampy świecą + Więc światła jest co nieco + Więc czemu to plugastwo pęta się?! + + + Nie lubię wampirów jak jasna cholera + Jak spotkam, natrzaskam po ryju! + To straszna hołota, bo brzydsza od błota + A wszystkim się rzuca na szyję! + Nie lubię wampirów, bo ryje to brzydkie + A zęby ma gorsze od zwierzy + Te zęby wystają — zahaczy w tramwaju + I robią się dziury w odzieży! + + + + Ajajajajaj, jak ja ich nie lubię! + Czemu to łazi takie głupie? + Gębę ma, jakby ukradł małpie + Zęby takie, że w plecy się podrapie + + + Nie lubię wampirów i innych straszydeł + Jak spotkam, łeb wyrwę z płucami! + Bo wyje to w nocy, nie wiadomo po co + I zgrzyta o marmur zębami! + Ja wstaję codziennie na siódmą do pracy + Z siekierą się w nocy nie pętam + Ja wyspać się muszę, lecz kiedyś się wkurzę + Wytłukę w niedziele i święta! + + + + + + + + + + + + + chord positioning + + + KubaOnufryAlek + + + + + Poprawiłem jedną literówkę i dodałem istotne linijki. — nie-Alek + + + diff --git a/songs/Pajaczek.xml b/songs/pl/kabaret/Pajaczek.xml similarity index 83% rename from songs/Pajaczek.xml rename to songs/pl/kabaret/Pajaczek.xml index e1ecd959..59287bee 100644 --- a/songs/Pajaczek.xml +++ b/songs/pl/kabaret/Pajaczek.xml @@ -1,10 +1,10 @@ - + Janusz Kubicki - Trzy dni Tyłem - Trzy dni Tyłem + Trzy Dni Tyłem + Trzy Dni Tyłem @@ -15,14 +15,14 @@ Z jego bowiem sprawą do tej sieci wpadła mucha - Aaa... - Aaa... - Aaa... - Aaa... + Aaa… + Aaa… + Aaa… + Aaa… I tutaj nasz pajączek postąpił wbrew naturze - Miast wrąbać ją na obiad -- on w muszcze się zadurzył + Miast wrąbać ją na obiad — on w muszcze się zadurzył Co było dalej myślcie i każdy jak potrafi Ja o tym wam nie powiem bo nie lubię pornografii diff --git a/songs/Sliczna_higieniczna.xml b/songs/pl/kabaret/Sliczna_higieniczna.xml similarity index 94% rename from songs/Sliczna_higieniczna.xml rename to songs/pl/kabaret/Sliczna_higieniczna.xml index 42bf08ca..d99fe536 100644 --- a/songs/Sliczna_higieniczna.xml +++ b/songs/pl/kabaret/Sliczna_higieniczna.xml @@ -1,12 +1,8 @@ - - - - - - - - + + Agnieszka Osiecka + Wiesław Tupaczewski + Maryla Rodowicz Jestem śliczna higieniczna @@ -82,11 +78,13 @@ Wybrać mnie? - + + + Absolutnie nic (1991) + - diff --git a/songs/pl/kabaret/Spowiedz_u_ksiedza_Bernardyna.xml b/songs/pl/kabaret/Spowiedz_u_ksiedza_Bernardyna.xml new file mode 100644 index 00000000..a1e4f747 --- /dev/null +++ b/songs/pl/kabaret/Spowiedz_u_ksiedza_Bernardyna.xml @@ -0,0 +1,98 @@ + + + + + + + + + + + + Raz do księdza bernardyna + Jedzie czarna limuzyna. + Z niej wysiada ten chłopczyna + I tak spowiedź swą zaczyna: + + + -- Proszę księdza bernardyna, + Całowałem się z dziewczyną. + + + -- O mój chłopcze to rozpusta, + Całowałeś dziewcze w usta. + + + -- Trochę niżej, trochę niżej, + Trochę niżej, proszę księdza, + Trochę niżej, trochę niżej, + Proszę księdza bernardyna. + + + -- O mój chłopcze, nie przeżyję, + Całowałeś dziewcze w szyję. + + + + -- O mój chłopcze, to mnie mierzi, + Całowałeś dziewcze w piersi. + + + + -- O mój chłopcze, to występek, + Całowałeś dziewcze w pępek. + + + + -- O mój chłopcze, co za psoty, + Całowałeś dziewcze w stopy. + + + -- Trochę wyżej, trochę wyżej, + Trochę wyżej, proszę księdza, + Trochę wyżej, trochę wyżej, + Proszę księdza bernardyna. + + + -- O mój chłopcze, co za zbytki, + Całowałeś dziewcze w łydki. + + + + -- O mój chłopcze, czy to złuda? + Całowałeś dziewcze w uda. + + + + -- O mój chłopcze, ja cię zduszę, + Całowałeś dziewcze w pupę. + + + Z drugiej strony, z drugiej strony, + Z drugiej strony proszę księdza, + Z drugiej strony, z drugiej strony, + Proszę księdza bernardyna. + + + + + + + + + + + + + + + chord positioning + + + Michał Korch + + Wersja śpiewana przez 21. WDHy odworzona z pamięci z wersji Józka i z netu, gdzie istnieją setki wersji. Prawdopodobnie różni się trochę. + + + + diff --git a/songs/Wiesiek_idzie.xml b/songs/pl/kabaret/Wiesiek_idzie.xml similarity index 95% rename from songs/Wiesiek_idzie.xml rename to songs/pl/kabaret/Wiesiek_idzie.xml index d5e0055f..cd039ffc 100644 --- a/songs/Wiesiek_idzie.xml +++ b/songs/pl/kabaret/Wiesiek_idzie.xml @@ -1,5 +1,5 @@ - + Andrzej Andrus @@ -14,7 +14,7 @@ Ujrzał lisek przywiędły i blady - I pomyślał -- znowu idzie Wiesiek + I pomyślał — znowu idzie Wiesiek Wiesiek idzie, nie ma na to rady diff --git a/songs/Wiosenna_piesn_radosci.xml b/songs/pl/kabaret/Wiosenna_piesn_radosci.xml similarity index 79% rename from songs/Wiosenna_piesn_radosci.xml rename to songs/pl/kabaret/Wiosenna_piesn_radosci.xml index 111f8a6c..caee46b0 100644 --- a/songs/Wiosenna_piesn_radosci.xml +++ b/songs/pl/kabaret/Wiosenna_piesn_radosci.xml @@ -1,12 +1,12 @@ - - - Kabaret ,,Potem'' - + + Głupia Piosenka + Kabaret „Potem” + Akordy w wersji uproszczonej: +Zwrotka [ad/aE/ad/aE] +Ref: [dGCa/dGCa/dGCa/dGc] Władysław Sikora - Kabaret ,,Potem'' - - + Kabaret „Potem” Idzie sobie wiosna, słychać świergot ptaka @@ -15,10 +15,10 @@ Mnie to nie przeszkadza dalej będzie głupiej - A! A!... już jest wiosna - A! A!... dłuższe dnie - A! A!... kwiaty rosną - A! A!... głupie nie?! + A! A!… już jest wiosna + A! A!… dłuższe dnie + A! A!… kwiaty rosną + A! A!… głupie nie?! Słońce raźniej świeci dym się w polu snuje @@ -42,11 +42,13 @@ - + + + Piosenka kabaretowa + - diff --git a/songs/pl/kabaret/baba_na_psy.xml b/songs/pl/kabaret/baba_na_psy.xml new file mode 100644 index 00000000..d2427cc1 --- /dev/null +++ b/songs/pl/kabaret/baba_na_psy.xml @@ -0,0 +1,47 @@ + + + Artur Andrus + Artur Andrus + Artur Andrus + + + Tak ogólnie to był słaby, chorowity i niewielki + Ale straszny pies na baby, zwłaszcza na XL-ki + Kiedy wreszcie się ożenił, mówił do niej per "kobieto" + Nikt jej nie zna po imieniu, ale wszyscy wiedzą, że to... + + + Baba na psy, baba na psy + Ten świat cały psu na budę. + Baba na psy, baba na psy + Zwłaszcza na rude. + + + Życie tak ją nauczyło, rudy pies czy ruda suka + Wie, co to pradziwa miłość, i cię nie oszuka. + Facet kosę wbije w pierś ci, choćby był rodzonym bratem + Taki z sierścią, czy bez sierści, facet wredny jest a zatem... + + + + Rudy pies ma więcej błysku i polotu niż mężczyzna + ”Głos Wybrzeża” nosi w pysku, choć to Lubelszczyzna + Nigdy w życiu nie miał kaca, nie tłumaczy się kolegom + Że za chwilę musi wracać, bo tam w domu czeka jego... + + + + Kiedyś ludzie uwierzycie w bezgraniczną moc miłości + Pies na baby spędzi życie z kobietą przy kości + A jak odejść będzie trzeba w jakąś wiosnę albo lato + Wezmą ich do psiego nieba, bo zapracowała na to... + + + + + Piosenka kabaretowa + + + + + diff --git a/songs/pl/kabaret/dam_ci_ptaszka.xml b/songs/pl/kabaret/dam_ci_ptaszka.xml new file mode 100644 index 00000000..b34dee0e --- /dev/null +++ b/songs/pl/kabaret/dam_ci_ptaszka.xml @@ -0,0 +1,62 @@ + + + chóry Andrusa + Artur Andrus + + Artur Andrus + Artur Andrus + + + Zamiast bać się czarnej dziury, + lękać się imperium zła, + ludzie, ludzie zakładajmy chóry, + wszędzie gdzie się da. + + + Chór na dworcu, + chór na plaży, + chór upadłych dziennikarzy, + chór noszących okulary, + chór imienia Che Guevary, + chór wyniosłych decydentów, + chór wypożyczalni sprzętów, + chór powracających z gór, + i zwalczających dur. + + + Nie trać czasu na wygłupy, + miałeś chamie czapkę z piór, + ludzie, ludzie zbierzmy się do kupy, + i załóżmy jakiś chór . + + + Chór w komendzie, + chór w szpitalu, + chór hurtowni i detalu, + chór klientów punktu ksero, + mały męski chór hetero, + chór budowy autostrady, + chór turystów spod Hurghady, + i podpierających mur, + chór pradawnych cór. + + + Zamiast wyczekiwać kiedy, + wróg zaczai się u bram, + ludzie, ludzie każdy z nas ma kredyt, + pozostały nam ... + + + O jasny, jasny ptasząt śpiew + W krwawym polu srebrne ptasze, + Dam ci ptaszka jakich mało, + Ej! Przeleciał ptaszek. + + + + Piosenka kabaretowa + + + + + diff --git a/songs/pl/kabaret/jagienka_i_orzechy.xml b/songs/pl/kabaret/jagienka_i_orzechy.xml new file mode 100644 index 00000000..4e787e9e --- /dev/null +++ b/songs/pl/kabaret/jagienka_i_orzechy.xml @@ -0,0 +1,87 @@ + + + Andrzej Waligórski + Trudność: Początkujący +Strojenie: klasyczne (E A D G H e) +Tonacja: G +W oparciu o: http://www.zdjecia.szymczak.waw.pl/szanty/spiewnik_2008-09-07.pdf + Olek Grotowski + Olek Grotowski; Małgosia Zwierzchowska + + + Żyła raz jedna panienka + Która zwała się Jagienka; + Wiele z niej było pociechy, + Bo tłukła pupą orzechy. + Opisał ją, że jest taka, + Sam pan Sienkiewicz w "Krzyżakach". + Wpierw żyła w cnocie jak mniszka, + A potem wyszła za Zbyszka. + + + I wiodło im się chędogo, + Chociaż, niestety, ubogo, + Bo się pokończyły wojny, + Zaczął się okres spokojny, + A rycerz - rzecz znana wszędzie - + Żyje z tego, co zdobędzie. + Ruszył więc Zbyszko konceptem + I wpadł na taką receptę: + + + Przywiesił na bramie druczek, + Że tu się orzechy tłucze + I od każdego orzecha + Zgarniał taryfę do miecha. + Laskowy orzech maleńki + To nie problem dla Jagienki; + Mogła za jednym przysiadem + Stłuc całe pół kilo zadem, + + + A gdy dorwała fistaszka + Zostawała z niego kaszka. + Niewiele też większej troski + Przysparzał jej orzech włoski. + Aż raz przybył jakiś młokos, + Przywożąc z Afryki kokos, + I zwrócił się do Jagusi, + Że mu tę rzecz roztłuc musi. + + + Spłoniła się żwawa młódka, + Wzięła dech, napięła udka, + Pomodliła się przelotnie + I w ten kokos jak nie grzmotnie! + Niestety twarda skorupa + Nawet przy tym nie zachrupa... + Wrzasła Jaguś wniebogłosy, + Podskoczyła pod niebiosy + + + I jak drugi raz przywali! + ...a ten bydlak jak ze stali! + Natomiast biedna dziewczyna + Zrobiła się całkiem sina, + Oddech jej się jakby urwał, + Wymamrotała: - O kurwa... + Potem się zaniosła wyciem + I się pożegnała z życiem! + + + Wniosek: Na ogół umiemy + Rozgryzać własne problemy, + Lecz zagraniczne nowości + Przysparzają nam trudności! + Morał: Tylko wzrost oświaty + Może zmniejszyć nasze straty. + I hasło bezwarunkowo: + Mniej dupą, a więcej głową!!! + + + + + + + + diff --git a/songs/pl/kabaret/krolowa_nadbaltyckich_raf.xml b/songs/pl/kabaret/krolowa_nadbaltyckich_raf.xml new file mode 100644 index 00000000..d5c51db5 --- /dev/null +++ b/songs/pl/kabaret/krolowa_nadbaltyckich_raf.xml @@ -0,0 +1,73 @@ + + + Artur Andrus + Tonacja: F + Artur Andrus + Artur Andrus + + + Słodycz jego ust + Smakowała w tańcu, + Trochę gniótł ją w biust + Gruby, złoty łańcuch + On jej obiecał gwiazdkę z nieba, + Że zestrzeli sztuczny kwiat, + Że po sezonie sprzeda kebab + I że wyruszą razem w świat + + + + Spójrzże na mnie ejże, + No weźże płyńże do mnie w pław + Ja ci się obejrzę! + Królowo Nadbałtyckich Raf + + + + Ona mu co dnia + Muszli sznur nawleka, + Mówi mu, + że ma odlotowy siekacz + Że kilogramów parę zgubi, + Że pieniędzy będzie dość + I że jej mąż go też polubi, + Bo w sumie to w porządku gość + + + + Chociaż trochę żal... + Skończy się, jak zwykle + On odjedzie w dal + czarnym motocyklem + Jeszcze go kiedyś spotka w windzie + I bez emocji da mu w twarz, + Bo przecież wie, że on gdzie indziej + Na setkach innych polskich plaż + + + Spójrzże na mnie ejże, + No weźże płyńże do mnie w pław + Ja ci się obejrzę! + Królowo Podkarpackich Raf + + + Spójrzże na mnie ejże + No weźże płyńże do mnie w pław, + + Ja ci się obejrzę! + Królowo {Świętokrzyskich | Mazowieckich | Warmińsko-Mazurskich | Górnośląskich} Raf... + + + + Ja ci się obejrzę... + Ja ci się obejrzę! + Królowo Białowieskich Raf... + + + + Piosenka kabaretowa + + + + + diff --git a/songs/pl/kabaret/nazywali_go_marynarz.xml b/songs/pl/kabaret/nazywali_go_marynarz.xml new file mode 100644 index 00000000..6e35a3d7 --- /dev/null +++ b/songs/pl/kabaret/nazywali_go_marynarz.xml @@ -0,0 +1,76 @@ + + + Artur Andrus + + Artur Andrus + Artur Andrus + + + + + + Nazywali go Marynarz, + Bo opaskę miał na oku, + Na każdym stoku dziewczyna, + Dziewczyna na każdym stoku. + + + Pochodzi spod Poznania, + Podobno umie wróżyć z kart, + Panny rwie na wiązania, + żatki na długość nart. + + + Caryco mokrego śniegu, + Ratrakiem płynę do ciebie pod prąd, + Dobrze, że stoisz na brzegu, + Bo ja właśnie schodzę na ląd… + + + Nigdy się nie lękał biedy, + I się nie przejmował jutrem. + A jego ratrak był kiedyś, + Zwyczajnym rybackim kutrem. + + + I woził dorsze i śledzie, + Zimą i latem, okrągły rok. + Teraz jak nieraz przejedzie, + Rybami czuć cały stok. + + + + Wszyscy w porcie odetchnęli, + Zwiał, nim się zakończył sezon. + Jeszcze się tam jak żagiel bieli, + Jego czarny kombinezon. + + + Odpłynął pod Ustrzyki, + I przez kobiety wpadł w kłopoty. + Forsę z polowań na orczyki, + Przehulał na antybiotyk. + + + + Jeśli kiedyś go zobaczysz, + Na ratraku w podłym świecie, + To powiedz mu, że w Karpaczu, + Czekają na niego dzieci. + + + I kiedy opuszcza statek, + Żeby się znowu oddać złu, + Każda z dwudziestu siedmiu matek, + Dzieciątku śpiewa do snu. + + + + + + Piosenka kabaretowa + + + + + diff --git a/songs/pl/kabaret/pilem_w_spale_spalem.xml b/songs/pl/kabaret/pilem_w_spale_spalem.xml new file mode 100644 index 00000000..1dd31357 --- /dev/null +++ b/songs/pl/kabaret/pilem_w_spale_spalem.xml @@ -0,0 +1,60 @@ + + + Artur Andrus + + Artur Andrus + Artur Andrus + + + Idą sobie polną drogą + Tacy, którzy dużo mogą, + Trąbka im do marszu gra, + Dyrektory i prezesy + Łase toto na sukcesy + A tymczasem ja: + + + Piłem w Spale, spałem w Pile + I to jak na razie tyle, Heeej, okej! + Znak szczególny mam na ciele: + Wytatuowany jeleń, Heeej, okej! + On ma rogi, gdzie ja mięśnie, + Jak ja schudnę to on wklęśnie. Heeej, okej! + Piłem w Spale, spałem w Pile + I to jak na razie tyle! Heeej, okej! + + + Na co mnie tam do cholery + Te zaszczyty, te ordery + Rauty, gale i te pe, + Mnie do szczęścia nie potrzeba + Ani igrzysk ani chleba, + Ważne tylko, że: + + + + A najgorsi to są młodzi, + Świat przez młodych na psy schodzi + Żadnych marzeń, tylko pic. + Syn studiuje medycynę, + Martwię się tym moim synem, + Nie osiągnął nic: + + + Nie pił w Spale, nie spał w Pile + Życia już zmarnował tyle...Heeej, okej! + Dobrze, że choć na kolanie + Ma tatuowaną łanię... Heeej, okej! + Jak przykucnie to jest hiena + Jednak coś zostaje w genach. Heeej, okej! + W czasie studiów jego matka + Hienę miała na łopatkach. Heeej, okej! Okej! Okej! + + + + Piosenka kabaretowa + + + + + diff --git a/songs/pl/kabaret/plastikowa_biedronko.xml b/songs/pl/kabaret/plastikowa_biedronko.xml new file mode 100644 index 00000000..2dd2cbd5 --- /dev/null +++ b/songs/pl/kabaret/plastikowa_biedronko.xml @@ -0,0 +1,43 @@ + + + + + + Gdy Cię pierwszy raz ujrzałem + Wielkim tirem zajechałaś + Ja się w Tobie zakochałem + A Ty na mnie nie spojrzałaś! + + + Plastikowa Biedronko, Ty moja kochana + Zostań moją żonką błagam Cię na kolanach! + + + Gdy Cię drugi raz ujrzałem + Na sklepowej półce stałaś + Ja Ci list miłosny słałem + A Ty na mnie nie spojrzałaś! + + + + Kiedy w końcu nas kupili + I do domu nas zawieźli + To Ty na mnie spoglądałaś + I się we mnie zakochałaś + + + + To już koniec tej piosenki + Mój Ty widzu ukochany + Jeśli Ci się spodobała + To zaśpiewaj razem z nami! + + + + + Piosenka kabaretowa + + + + + diff --git a/songs/pl/kabaret/wyklad_o_krazeniu_materii.xml b/songs/pl/kabaret/wyklad_o_krazeniu_materii.xml new file mode 100644 index 00000000..d44dab62 --- /dev/null +++ b/songs/pl/kabaret/wyklad_o_krazeniu_materii.xml @@ -0,0 +1,62 @@ + + + Więc była raz sobie żabka + Andrzej Waligórski + Olek Grotowski + Małgorzata Zwierzchowska i Olek Grotowsk + + + ...więc była raz sobie żabka zbudowana z mnóstwa atomów + (bo z atomów wszystko się składa, począwszy od żabek do domów + I do ludzi. Z atomów ty się składasz i twoja ciocia), + Ale wracajmy do żabki. Otóż tę żabkę zjadł bocian, + + + I strawił ją dokładnie paskudny bocian ladaco, + I śliczną, zieloną żabkę przerobił, nie powiem wam na co, + I to coś spadło na ziemię. Była wiosna, świeciło słonko, + I wietrzyk przyniósł z daleka jakieś nieduże nasionko, + + + I usadził je na tej hm... żabce, i przeszedł jeden dzionek + I drugi, i z tego nasionka wylazł od dołu korzonek, + A od góry to znowuż łodyżka, czy – jeśli wolicie – szypułka, + I kwiatek na tej szypułce, a na kwiatku usiadła pszczółka + + + I kroplę miodu wyjęła pyszczkiem czy może łapką, + Nie myśląc wcale o tym, że ten miód był niedawno żabką. + Więc podsumujmy: Część żabki bocianowi wrosła w pierze, + Część jest w ziemi, część w kwiatku, część w miodzie, który + pszczółka właśnie bierze. + + + Lecz nim go zaniesie do ula, to trochę uszczknie czułką + I połknie, i ciut tej żabki stanie się właśnie pszczółką, + A resztę, zawartą w miodzie, zjedzą na śniadanie dzieci, + I tak się początkowa żabka po całym świecie rozleci, + + + A każdy atom w czymś innym, ba! Nawet w innym kraju! + Ale, być może, za milion lat te atomy się znowu spotkają + Zgodnie z rachunkiem prawdopodobieństwa, i po króciutkiej odsapce + Powiedzą: – Toż myśmy przecież już były raz w jednej żabce! + + + I zaczną się ściskać, całować, i będzie wielka laba, + A potem się zastanowią: – Czy my znowu jesteśmy żaba? + Ba! Któż to może wiedzieć? Ten twór, zupełnie nowy, + To może być żaba – rzekotka lub Żabka Alojzy, księgowy, + + + Lub... zresztą któż wszystkie ewentualności wymieni? + O rany... koledzy... to straszne, z czego my jesteśmy zrobieni! + + + + Piosenka kabaretowa + + + + + diff --git a/songs/pl/koledy/gore_gwiazda.xml b/songs/pl/koledy/gore_gwiazda.xml new file mode 100644 index 00000000..13aab213 --- /dev/null +++ b/songs/pl/koledy/gore_gwiazda.xml @@ -0,0 +1,56 @@ + + + Alternatywne chwyty: +Zwrotka: [a C d e] +Ref:[C G C G7 / e a] + Arka Noego + Arka Noego + + + Gore gwiazda Jezusowi w obłoku w obłoku + Józef z Panną asystują przy boku, przy boku + + + Hejże ino dyna, dyna, narodził się Bóg dziecina + W Betlejem, w Betlejem + Hejże ino dyna, dyna, narodził się Bóg dziecina + W Betlejem, w Betlejem + + + Wół i osioł w parze służą przy żłobie, przy żłobie + Huczą, buczą delikatnej osobie, osobie + + + + Pastuszkowie z podarunki przybiegli, przybiegli + W koło szopę o północy obiegli, obiegli + + + + Anioł Pański sam ogłosił te dziwy + Których oni nie słyszeli jak żywi, jak żywi + + + + Anioł Pański kuranciki, kuranciki wycina, wycina + Stąd pociecha dla człowieka jedyna, jedyna + + + + Już Maryja Jezuleńka powiła, powiła + Stąd wesele i pociecha nam miła, nam miła + + + + Gore gwiazda Jezusowi w obłoku, w obłoku + Józef z Panną asystują przy boku, przy boku + + + + + Kolęda + + + + + diff --git a/songs/pl/poezja/Ach_kiedy_znowu_rusza_dla_mnie_dni.xml b/songs/pl/poezja/Ach_kiedy_znowu_rusza_dla_mnie_dni.xml new file mode 100644 index 00000000..5016d027 --- /dev/null +++ b/songs/pl/poezja/Ach_kiedy_znowu_rusza_dla_mnie_dni.xml @@ -0,0 +1,63 @@ + + + Ach, kiedy znowu ruszą… + Edward Stachura + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + Minęło wiele miesięcy + Ale mnie nic nie minęło + Czas dla mnie w miejscu przystanął + Takie jest chłopcy, takie jest piekło + Na odgłos kroków po schodach + Serce wciąż skacze do gardła + Że może to jednak to ona + Ona to piękna moja zagłada + + + Ach, kiedy znowu ruszą dla mnie dni + Noce i dni + I pory roku krążyć zaczną znów + Jak obieg krwi + Lato jesień zima wiosna + Do Boliwii droga prosta + Wiosna lato jesień zima + Nic mi nie przypomina + + + Ni żyć już można mi umrzeć + Wypłakane łzy doszczętnie + Oddycham ledwie i z bólem + Kością mi w gardle staje powietrze + Czy tak już będzie i będzie + Boże mój Boże mój Boże + Zawsze i wszędzie w obłędzie + Boże mój wbiłeś we mnie wszytkie noże + + + + + + + + Adam + + + + + + + + + chords + + + + + Stare Dobre Małżeństwo + + diff --git a/songs/Amsterdam.xml b/songs/pl/poezja/Amsterdam.xml similarity index 84% rename from songs/Amsterdam.xml rename to songs/pl/poezja/Amsterdam.xml index 1905efa6..8efd8d37 100644 --- a/songs/Amsterdam.xml +++ b/songs/pl/poezja/Amsterdam.xml @@ -1,81 +1,66 @@ - - - - Jacques Brel - - Jacques Brel - - Wojciech Młynarski - - - - Jest port wielki jak świat, co się zwie Amsterdam, - Marynarze od lat pieśni swe nucą tam. - Jest jak świat wielki port, marynarze w nim śpią, - Jak daleki śpi fiord, zanim świt zbudzi go. - - Jest port wielki jak świat, marynarze w nim mrą, - Umierają co świt, pijąc piwo i klnąc. - Jest port wielki jak świat, co się zwie Amsterdam, - Marynarze od lat nowi rodzą się tam. - - - Marynarze od lat złażą tam ze swych łajb, - Obrus wielki jak świat czeka ich w każdej z knajp. - Obnażają swe kły skłonne wgryźć się w tę noc, - W tłuste podbrzusza ryb, w spasły księżyc i w noc. - - Do łapczywych ich łap wszystko wpada na żer, - Tłuszcz skapuje kap, kap, z rybich wątrób i serc. - Potem pijani w sztok w mrok odchodzą gdzieś, - A z bebechów ich wkrąg płynie czkawka i śmiech. - - - Jest port wielki jak świat, co się zwie Amsterdam, - Marynarze od lat tańce swe tańczą tam. - Lubią to bez dwóch zdań, lubią to bez zdań dwóch, - Gdy o brzuchy swych pań ocierają swój brzuch. - - Potem buch kogoś w łeb, aż na dwoje mu pękł, - Bo wybrzydzał się kiep na harmonii mdły jęk. - Akordeon też już wydał ostatni dech, - I znów obrus i tłuszcz, i znów czkawka i śmiech. - - - Jest port wielki jak świat, co się zwie Amsterdam, - Marynarze od lat zdrowie pań piją tam. - Pań tych zdrowie co noc piją w grudzień, czy w maj, - Które za złota trzos otwierają im raj. - - A gin, wódka i grog, a grog, wódka i gin - Rozpalają im wzrok, skrzydeł przydają im. - Żeby na skrzydłach tych mogli wzlecieć, hen, tam, - Skąd się smarka na świat i na port Amsterdam. - - - - - - - - - - - - Szanta - - - - - - - chord positioning - - - Kasia Kowalska - - - - - - + + + Jest port wielki jak świat + Jacques Brel + Jacques Brel + Katarzyna Groniec; Piotr Zadrożny; Marian Opania + Wojciech Młynarski + + + Jest port wielki jak świat, co się zwie Amsterdam, + Marynarze od lat pieśni swe nucą tam. + Jest jak świat wielki port, marynarze w nim śpią, + Jak daleki śpi fiord, zanim świt zbudzi go. + Jest port wielki jak świat, marynarze w nim mrą, + Umierają co świt, pijąc piwo i klnąc. + Jest port wielki jak świat, co się zwie Amsterdam, + Marynarze od lat nowi rodzą się tam. + + + Marynarze od lat złażą tam ze swych łajb, + Obrus wielki jak świat czeka ich w każdej z knajp. + Obnażają swe kły skłonne wgryźć się w tę noc, + W tłuste podbrzusza ryb, w spasły księżyc i w noc. + Do łapczywych ich łap wszystko wpada na żer, + Tłuszcz skapuje kap, kap, z rybich wątrób i serc. + Potem pijani w sztok w mrok odchodzą gdzieś, + A z bebechów ich wkrąg płynie czkawka i śmiech. + + + Jest port wielki jak świat, co się zwie Amsterdam, + Marynarze od lat tańce swe tańczą tam. + Lubią to bez dwóch zdań, lubią to bez zdań dwóch, + Gdy o brzuchy swych pań ocierają swój brzuch. + Potem buch kogoś w łeb, aż na dwoje mu pękł, + Bo wybrzydzał się kiep na harmonii mdły jęk. + Akordeon też już wydał ostatni dech, + I znów obrus i tłuszcz, i znów czkawka i śmiech. + + + Jest port wielki jak świat, co się zwie Amsterdam, + Marynarze od lat zdrowie pań piją tam. + Pań tych zdrowie co noc piją w grudzień, czy w maj, + Które za złota trzos otwierają im raj. + A gin, wódka i grog, a grog, wódka i gin + Rozpalają im wzrok, skrzydeł przydają im. + Żeby na skrzydłach tych mogli wzlecieć, hen, tam, + Skąd się smarka na świat i na port Amsterdam. + + + + + + + Szanta + + + + + chord positioning + + + Kasia Tabor + + + Angielska pieśń ludowa: Greensleeves + diff --git a/songs/AniolIDiable.xml b/songs/pl/poezja/Aniol_i_diabel.xml similarity index 56% rename from songs/AniolIDiable.xml rename to songs/pl/poezja/Aniol_i_diabel.xml index 9e9bdfa1..4e0c802e 100644 --- a/songs/AniolIDiable.xml +++ b/songs/pl/poezja/Aniol_i_diabel.xml @@ -1,5 +1,5 @@ - + Pod śliwką Anna Borowa @@ -11,29 +11,29 @@ Idzie diabeł ścieżką krętą pełen myśli złych - Nie pożyczył mu na piwo, nie pożyczył nikt. - ońce smaży go od rana, wiatr gorący dmucha, - Diabeł się z pragnienia słania w ten piekielny upał. + Nie pożyczył mu na piwo, nie pożyczył nikt. + ońce smaży go od rana, wiatr gorący dmucha, + Diabeł się z pragnienia słania w ten piekielny upał. Idzie Anioł wśród zieleni, dobrze mu się wiedzie, - Pełno grosza ma w kieszeni i przyjaciół wszędzie. - Nagle przystanęli obaj na drodze pod śliwą. - Zobaczyli, że im wyszedł browar naprzeciwko. + Pełno grosza ma w kieszeni i przyjaciół wszędzie. + Nagle przystanęli obaj na drodze pod śliwą. + Zobaczyli, że im wyszedł browar naprzeciwko. - Nie ma szczęścia na tym świecie ni sprawiedliwości, + Nie ma szczęścia na tym świecie ni sprawiedliwości, Anioł pije piwo trzecie, Diabeł mu zazdrości. - Postaw kufla mówi Diabeł - Bóg ci wynagrodzi, - My artyści w taki upał żyć musimy w zgodzie. + Postaw kufla mówi Diabeł - Bóg ci wynagrodzi, + My artyści w taki upał żyć musimy w zgodzie. - Na to Anioł zatrzepotał skrzydeł pióropuszem + Na to Anioł zatrzepotał skrzydeł pióropuszem I powiada - dam ci dychę w zamian za twą duszę. - Musiał Diabeł Aniołowi wściekłą duszę sprzedać + Musiał Diabeł Aniołowi wściekłą duszę sprzedać I stworzyli sobie piekło z odrobiną nieba. diff --git a/songs/pl/poezja/Bajka.xml b/songs/pl/poezja/Bajka.xml new file mode 100644 index 00000000..7345630d --- /dev/null +++ b/songs/pl/poezja/Bajka.xml @@ -0,0 +1,64 @@ + + + Piosenka pochodzi z 19 Ogólnopolskiego Studenckiego Przeglądu Piosenki Turystycznej Yapa '94.Gość spiewał ją przygrywając sobie na bembenku.Proszę nie spodziewać się akordów :) + Paweł Nowaczyk + + + Żył raz kiedyś król o wzroku jak nikt na świecie + Lecz było to powodem że kłopot wielki miał + Gdy rano przetarł oczy przez okno z zamku wyjżał + Gdzieś na krańcach świata widział łańcuch wielkich gór + Źle to kiedy coś przeciw królewskiej woli staje + I powstrzymuje bieg jego spojrzenia + Posłał więc król po dwóch swoich synów + A gdy stanęli przed nim do starszeg rzekł: + + + + Gdzieś na krańcach świata są wysokie góry + Idź tam i powiedz mi co za nimi jest + + + + Spełnił wolę ojca pierwszy jego syn + Szedł długo na kamieniach raniąc swoje stopy + Wspinał się wytrwale a gdy na szczycie był + Mógł zobaczyć ogromne spienione fale morza + Gdy wrócił znów do domu w ramiona ojca wpadł + Mów szybko co jest dalej chcę to wiedzieć teraz + A gdy zdyszany syn powiedział co jest za górami + Do drugiego z nich rzecze ojciec tak + + + + Tam gdzie kończy się świat jest ogromne morze + Płyń tam i powiedz mi co też za nim jest + + + + Choć drogę miał trudniejszą ojca prośbę spełnił + Przemykał się swym statkiem przez cisze i sztormy + Aż nadzszedł wreszcie dzień i marynarz z masztu krzyknął + Kapitanie ląd przed nami widzę łańcuch wielkich gór + Więc wyprawił swoje sługi by niosły wieść do króla + A kiedy sam się zjawił jak wryty stanął w drzwiach + Król prawie cały był zżarty przez ciekawość + Usta tylko drgały mówiąc rozkaz ten + + + + + + + + Yapa '94 + + + + chord positioning + + + Adam + + + diff --git a/songs/pl/poezja/Bal.xml b/songs/pl/poezja/Bal.xml new file mode 100644 index 00000000..87102360 --- /dev/null +++ b/songs/pl/poezja/Bal.xml @@ -0,0 +1,53 @@ + + + + W. Wiśniewski + To, że piosenk ma 4 akordy na krzyż nie znaczy że należy ją rąbać jak drewno !!! + Tomek Lewandowski + Tomek Lewandowski + + + + + Moje myśli proszę was, siądźcie jak kruki koło mnie + I z wierszami wraz zapytajcie co słychać u mnie + Ściany przyjaciółki mego domu, jeżeli potraficie + Zapytajcie chociaż raz, jak tam świat mój, jak moje życie + + + + A u mnie wir a u mnie bal + Trwa stypa po miłości + I od toastów huczy stół + I ja jedyny z moich gości + + + + Dziś nic dla ciebie moja pani, nie pogrążysz mnie w żadnym grobie + Odnalazłem dłoń własną dłoń wyciągniętą ku sobie + Rano wyjdę już spokojny, z uśmiechem przyklejonym do twarzy + I rozdam krukom wesołe wiersze na sen, na spełnienie marzeń + + + + + + + + Adam + + + + + + + + + chords + + + + + Miniony Czas + + diff --git a/songs/pl/poezja/Ballada_majowa.xml b/songs/pl/poezja/Ballada_majowa.xml new file mode 100644 index 00000000..ab935893 --- /dev/null +++ b/songs/pl/poezja/Ballada_majowa.xml @@ -0,0 +1,63 @@ + + + + Józef Baran + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + Brnąłem do ciebie maju + Przez mrozy i biele, + Przez śnieżyce i zaspy + I lute zawieje + Przez bezbarwne szpitalne + Korytarze stycznia + W tych korytarzach słońce + Gasło ustawicznie + + + + A teraz maj dokoła maj + Wyświęca ogrody + I cały ja i cały ja + Zanurzony w Jordanie pogody + A teraz maj i maj i maj + Dokoła się święci + Od wonnych bzów szalonych bzów + Wprost w głowie się kręci… + + + + I płyną przeze mnie dmuchawce + Jak dzieciństwa echa + I wielka jest majowa moc + Kiedy niebo się do ziemi uśmiecha + Śpi w twoim wnętrzu chłopiec + W chłopcu pierwszy zachwyt poznaję + Z twoich ziaren wyrosną sady + Strudzonemu pielgrzymką ulżyj + Dodaj wiary + + + + + + + + Czarny blues o czwartej nad ranem + + + + + + chord positioning + + + ADAM + + Ble… a kapodaster i metrum + + diff --git a/songs/Ballada_na_urodziny.xml b/songs/pl/poezja/Ballada_na_urodziny.xml similarity index 63% rename from songs/Ballada_na_urodziny.xml rename to songs/pl/poezja/Ballada_na_urodziny.xml index 29bb4a97..617c2b8a 100644 --- a/songs/Ballada_na_urodziny.xml +++ b/songs/pl/poezja/Ballada_na_urodziny.xml @@ -1,5 +1,5 @@ - + Józef Baran @@ -10,10 +10,10 @@ - + - Jakby nigdy nic brodzę już w smudze cienia + Jakby nigdy nic brodzę już w smudze cienia I widzę jak zachodzi słonko ojca i matki @@ -23,7 +23,7 @@ - + @@ -37,7 +37,7 @@ - + @@ -51,10 +51,10 @@ - + - + Adam diff --git a/songs/pl/poezja/Ballada_o_Dzikim_Zachodzie.xml b/songs/pl/poezja/Ballada_o_Dzikim_Zachodzie.xml new file mode 100644 index 00000000..c62d01b1 --- /dev/null +++ b/songs/pl/poezja/Ballada_o_Dzikim_Zachodzie.xml @@ -0,0 +1,86 @@ + + + Wojciech Młynarski + Tadeusz Suchocki + Wojciech Młynarski + + + Potwierdzają to setne przykłady + Że westerny wciąż jeszcze są w modzie + Wysłuchajcie więc państwo ballady + O tak zwanym najdzikszym zachodzie + Miasto było tam jakich tysiące + Wokół preria i skały naprzeciw + Jak gdzie indziej świeciło tam słońce + Marli starcy, rodziły się dzieci + + + I tym tylko od innych różni się ta ballada + Że w tym mieście gdzieś na prerii krańcach + Na jednego mieszkańca jeden szeryf przypadał + Jeden szeryf na jednego mieszkańca + + + Konsekwencje ten fakt miał ogromne + Bo nikt w mieście za spluwę nie chwytał + I od dawna już każdy zapomniał + Jak wygląda prawdziwy bandyta + Choć finanse poniekąd leżały + Gospodarka i przemysł był na nic + Ale każdy, czy duży, czy mały + Czuł się za to bezpieczny bez granic + + + + Jeśli państwa historia ta nudzi + To pocieszcie się tym, że nareszcie + Którejś nocy krzyk ludzi obudził + Bank rozbity, bandyci są w mieście + Dobrzy ludzie na próżno wołacie + Nikt nie wstanie za spluwę nie chwyci + Skoro każdy świadomość zatracił + Czym się różnią od ludzi bandyci + + + A tym tylko od innych różni się ta ballada + Że w tym mieście gdzieś na prerii krańcach + Na każdego człowieka nagle strach upadł blady + Od szeryfa do zwykłego mieszkańca + + + Potwierdzają to setne przykłady + Że westerny wciąż jeszcze są w modzie + Wysłuchaliście państwo ballady + O tak zwanym najdzikszym zachodzie + Miasto było tam jakich tysiące + Ludzkie w nim krzyżowały się drogi + Lecz nie wszystkim świeciło tam słońce + Bo bandyci krążyli bez trwogi + + + Wyciągnijmy więc morał w tej balladzie ukryty + Gdy nie grozi nam żadne rififi + Że czasami najtrudniej rozpoznać bandytę + + Gdy dokoła sami szeryfi + + + + + + + + Western + + Wojciech Młynarski - Prawie Całość CD_2 + + + + + chords + + + Adam + + + diff --git a/songs/Ballada_o_Janku_Wisniewskim.xml b/songs/pl/poezja/Ballada_o_Janku_Wisniewskim.xml similarity index 97% rename from songs/Ballada_o_Janku_Wisniewskim.xml rename to songs/pl/poezja/Ballada_o_Janku_Wisniewskim.xml index c2409b75..c536c631 100644 --- a/songs/Ballada_o_Janku_Wisniewskim.xml +++ b/songs/pl/poezja/Ballada_o_Janku_Wisniewskim.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/poezja/Ballada_o_arenie_cyrkowej.xml b/songs/pl/poezja/Ballada_o_arenie_cyrkowej.xml new file mode 100644 index 00000000..28a19152 --- /dev/null +++ b/songs/pl/poezja/Ballada_o_arenie_cyrkowej.xml @@ -0,0 +1,67 @@ + + + + Józef Baran + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + Na koniec rozwiązano teatr + Więc cała w sztucznych ogniach teraz + Kręci się arena cyrkowa + Naszych czasów metafora + + + Nic tu na pewno wszystko na niby + Małpka jest w cyrku idolem + Karzeł podkręca szatańską korbkę + Arena toczy się kołem + + + Niczym piłeczki w palcach żonglerów + Duszyczki nasze wirują w koło + Życie przestało być sztuką + I stało się sztuczką cyrkową + + + Dwie siostry syjamskie prawda kłamstwo + Wbiegają w zwinnych podskokach + Nikt nie odróżni jednej od drugiej + Są w jednakowych trykotach + + + Bóg gdyby nawet w krzaku ognistym + Pojawił się między nami + Mówilibyśmy że to magik + Kolejną sztuczką nas mami + + + Lecz dokąd można w cyrku żyć + Pytamy stojąc na głowie + Słyszymy drwiący błazna śmiech + I to jedyna odpowiedź + + + + + + + Adam + + + + + + + + + chords + + + + Makatki + + diff --git a/songs/pl/poezja/Ballada_o_czesku_piekarzu.xml b/songs/pl/poezja/Ballada_o_czesku_piekarzu.xml new file mode 100644 index 00000000..c2d70907 --- /dev/null +++ b/songs/pl/poezja/Ballada_o_czesku_piekarzu.xml @@ -0,0 +1,50 @@ + + + Wolna Grupa Bukowina + + + + + + Chleba takiego jak ten od Cześka + Nie kupisz nigdzie nawet w Warszawie + Bo Czesiek piekarz nie piekł lecz tworzył + Bochny jak z mąki słonecznej kołacze + Kłaniali mu się ludzie gdy wyjrzał + Przez okno w kitlu łyknąć powietrza + A kromkę masłem smarując każdy + Mówił: nad chleby ten chleb od Cześka + + + chleb się chlebie chleb się chlebie + bo nad chleb być może co! + chleb się chlebie chleb się chlebie + niech ci nigdy nie zabraknie + drożdży wody rąk i ziarna (mruczał Czesiek tak noc w noc) + + + A o porankach chlebem pachnących + Gdy pora idzie spać na piekarzy + Zaczerwienione przymykał oczy + Czesiek, i siadał z dłutem przy stole + Ciągle te same oczy i trochę + Za duży nos w drewnie cierpliwym + Pieściły ręce dziesiątki razy + W poranki świeżym chlebem pachnące + + + + nikt takich słów jak miasto miastem + nie znał i źle się dzieje mówili + na obraz czerniał Czesiek razowca + kruszał podobnie bułce zleżałej + + + Gdy go znaleźli na pasku z wojska + dłuto jak w bochen wbite miał w garści + i nie wie nikt co Cześka wzięło + lecz śpiewa każdy jak miasto miastem + + + + diff --git a/songs/balladaoczlowiekuzkwiatami.xml b/songs/pl/poezja/Ballada_o_czlowieku_z_kwiatami.xml similarity index 52% rename from songs/balladaoczlowiekuzkwiatami.xml rename to songs/pl/poezja/Ballada_o_czlowieku_z_kwiatami.xml index 04a3ce38..cc605e49 100644 --- a/songs/balladaoczlowiekuzkwiatami.xml +++ b/songs/pl/poezja/Ballada_o_czlowieku_z_kwiatami.xml @@ -1,70 +1,70 @@ - - - - Krzysztof Daukszewicz - - Krzysztof Daukszewicz - Krzysztof Daukszewicz - - - - - Zbierał człowiek na łące kwiaty pięknie pachnące, - Kwiaty pięknie kwitnące zrywał człowiek na łące, - Piękne kwiaty, hej, na łące, piękne kwiaty. - - - Najpierw były rumianki, białe jak śnieg jest biały, - Człowiek stał wśród rumianków, człowiek biały był cały, - Wśród rumianków, cały biały, wśród rumianków. - - - Druga łąka zielona, hej, zielona tam trawa, - Człowik rzucił rumianek, jął zielonym się stawać, - Hej, zielonym, hej, się stawać, hej, zielonym. - - - Ach, cudowna jest zieleń, pięknie żyć wśród zieleni, - Jednak nudzi się człowiek, życie pragnie odmienić, - Hej, odmienić, życie pragnie, hej, odmienić. - - - Hej, zakwitły już maki, maki piękne czerwone, - Hej, kuszące są maki, człowiek ruszył w ich stronę, - Hej, w czerwone, ruszył w stronę, hej, w czerwone. - - - Maki zwiędły i zbladły, koniec ich jakże marny, - Człowiek czerwień porzucił, żeby stanąć przy czarnym, - Żeby stanąc, hej, przy czarnym, żeby stanąć. - - - Idzie człowiek po łące, zrywa kwiaty pachnące, - Wypatrując na polu, spokojniejszych kolorów, - Hej, kolorów, spokojniejszych, hej, kolorów. - - - - - - - - - - - Prośba - Poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - - + + + + Krzysztof Daukszewicz + + Krzysztof Daukszewicz + Krzysztof Daukszewicz + + + + + Zbierał człowiek na łące kwiaty pięknie pachnące, + Kwiaty pięknie kwitnące zrywał człowiek na łące, + Piękne kwiaty, hej, na łące, piękne kwiaty. + + + Najpierw były rumianki, białe jak śnieg jest biały, + Człowiek stał wśród rumianków, człowiek biały był cały, + Wśród rumianków, cały biały, wśród rumianków. + + + Druga łąka zielona, hej, zielona tam trawa, + Człowik rzucił rumianek, jął zielonym się stawać, + Hej, zielonym, hej, się stawać, hej, zielonym. + + + Ach, cudowna jest zieleń, pięknie żyć wśród zieleni, + Jednak nudzi się człowiek, życie pragnie odmienić, + Hej, odmienić, życie pragnie, hej, odmienić. + + + Hej, zakwitły już maki, maki piękne czerwone, + Hej, kuszące są maki, człowiek ruszył w ich stronę, + Hej, w czerwone, ruszył w stronę, hej, w czerwone. + + + Maki zwiędły i zbladły, koniec ich jakże marny, + Człowiek czerwień porzucił, żeby stanąć przy czarnym, + Żeby stanąc, hej, przy czarnym, żeby stanąć. + + + Idzie człowiek po łące, zrywa kwiaty pachnące, + Wypatrując na polu, spokojniejszych kolorów, + Hej, kolorów, spokojniejszych, hej, kolorów. + + + + + + + + + + + Prośba + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/poezja/Ballada_o_dziewczynie_co_pila_gorace_mleko.xml b/songs/pl/poezja/Ballada_o_dziewczynie_co_pila_gorace_mleko.xml new file mode 100644 index 00000000..9a8dbd29 --- /dev/null +++ b/songs/pl/poezja/Ballada_o_dziewczynie_co_pila_gorace_mleko.xml @@ -0,0 +1,36 @@ + + + Agnieszka Osiecka + Katarzyna Sobolewska + Andrzej Poniedzielski + + + Są małe stacje wielkich kolei, nieznane jak obce imiona + Małe stacje wielkich kolei, jakiś napis i lampa zielona + Na takiej stacji dawno już temu, z daleka jadąc, z daleka + Widziałem dziewczynę w niebieskim szaliku, jak piła gorące mleko + + + Teraz tamtędy już nigdy nie jeżdżę, a miasto moje daleko + Lecz myślę czasem o tamtej dziewczynie, jak piła gorące mleko. + I nieraz chciałbym aby tu była, może to miałoby sens. + + Jak ona śmiesznie to mleko piła, gapiąc się na mnie spod rzęs. + > + + + Mam swoje sprawy, inne podróże i nie tamtędy mi droga. + Lubię ulice wesołe i długie i kolorowe światła na rogach. + Może ma chłopca tamta dziewczyna, a może wybrała się w świat. + Albo po prostu może jest głupia jak jej siedemnaście lat. + + + Z resztą to przecież nie ma znaczenia, mieszkam naprawdę daleko. + Lecz myślę czasem o tamtej dziewczynie, jak piła gorące mleko. + I nieraz chciałbym aby tu była, może to miałoby sens. + + Jak ona śmiesznie to mleko piła, gapiąc się na mnie spod rzęs. + + + + diff --git a/songs/Ballada_o_krzyzowcu.xml b/songs/pl/poezja/Ballada_o_krzyzowcu.xml similarity index 87% rename from songs/Ballada_o_krzyzowcu.xml rename to songs/pl/poezja/Ballada_o_krzyzowcu.xml index b04841fd..905a5048 100644 --- a/songs/Ballada_o_krzyzowcu.xml +++ b/songs/pl/poezja/Ballada_o_krzyzowcu.xml @@ -1,5 +1,5 @@ - + Mirosław Hrynkiewicz @@ -19,10 +19,10 @@ Żebyś przybył doń z daleka. - Na na na - Na na na na na na na na - Na na na na na na na na - Na na na na na na na na na na na na + Na na na + Na na na na na na na na + Na na na na na na na na + Na na na na na na na na na na na na Wolniej, wolniej, wstrzymaj konia. @@ -78,7 +78,7 @@ - Rozstrzygnięcia google testu: W Jeruzalem byłem dzisiaj, nie wczoraj, z Mahometem wino pije, nie piją.Większość w google teście uważa, że 'strzegą go wysokie wieże', ale jednocześnie 'po coż niszczyć białe wieże' - ja robię tak, jak u nas się śpiewa - czyli strzegą mury, niszczyć wieże.----------Poprawiłem tekst zgodnie oryginalnym nagraniem (Adam) --- Dzięki, Adasiu. Poprawiłem literówki (Pan na wielką, etc.), uzgodniłem liczbę 'na na' (Onufry) + Rozstrzygnięcia google testu: W Jeruzalem byłem dzisiaj, nie wczoraj, z Mahometem wino pije, nie piją.Większość w google teście uważa, że 'strzegą go wysokie wieże', ale jednocześnie 'po coż niszczyć białe wieże' - ja robię tak, jak u nas się śpiewa - czyli strzegą mury, niszczyć wieże.----------Poprawiłem tekst zgodnie oryginalnym nagraniem (Adam) — Dzięki, Adasiu. Poprawiłem literówki (Pan na wielką, etc.), uzgodniłem liczbę 'na na' (Onufry) diff --git a/songs/Ballada_o_rozy.xml b/songs/pl/poezja/Ballada_o_rozy.xml similarity index 74% rename from songs/Ballada_o_rozy.xml rename to songs/pl/poezja/Ballada_o_rozy.xml index bf616c65..739e52af 100644 --- a/songs/Ballada_o_rozy.xml +++ b/songs/pl/poezja/Ballada_o_rozy.xml @@ -1,5 +1,5 @@ - + J. Koprowski @@ -14,9 +14,9 @@ Ubrany czarno niedorzeczny W kwitnącym znalazł się ogrodzie Przepłoszył dłonią ptasie śpiewy - Zatoczył się od mocnych woni - A kiedy róży dojrzał krzewy - Bardzo głęboko się ukłonił + Zatoczył się od mocnych woni + A kiedy róży dojrzał krzewy + Bardzo głęboko się ukłonił Patrzał i oto od spojrzenia @@ -24,9 +24,9 @@ I z ciszy liścia z tego cienia Pąsowa nagle popatrzała Dwa pąki dwojga piersi strzegły - Uśmiech jak róża się rozwinął - Wargi gorąco krwią nabiegły - I rosę z płatków spił jak wino + Uśmiech jak róża się rozwinął + Wargi gorąco krwią nabiegły + I rosę z płatków spił jak wino Drapieżnie bronią kolce dzikie @@ -35,9 +35,9 @@ W mięsistość płonnie się zanurzył Trwało to dłużej od westchnienia - A potem umknął niby złodziej - Zginął jak plama w światłocieniach - Dziwny nieboszczyk czy przechodzień + A potem umknął niby złodziej + Zginął jak plama w światłocieniach + Dziwny nieboszczyk czy przechodzień diff --git a/songs/Ballada_o_swietym_Mikolaju.xml b/songs/pl/poezja/Ballada_o_swietym_Mikolaju.xml similarity index 71% rename from songs/Ballada_o_swietym_Mikolaju.xml rename to songs/pl/poezja/Ballada_o_swietym_Mikolaju.xml index 2bfdbcc8..686fbac5 100644 --- a/songs/Ballada_o_swietym_Mikolaju.xml +++ b/songs/pl/poezja/Ballada_o_swietym_Mikolaju.xml @@ -1,5 +1,5 @@ - + Andrzej Wierzbicki @@ -10,19 +10,19 @@ W rozstrzelonej chacie - Rozpaliłem ogień + Rozpaliłem ogień Z rozwalonych pieców - Pieśni wyniosłem węgle - Naciągnąłem na drzazgi gontów + Pieśni wyniosłem węgle + Naciągnąłem na drzazgi gontów Błękitną płachtę nieba - Będę malował od nowa + Będę malował od nowa Wioskę w dolinie Święty Mikołaju Opowiedz jak tu było - Jakie pieśni śpiewano + Jakie pieśni śpiewano Gdzie się pasły konie @@ -32,8 +32,8 @@ Z wypalonych źrenic Tylko deszcze płyną - Ej ślepcze nauczę swoje dziecko po łemkowsku - Będziecie razem żebr + Ej ślepcze nauczę swoje dziecko po łemkowsku + Będziecie razem żebr W malowanych wioskach diff --git a/songs/pl/poezja/Ballada_o_trzezwym_diable.xml b/songs/pl/poezja/Ballada_o_trzezwym_diable.xml new file mode 100644 index 00000000..98a06875 --- /dev/null +++ b/songs/pl/poezja/Ballada_o_trzezwym_diable.xml @@ -0,0 +1,103 @@ + + + + Krzysztof Daukszewicz + W śpiewniku Daukszewicza pod koniec każdej czwartej linijki zamiast CG jest E. Ale mi brzmi lepiej tak.W tymże śpiewniku brak zwrotki o ministrze wyznań, której oryginalność budzi zatem moją wątpliwość. + Krzysztof Daukszewicz + Krzysztof Daukszewicz + + + + + Pod wieczór dobrze było gdy + Na polu pełnym zbóż + Z diabłem się spotkał Dobry Pan + I Jego Anioł Stróż + + + Diabeł był zdrowy jak ten rydz + Po prostu czart na schw + Anioł zalany w drobny mak + Na nogach ledwo st + Uuu… Na nogach ledwo st + + + Chłop gdy usłyszał Pana głos + Poprosił ich na stronę + I poczęstował z flachy wprost + Świeżutkim samogonem + + + Pociągnął zdrowo Anioł Stróż + I flachę Panu d + A czart do gardła nie lał nic + A czart się tylko śmi + Ha ha… A czart się tylko śmi + + + Robotnik co z roboty szedł + Przez drogi asfaltowe + Wyciągnął z torby chleba pół + I tyleż wyborowej + + + Pociągnął zdrowo Anioł Stróż + I flachę Panu d + A czart do gardła nie lał nic + A czart się tylko śmi + Ha ha… A czart się tylko śmi + + + Ksiądz proboszcz który wracał z mszy + Prywatnym samochodem + Zaprosił na plebanię i + Ugościł starym miodem + + + Pociągnął zdrowo Anioł Stróż + I flachę Panu d + A czart do gardła nie lał nic + A czart się tylko śmi + Ha ha… A czart się tylko śmi + + + Minister wyznań witał się + Z Panem jak z własnym bratem + A potem piękny toast wzniósł + Wytwornym ,,Araratem'' + + + Pociągnął zdrowo Anioł Stróż + I flachę Panu d + A czart do gardła nie lał nic + A czart się tylko śmi + Ha ha… A czart się tylko śmi + + + A rano gdy ich dopadł kac + W przydrożnym wiejskim rowie + Anioł do Pana rzecze tak + Mój dobry Panie powiedz + + + Czy diabeł sobie wszył czy co + Że trzeźwym musi b + Pan odpowiedział spójrz na kraj + On już nie musi pić. + + + + + + + + + + chord positioning + + + Onufry + + Zgodność ze śpiewnikiem "Piosenki z Życiorysem", poza akordami na końcu czwartej linijki. + + diff --git a/songs/Balonik.xml b/songs/pl/poezja/Balonik.xml similarity index 59% rename from songs/Balonik.xml rename to songs/pl/poezja/Balonik.xml index c2129b4f..85a01a36 100644 --- a/songs/Balonik.xml +++ b/songs/pl/poezja/Balonik.xml @@ -1,31 +1,31 @@ - + Bułat Okudżawa - acze dziewczynka, - Balon uciekł jej, - Ludzie mówią -- nie płacz, + acze dziewczynka, + Balon uciekł jej, + Ludzie mówią — nie płacz, A balonik hen. - acze dziewczyna, - Chłopca trzeba jej, - Ludzie mówią -- nie płacz, + acze dziewczyna, + Chłopca trzeba jej, + Ludzie mówią — nie płacz, A balonik hen. - acze kobieta, - Mąż porzucił ją, - Ludzie mówią -- nie płacz, + acze kobieta, + Mąż porzucił ją, + Ludzie mówią — nie płacz, A balonik hen. - acze staruszka, - Życie moje wróć! + acze staruszka, + Życie moje wróć! A balonik wrócił diff --git a/songs/Bar_na_stawach.xml b/songs/pl/poezja/Bar_na_stawach.xml similarity index 88% rename from songs/Bar_na_stawach.xml rename to songs/pl/poezja/Bar_na_stawach.xml index 17b8aec9..228a9b14 100644 --- a/songs/Bar_na_stawach.xml +++ b/songs/pl/poezja/Bar_na_stawach.xml @@ -1,5 +1,5 @@ - + Pieśń o przemijaniu Wojciech Bellon @@ -10,7 +10,7 @@ - + @@ -18,13 +18,13 @@ Jeszcze się w nocy kołysze miasto 8,15 na stawach bar - Bramę otwiera wchodzimy tedy + Bramę otwiera wchodzimy tedy Ja i Hnatowicz Jan - + @@ -109,7 +109,7 @@ - Akordy rozmieszczene tylko w pierwszej zwrotce.Teoretycznie instrumental po każdej zwrotce. + Akordy rozmieszczene tylko w pierwszej zwrotce. Teoretycznie instrumental po każdej zwrotce. Onufry -> Głównie to poprawiłem Wojciecha Bellona na wielką literę. Dodałem też kategorię i wydawnictwo. Jakie jest metrum? diff --git a/songs/pl/poezja/Bar_w_Beskidzie.xml b/songs/pl/poezja/Bar_w_Beskidzie.xml new file mode 100644 index 00000000..6d64c777 --- /dev/null +++ b/songs/pl/poezja/Bar_w_Beskidzie.xml @@ -0,0 +1,80 @@ + + + Lej się chmielu + Wiesław Jarosz + Piosenka opisuje bar "Leśny" w Krempnej, który, wg zeznań świadków, nie ma już tego klimatu, co ongi. + Wiesław Jarosz + EKT Gdynia + + + + La la la… + + Jeśli chcesz z gardła kurz wypłukać + Tu każdy wskaże ci drogę + W bok od przystanku PKS--u + W prawo od szosy asfaltowej + Kuszą napisy ołówkiem kopiowym + Na drzwiach od dziesiątej otwartych + Dziś polecamy kotlet mielony + I lokal kategorii czwartej + + + + Lej się chmielu, lej się chmielu + Nieś muzyko po bukowym lesie + Panna Zosia ma w oczach dwa nieba + Trochę lata z nowej beczki przyniesie + + + + La la la… + W środku chłopaki rzucają łaciną + O sufit i o cztery ściany + Dym z extra mocnych strzela jak szampan + Bledną obrusy lniane + Za to wieczorem gdy lipiec duszny + Okna otworzy na oścież + Gwiazdy wpadają do pełnych kufli + Poobgryzanych jak paznokcie + + + + La la la… + Kiedy chłopaki na nogach z waty + Wracają po mokrej kolacji + Świat się jak okręt morski kołysze + Gościniec dziwnie ślimaczy + A czasem któryś ze strachem na wróble + Pogada o polityce + Jedynie cerkiew marszczy zgorszona + Szorstkie od gnotów lice + + + + + La la la… + + + + + + + + Ja Stawiam + Piosenka turystyczna górska + + + + + chord positioning + + + Onufry + Adam + Onufry + + Adam-->Poprawiłem akordy i ułożenia wstawek instrumentalnych +Onufry -> Poprawiłem strukturę, żeby refren był refrenem. + + diff --git a/songs/pl/poezja/Bartne.xml b/songs/pl/poezja/Bartne.xml new file mode 100644 index 00000000..7b9b9458 --- /dev/null +++ b/songs/pl/poezja/Bartne.xml @@ -0,0 +1,83 @@ + + + + Bogusław Diduch + + Mirosław Czyżykiewicz; Bogusław Diduch + Ostatnia wieczerza w karcznie przeznaczonej do rozbiórki + + + + + Na zachodzie słońce jeszcze się toczy + I butelka nad ławą rzuca cień + Wojtek Bellon zagląda mi w oczy + W Bartnem pod bacówką gaśnie dzień + Mówią mi, że gdy gram jego song + Głos mi drży i do oczu płyną łzy + Wojtek przez głośniki wypiek Cześka sławi + Jego pieśń ponad góry niosą mgły + + + Utonęły w zieleni gór i puchu nieba + W morzu liści i w wełnianym swetrze z traw + Moja pamięć moje myśli niezbadane + Zaklęte w melodii ruskich chat + Gdzieś na krańcu świata gdzie nie widać piekieł + Tylko niebo na ikonach srebrem lśni + Święty spokój ofiaruje nam Mikołaj + Święty spokój w jego skośnych oczach tkwi + + + Dobry Pan mnie wiedzie wyboistą drogą + Dobry Pan życzenia moje zna + W górach myśli poszybują ku pradawnym bogom + A w kopułach cerkwi wieczność trwa + Na tej drodze różne słowa już padały + Słowa złe i dobre, miłość szła i śmierć + Tylko buki w górach niewzruszone stoją + Jakby chciały się do nieba wznieść + + + Nikt nie spieszy się, nie zżyma, nie złorzeczy + Życie musi mieć swój smak i stały takt + Wprawdzie życia tutaj nie da się zaprzeczyć + Każde słowo znaczy to, co znaczyć ma + Nie ma miejsca na spojrzenia ukradkowe + Tutaj ludziom musisz patrzeć prosto w twarz + Tutaj serce na wszystko masz gotowe + Tu na szczytach blisko nieba wiecznie trwasz + + + + + + + + + + + + + + + + + chord positioning + + AnonimAdamOnufry + + + + + + Anonim-->Zaznaczyc, ze recytacja, moze podzielic zwrotki na bloko 4-linijkowe…, Czy akordy w recytacji sš ok? +--------Adam--> poprawiłem akordy w recytacji, refrenie i wstawiłem ozdobniki instrumentalne +--------Onufry-> Poprawiłem literówki ortograficzne w nazwie zespołu, rozmieściłem akordy, ustandaryzowałem zapis ozdobników, wstawiłem metrum +--------Onufry-> Poprawiłem imię autora, wyłaczyłem recytację z numeracji zwrotek. + + + + + Piosenka turystyczna górska + diff --git a/songs/Basn.xml b/songs/pl/poezja/Basn.xml similarity index 70% rename from songs/Basn.xml rename to songs/pl/poezja/Basn.xml index ab34d2e5..82802f81 100644 --- a/songs/Basn.xml +++ b/songs/pl/poezja/Basn.xml @@ -1,5 +1,5 @@ - + Maciek Służała Adam F. poleca kapodaster na 2. progu. @@ -16,17 +16,17 @@ W zaklętym sadzie barwny sen - W wieczornym tchnieniu szepty gwiazd + W wieczornym tchnieniu szepty gwiazd Zielony księżyc pośród drzew Niebieskie jabłka z kosza kradł. - Zaśnij, zaśnij, już ucichł miasta gwar - Zaśnij, zaśnij, w zegarze starym drzemie czas - Śnij o wiośnie, śnij o lesie, - W ptasim locie szukaj słów, - Śnij o morzu, o bezkresie, - Daj marzeniom mknąć bez tchu. + Zaśnij, zaśnij, już ucichł miasta gwar + Zaśnij, zaśnij, w zegarze starym drzemie czas + Śnij o wiośnie, śnij o lesie, + W ptasim locie szukaj słów, + Śnij o morzu, o bezkresie, + Daj marzeniom mknąć bez tchu. @@ -35,7 +35,7 @@ W zaklętym sadzie barwny sen - W szeptaniu gwiezdnym stara baśń + W szeptaniu gwiezdnym stara baśń Malutki rycerz odpiął miecz, Z ogromnym smokiem w kości gra. @@ -47,7 +47,7 @@ W zaklętym sadzie barwny sen - W bezmiarze liści wiatru szum + W bezmiarze liści wiatru szum W głębokim lesie szary wilk Małej dziewczynki strzeże snu. @@ -59,16 +59,16 @@ W zaklętym sadzie barwny sen - W obłoku mglistym skrzaci ci + W obłoku mglistym skrzaci ci W zamczysku mrocznym stary król Biednej sierotce nuci pieśń. - Śnij o wiośnie, śnij o lesie, - Niech się wije senna nić. - Śnij o morzu, o bezkresie - Niech marzeniom starczy sił... + Śnij o wiośnie, śnij o lesie, + Niech się wije senna nić. + Śnij o morzu, o bezkresie + Niech marzeniom starczy sił… W zaklętym sadzie... @@ -81,7 +81,7 @@ Adam-->wszystkie wstawki instrumentalne i układ dopieszczony końca -Zespół Krążek (http://krazek.art.pl/) uważa swoją drugą nazwę Tak czy Owak za przejściową i nietrafioną, respektujemy to -- Alek +Zespół Krążek (http://krazek.art.pl/) uważa swoją drugą nazwę Tak czy Owak za przejściową i nietrafioną, respektujemy to — Alek Onufry -> Zmieniłem myślniki na Entery diff --git a/songs/pl/poezja/Bawitko.xml b/songs/pl/poezja/Bawitko.xml new file mode 100644 index 00000000..58942a07 --- /dev/null +++ b/songs/pl/poezja/Bawitko.xml @@ -0,0 +1,92 @@ + + + + Andrzej Poniedzielski + + Andrzej Poniedzielski + Andrzej Poniedzielski + + + + + Wagą zabraną Temidzie + Bawimy się w sprawiedliwość + Na jednej szali zło kładziemy + + Na drugiej dobro i litość + + + + Wszyscy się cieszą z równowagi + Gardła zdzieramy w wiwatach + Wszyscy się cieszą z równowagi + + Wskazówkę puszczamy po latach + + + + + Oj nieładnie człowieku nieładnie + + Oj nieładnie człowieku brzydko + + Ty się całe życie tylko bawisz + + + Czasem sobie zmieniasz bawitko + + + + Księgami bawimy się w mądrość + Zabawa to dla upartych + Z ksiąg budujemy nauki i domy + + A przecież księgi to karty + + + + Raz huczą brawa, raz działa + Już się gubimy w erratach + Na ile to mądre na ile starczy + + Ktoś nas osądzi po latach + + + + + Jest jeszcze jedna zabawa + Też popularna choć nienowa + Do niej potrzebne jest dwoje ludzi + + I słowa, i słowa, i słowa + + + + Słowami bawimy się w miłość + owa składamy w kwiatach + Potem przyprószą je liście jesieni + + + Odgrzebujemy po latach + + + + + + + + + Adam + + Adam -> Ostatni refren bis=2 ale nie wiem jak to zrobić z kodu dla refrenu więć musisz się to zrobić sam + + + + chord positioning + + + + + 13 łatwych utworów tanecznych + + diff --git a/songs/Bedziesz_moja_pania.xml b/songs/pl/poezja/Bedziesz_moja_pania.xml similarity index 97% rename from songs/Bedziesz_moja_pania.xml rename to songs/pl/poezja/Bedziesz_moja_pania.xml index 01cba51d..26659872 100644 --- a/songs/Bedziesz_moja_pania.xml +++ b/songs/pl/poezja/Bedziesz_moja_pania.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/poezja/Bellonika_z_miastem.xml b/songs/pl/poezja/Bellonika_z_miastem.xml new file mode 100644 index 00000000..fd4296dc --- /dev/null +++ b/songs/pl/poezja/Bellonika_z_miastem.xml @@ -0,0 +1,65 @@ + + + + Krzysztof Jurkiewicz + W akordach na stronie zespołu zamiast d-mol występuje D7-dur, ale to chyba jakaś literówka…W refrenie na stronie, tak jak w tekście w śpiewniku, w ostatniej linijce jest słowo bezpieczny - zawsze śpiewaliśmy spokojny, i IMHO lepiej brzmi, ale tu zapisuję zgodnie z oryginałem. + Krzysztof Jurkiewicz + Słodki Całus od Buby + + + + + Która to znów piosenka + Dla której Joanny + Za oknem pierwszy tramwaj + Oddzwonił nowy dzi + Która to noc bezsenna + Która kartka biała + Na wątłym płatku niesie + Jak ołów ciężką treść + + + Za oknem wielkiego miasta szum + I uciec by się chciało + W ramionach Twoich jak w górach + Bezpiecznie schronić się + Za oknem wielkiego miasta chłód + I tylko Twoje ciało + W półmroku obiecuje + Spokojny ciepły sen + + + Która to znowu wojna + Za jaką znów sprawę + Co nic nam nie przyniesie + Prócz paru smutnych dat + Która to noc bezsenna + Prześcieradło blade + Całując Twoje włosy + Powoli zmieniam świat + + + + + + + + + + Słodki Całus od Buby + Poezja śpiewana + + + + chord positioning + + + OnufryAdam + + + + Adam--> Poprawiłem zlewkę "Iuciec", tekst zgodnie z kasetą czyli dla mnie oryginałem (Do Taboreta tu też drugi refren dwa razy:) +Onufry- > Wszystkie 'Ty' i pochodne wielką literą. + + + diff --git a/songs/pl/poezja/Beskid.xml b/songs/pl/poezja/Beskid.xml new file mode 100644 index 00000000..df84ba60 --- /dev/null +++ b/songs/pl/poezja/Beskid.xml @@ -0,0 +1,65 @@ + + + Andrzej Wierzbicki + + + A w Beskidzie rozzłocony buk + A w Beskidzie rozzłocony buk + Będę chodził bukowiną z dłutem w ręku + By w dziewczęcych twarzach uśmiech rzeźbić + Niech nie płaczą j + Niech się cieszą po kapliczkach moich dróg. + + + W Beskidzie malowany cerkiewny dach + W Beskidzie zapach miodu w bukowych pniach + Tutaj wracam gdy ruda jesień + Na przełęcze swój tobół niesie + Słucham bicia dzwonów w przedwieczorny czas + + + W Beskidzie malowany wiatrami dom + W Beskidzie tutaj słowa inaczej brzmią + Kiedy krzyczę w jesienną ciszę + Kiedy wiatrem szeleszczą liście + Kiedy wolność się tuli w ciepło moich rąk + Gdy jak źrebak się tuli do mych rąk. + + + A w Beskidzie zamyślony czas + A w Beskidzie zamyślony czas + Będę chodził gór poddaszem + By zerwanych marzeń struny + Przewiązywać w niespokojne dłonie drzew + Niech mi grają na rozstajach moich dróg. + + + + + + + + + Onufry + + + + + + + + chord positioning + + + + + + Andrzej Wierzbicki + Andrzej Wierzbicki + + + + YAPA - turystyczne przeboje, cz. 1 + Piosenka turystyczna górska + Występują dość różne wersje tekstu tej piosenki. Postarałem się dobrać skrzyżowanie najpopularniejszego z najsensowniejszym - acz niestety nie słyszałem nagrania, więc trudno mi stwierdzić, na ile trafiłem w oryginał.Występują też różne wersje akordów. U nas gra się takie, częściej spotykana jest tonacja G-dur zamiast C-dur.W refrenie występuje drugi głos. + diff --git a/songs/pl/poezja/Beskid_jesienia.xml b/songs/pl/poezja/Beskid_jesienia.xml new file mode 100644 index 00000000..ae54b385 --- /dev/null +++ b/songs/pl/poezja/Beskid_jesienia.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + Już pustką świecą hale, samotny gnie się świerk, + Na granitowej skale, zmęczony rogacz legł. + Słoneczko ledwie wstaje a już się kładzie spać, + Już tylko wiatr po polanie zaczyna liście gnać. + + + O, już się złoci hora, gromadki szuka ptak, + Już to jesienna pora i bliskiej zimy znak + + + Buki jak ogień gorzą, modrzewiom żółknie włos, + Rano wschodzącą zorzę liliowy wita wrzos. + Szałasy smutne stoją, ogień nie trzaska w nich, + Pasterze już nie poją w źródłach owieczek swych. + + + + Ucichła już trąbita, juhasów zamilkł śpiew. + Tylko na skalnych szczytach wiatr śpiewa pośród drzew. + Z południa Tatry dumne patrzą na Beskid swój, + A chmurki jak rozumne zdobią go w złoty strój. + + + + + + + + + + + + + + Onufry + + + + + + diff --git a/songs/Bez_slow.xml b/songs/pl/poezja/Bez_slow.xml similarity index 92% rename from songs/Bez_slow.xml rename to songs/pl/poezja/Bez_slow.xml index abf35153..2a501129 100644 --- a/songs/Bez_slow.xml +++ b/songs/pl/poezja/Bez_slow.xml @@ -1,5 +1,5 @@ - + Chodzą ulicami ludzie Wojciech Bellon Alternatywne chwyty: @@ -25,8 +25,8 @@ Wbrew pozorom ostatni refren śpiewa się tylko do połowy!!! Tam zaduma w wiatru graniu, Tam powietrze ma inny smak. Porzuć kroków rytm na bruku, - Spróbuj -- znajdziesz, jeśli szukać - Zechcesz -- nowy świat, własny świat. + Spróbuj — znajdziesz, jeśli szukać + Zechcesz — nowy świat, własny świat. Płyną ludzie miastem szarzy, diff --git a/songs/Biala_basn.xml b/songs/pl/poezja/Biala_basn.xml similarity index 59% rename from songs/Biala_basn.xml rename to songs/pl/poezja/Biala_basn.xml index 123e3e18..f4a8a506 100644 --- a/songs/Biala_basn.xml +++ b/songs/pl/poezja/Biala_basn.xml @@ -1,5 +1,5 @@ - + Mirosław Ostrycharz @@ -9,27 +9,27 @@ - W osypanych śnieżnym puchem - Koleinach leśnych dróg - Wznieca wiatr nagłym podmuchem - Burze lśniących bielą smug. + W osypanych śnieżnym puchem + Koleinach leśnych dróg + Wznieca wiatr nagłym podmuchem + Burze lśniących bielą smug. - Świt przejrzysty, wklęty w ciszę, - Zatopiony w śnieżną jaśń, - Blaskiem słońca w brzozach pisze + Świt przejrzysty, wklęty w ciszę, + Zatopiony w śnieżną jaśń, + Blaskiem słońca w brzozach pisze - Oszronioną, mroźną baśń. + Oszronioną, mroźną baśń. Tak się dziwnie w oczach mieni - Oszadziały, cichy las... + Oszadziały, cichy las… Pójdźmy w odmęt tej przestrzeni, W której dotąd brakło nas. - Niech nas mrozem wiatr owionie... + Niech nas mrozem wiatr owionie… Nim zaginie po nas ślad, Razem z nami w snach utonie Zbłękitniały, śnieżny świat. @@ -38,7 +38,7 @@ Zagubimy się w dąbrowie, W białych słońcach, w siwych mgłach I nikt o nas się nie dowie, - Gdzieśmy byli, w jakich snach... + Gdzieśmy byli, w jakich snach… diff --git a/songs/pl/poezja/Biala_lokomotywa.xml b/songs/pl/poezja/Biala_lokomotywa.xml new file mode 100644 index 00000000..239c7716 --- /dev/null +++ b/songs/pl/poezja/Biala_lokomotywa.xml @@ -0,0 +1,67 @@ + + + + Edward Stachura + Piosenka występuje też w innych wykonaniach, np. SDMu czy oryginalnym Stachury. Wtedy oczywiście inne chwyty. + Marek Gałązka + Marek Gałązka i Grupa Balladowa "Po Drodze" + + + + + Sunęła poprzez czarne łąki + Sunęła przez spalony las + Mijała bram zwęglone szczątki + Płynęła przez wspomnienia miast + Biała lokomotywa + Skąd wzięła się w krainie śmierci + Ta żywa zjawa, istny cud + Tu pośród pustych marnych wierszy + Tu gdzie już tylko czarny kurz + Biała lokomotywa + + + Ach czyj, ach czyj to jest + Tak piękny hojny gest + Kto mi tu przysłał ją + + Bym się wydostał stąd + Ach któż, no któż to może b + Beze mnie kto nie umie ż + I bym zmartwychstał błaga mnie + + By mnie obudził jasny zew + Białej lokomotywy + + + Suniemy poprzez czarne łąki + Suniemy przez spalony las + Mijamy bram zwęglone szczątki + Płyniemy przez wspomnienia miast + Z białą lokomotywą + Gdzie brzęczą pszczoły, pluszcze rzeka + Gdzie słońca blask i cienie drzew + Do tej, co na mnie w życiu czeka + Do życia znowu nieś mnie ni + Biała lokomotywo + + + + + + + + OnufryAdamAlek + + Adam-->poprawiłem akordy, rozkład refrenów i drobiazgi po lewej + + + + chord positioning + + + + + (1980 - 1988) + Poezja śpiewana + diff --git a/songs/Bialy_kaftanik.xml b/songs/pl/poezja/Bialy_kaftanik.xml similarity index 89% rename from songs/Bialy_kaftanik.xml rename to songs/pl/poezja/Bialy_kaftanik.xml index efb3f4c1..9dcd98ab 100644 --- a/songs/Bialy_kaftanik.xml +++ b/songs/pl/poezja/Bialy_kaftanik.xml @@ -1,5 +1,5 @@ - + Maciek Służała, Darek Brzuska i spółka Piosenka ta powstała w efekcie harcerskiej głupawki w pewnej harcerskiej harcówce w 1983 roku. @@ -30,7 +30,7 @@ Ach...Tak chciałbym zw biały kaftanik mi - I leczyć się, leczyć się, leczyć się, na mózg + I leczyć się, leczyć się, leczyć się, na mózg @@ -61,7 +61,7 @@ Ty wciąż jesteś wariat lekarz się postarzał Nie rozumiesz tego bo ci myśleć strach - I pójdziesz przed siebie w asyście psychiatrów + I pójdziesz przed siebie w asyście psychiatrów Twą drogę wyznaczy korytarzy szlak @@ -72,7 +72,7 @@ - Ach... Jak dobrze zw biały kaftanik mi I leczyć się, leczyć się, leczyć się, na mózg + Ach... Jak dobrze zw biały kaftanik mi I leczyć się, leczyć się, leczyć się, na mózg
@@ -92,5 +92,5 @@ Zielony mundur brak - parodia + Piosenka harcerska - parodia diff --git a/songs/Bieszczady.xml b/songs/pl/poezja/Bieszczady.xml similarity index 97% rename from songs/Bieszczady.xml rename to songs/pl/poezja/Bieszczady.xml index 5e9fa12f..ac1bf87b 100644 --- a/songs/Bieszczady.xml +++ b/songs/pl/poezja/Bieszczady.xml @@ -1,5 +1,5 @@ - + Andrzej Starzec diff --git a/songs/pl/poezja/Bieszczadzkie_anioly.xml b/songs/pl/poezja/Bieszczadzkie_anioly.xml new file mode 100644 index 00000000..cc37bc78 --- /dev/null +++ b/songs/pl/poezja/Bieszczadzkie_anioly.xml @@ -0,0 +1,84 @@ + + + + Adam Ziemianin + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + Anioły są takie ciche, zwłaszcza te w Bieszczadach + Gdy spotkasz takiego w górach, wiele z nim nie pogadasz + Najwyżej na ucho ci powie, gdy będzie w dobrym humorze + Że skrzydła nosi w plecaku nawet przy dobrej pogodzie + + + Anioły są całe zielone, zwłaszcza te w Bieszczadach + W trawie łatwo się kryją i w opuszczonych sadach + W zielone grają ukradkiem, nawet karty mają zielone + Zielone mają pojęcie, a nawet zielony kielonek + + + Anioły bieszczadzkie, bieszczadzkie anioły + Dużo w was radości i dobrej pogody + Bieszczadzkie anioły, anioły bieszczadzkie + Gdy skrzydłem cię dotkną, już jesteś ich bratem + + + Anioły są całkiem samotne, zwłaszcza te w Bieszczadach + W kapliczkach zimą drzemią, choć może im nie wypada + Czasem taki anioł samotny zapomni, dokąd ma lecieć + I wtedy całe Bieszczady mają szaloną uciechę + + + Anioły, bieszczadzkie, bieszczadzkie anioły + Dużo w was radości i dobrej pogody + Bieszczadzkie anioły, anioły bieszczadzkie + Gdy skrzydłem cię trącą, już jesteś ich bratem + + + Anioły są wiecznie ulotne, zwłaszcza te w Bieszczadach + Nas też czasami nosi po ich anielskich śladach + One nam przyzwalają i skrzydłem wskazują drogę + I wtedy w nas się zapala wieczny bieszczadzki ogień + + + Anioły, bieszczadzkie, bieszczadzkie anioły + Dużo w was radości i dobrej pogody + Bieszczadzkie anioły, anioły bieszczadzkie + Gdy skrzydłem cię musną, już jesteś ich bratem + + + + + + + + + + + Taboret na bazie korekty Michała + Poprawione wg śpiewnika ze Szkocji - Krzysiek + + + Jakie metrum? +Trzeba to przegrać z gitarą. + + + + + + chords + + + BieszczadyGóry + + + + + + Bieszczadzkie anioły + Piosenka turystyczna górska + diff --git a/songs/pl/poezja/Blues_dla_malej.xml b/songs/pl/poezja/Blues_dla_malej.xml new file mode 100644 index 00000000..bc1cdd9a --- /dev/null +++ b/songs/pl/poezja/Blues_dla_malej.xml @@ -0,0 +1,60 @@ + + + Adam Ziemianin + Krzysztof Myszkowski + Live in Łowicz + Stare Dobre Małżeństwo + + + Wystukaj po torach do mnie list + Wtedy naprawdę nie wyjedziesz cała + Niech będzie w nim lokomotywy gwizd + Tylko to zrób jeszcze dla mnie Mała + Wystukaj po torach do mnie list + Choćby w alfabecie Morse'a + Moja ulica jeszcze twardo śpi + Jeśli tak chcesz w liście zostań + + + A mogliśmy Mała razem łąką iść + Świt witać po kolana w rosie + A mogliśmy Mała razem piwo pić + Dom nasz zamienić na sto pociech + A mogliśmy Mała konie kraść + Z niebieskiego boskiego pastwiska + A mogliśmy Mała w środku lata + Zbudować słoneczną przystań + + + Napisz od serca do mnie list + I zamieszkaj w tym liście cała + Niech śmiechu dużo będzie w nim + Obiecaj mi to dzisiaj Mała + Napisz od serca do mnie list + Lecz proszę nie wysyłaj go nigdy + W szufladzie zamknij go na klucz + Niech czeka wciąż lepszych dni + + + + + + + + Onufry + + + + + chord positioning + + + + + + + + + Poezja śpiewana + + diff --git a/songs/pl/poezja/Blues_niepotrzebnych_powrotow.xml b/songs/pl/poezja/Blues_niepotrzebnych_powrotow.xml new file mode 100644 index 00000000..945bc8f3 --- /dev/null +++ b/songs/pl/poezja/Blues_niepotrzebnych_powrotow.xml @@ -0,0 +1,61 @@ + + + Elżbieta Adamiak + + + Dopala się świeca, maleńki płomień drży + Powoli zza pieca wychodzą szare sny + Zacięła się płyta, adapter się biedzi + Stukają w podłogę zmęczeni sąsiedzi + Więc idź już, nie wracaj, nie przeszkadzaj mi + + + + + + Nie było cię długo, przestałam liczyć dni + Wolałeś tę drugą, kwiaciarkę z vis a vis + Zapomniał korytarz, jak brzmią twoje kroki + Nie poznał cię nawet twój fotel głęboki + Więc po co tu siedzisz, dziwisz nocne ćmy + + + + + + Posłuchaj, latarnie wołają cię zza mgły + Nie patrz tak na mnie, wiesz przecież, gdzie są drzwi + Potrafię bez ciebie oddychać i śpiewać + Choć coraz bezbarwniej jest ptakom na drzewach + A tamte dwie krople, to wcale nie są łzy + + + + + + + + + + + + Onufry + + + + + chord positioning + + + + + + + + + + + + + + diff --git a/songs/pl/poezja/Bombonierka.xml b/songs/pl/poezja/Bombonierka.xml new file mode 100644 index 00000000..b75dee18 --- /dev/null +++ b/songs/pl/poezja/Bombonierka.xml @@ -0,0 +1,78 @@ + + + + Basia Stępniak-Wilk + + + Grzegorz Turnau, Basia Stępniak-Wilk + + + + + A gdy patrzę tak + Śmiejesz się + Śmiejesz się + + + Dzień pogania noc świtem purpurowym + Ty jak czarny kot kończysz łowy + Nic mi do twych zdrad, chociaż dziwi, że + Ich gorzkawy smak ciągle kusi cię + + + A gdy patrzę tak, śmiejesz się: + Nic mi do twych zdrad + Ale wiem + + + Choć papierków po cukierkach + Tu i ówdzie ślad + Marzy ci się bombonierka + Taka jak ja + Niby nic, a jednak zerkasz + Jak się dostać do pudełka + Odkryć tajemnicę słodką + Delikatnie zdjąć złotko + + + Choć papierków po cukierkach + Ślad i tam i tu + Marzy ci się bombonierka + Istny cud + Żeby tak nasycić się + Ale wciąż w zapasie mieć + I rozgryzać tę zagadkę + Tę zagadkę + Po ostatnią czekoladkę + + + Noc pogania dzień szafirowym zmierzchem + Tobie kocich gier nie dość jeszcze + Nic mi do twych zdrad, chociaż dziwi, że + Ostry kolor kłamstw nie razi cię + + + + + + + + + + + + + + Inna + + + chord positioning + + + Onufry + + + + + + diff --git a/songs/pl/poezja/Broadway.xml b/songs/pl/poezja/Broadway.xml new file mode 100644 index 00000000..17b0597a --- /dev/null +++ b/songs/pl/poezja/Broadway.xml @@ -0,0 +1,77 @@ + + + + Krzysztof Daukszewicz + W śpiewniku Daukszewicza ciut inne chwyty, ale tam chwyty nawet nie zgadzają się ze sobą (te nad tekstem inne niż te nad nutami), że nie wspomnę o melodii, więc zostawiam tak, jak u nas się śpiewa. +Ponoć refreny są różne, np. zaczynają się od słów ,,Cały Broadway'', ,,Ach ten Broadway'' itp., trzeba by je sprawdzić ze śpiewnikiem — Alek + Krzysztof Daukszewicz + Krzysztof Daukszewicz + + + + + Po ulicy przetaczał się bajecznie barwny tłum + Migotała reklama jakiejś wody ,,Silver moon'' + I drapacze drapały wierzchołkami brzuchy chmur + Kiedy dołem przejeżdżał gigantyczny wozów sznur + + + Taki Broadway to Broadway z kolorowych pięknych kart + Taki Broadway to Broadway którym się zachwyca świat + + + A na rogu ulicy może być czterdzieści dwa + Stary murzyn wirtuoz na gitarze bluesa grał + Tak namiętnie jak tylko czarny umie bluesa grać + Całe serce w to włożył żeby innym ludziom dać + + + Taki Broadway ten Broadway z kolorowych pięknych kart + Taki Broadway ten Broadway którym się zachwyca świat + + + Czasem ktoś się zatrzymał i na życie quartra dał + Czasem słyszał jak mówią, że ten czarny dobrze gra + Wtedy ruszał do baru bo już nie mógł tego znieść + Że nie czują przechodnie jaka w bluesach drzemie treść + + + + Aż któregoś popołudnia kiedy grał za marny grosz + Stanął przy nim z gitarą niepozorny biały gość + I choć na tej gitarze prawie jak amator grał + To wyśpiewał genialnie to co czarny w sercu miał + + + + + + + A gdy skończył się koncert stary Murzyn go zaprosił + Na kolejne popołudnie i te bluesy na dwa głosy + Potem spytał go jeszcze skąd znasz me niedole + I usłyszał odpowiedź ,,bracie I'm from Poland'' + + + + + + + + + Bieda + + + + + chord positioning + + + OnufryAdamAlekKrzysiek + + Adam-->Różne tam takie słówka, żeby dało się po ludzku śpiewać. + + Sprawdzane wg śpiewnika Daukszewicza, ale ten śpiewnik jest tragiczny...Refreny mają różne początki, czasem występuje jakieś Ech, albo coś, ale chyba nie warto mówić, że to nie refren i pisać za każdym razem. + + + diff --git a/songs/Bukowina_I.xml b/songs/pl/poezja/Bukowina_I.xml similarity index 63% rename from songs/Bukowina_I.xml rename to songs/pl/poezja/Bukowina_I.xml index 67cc8798..fc66d475 100644 --- a/songs/Bukowina_I.xml +++ b/songs/pl/poezja/Bukowina_I.xml @@ -1,5 +1,5 @@ - + Wojciech Bellon @@ -11,26 +11,26 @@ W Bukowinie góry w niebie postrzępionym W Bukowinie rosną skrzydła świętym bukom - Minął dzień wiatrem z hal rozdzwoniony - I nie mogę znaleźć Bukowiny + Minął dzień wiatrem z hal rozdzwoniony + I nie mogę znaleźć Bukowiny I nie mogę znaleźć - Chociaż gwiazdy mnie prowadzą ciągle szukam + Chociaż gwiazdy mnie prowadzą ciągle szukam W Bukowinie zarośnięte echem lasy W Bukowinie liść zieleni się i złoci - Śpiewa czasem banior ciemnym basem - I nie mogę znaleźć Bukowiny + Śpiewa czasem banior ciemnym basem + I nie mogę znaleźć Bukowiny I nie mogę znaleźć - Choć już szukam godzin krocie i dni krocie + Choć już szukam godzin krocie i dni krocie W Bukowinie deszczem z chmur opada Okrzyk ptasi zawieszony w niebie - Nocka gwiezdną gadkę górom gada - I nie mogę znaleźć Bukowiny + Nocka gwiezdną gadkę górom gada + I nie mogę znaleźć Bukowiny I nie mogę znaleźć - Choć mnie woła Bukowina wciąż do siebie + Choć mnie woła Bukowina wciąż do siebie diff --git a/songs/Bukowina_II.xml b/songs/pl/poezja/Bukowina_II.xml similarity index 50% rename from songs/Bukowina_II.xml rename to songs/pl/poezja/Bukowina_II.xml index a9498e7b..b4f643fb 100644 --- a/songs/Bukowina_II.xml +++ b/songs/pl/poezja/Bukowina_II.xml @@ -1,5 +1,5 @@ - + Wojciech Bellon @@ -9,37 +9,37 @@ - Dość wytoczyli bań próżnych przed domy kalecy - Żyją jak żyli, bezwolni, głusi i ślepi + Dość wytoczyli bań próżnych przed domy kalecy + Żyją jak żyli, bezwolni, głusi i ślepi Nie współczuj, szkoda łez i żalu Bezbarwni są, bo chcą być szarzy - Ty wyżej, wej bądź i dalej - Niż ci, co się wyzbyli marzeń. + Ty wyżej, wej bądź i dalej + Niż ci, co się wyzbyli marzeń. - Niechaj zalśni Bukowina w barwie malin - Niechaj zabrzmi Bukowina w wiatru szumie - Dzień minął, dzień minął, nadszedł wieczór + Niechaj zalśni Bukowina w barwie malin + Niechaj zabrzmi Bukowina w wiatru szumie + Dzień minął, dzień minął, nadszedł wieczór Świece gwiazd zapalił - Siadł przy ogniu, pieśń posłyszał i umilkł. + Siadł przy ogniu, pieśń posłyszał i umilkł. - Po dniach zgiełkliwych, po nocach wyłożonych brukiem - W zastygłym szkliwie gwiazd neonowych próżno szukać + Po dniach zgiełkliwych, po nocach wyłożonych brukiem + W zastygłym szkliwie gwiazd neonowych próżno szukać Tego, co tylko zielonością Na palcach zaplecionych drzemie - Rozewrzyj dłonie mocniej, mocniej - Za kark chwyć słońce, sięgnij w niebo. + Rozewrzyj dłonie mocniej, mocniej + Za kark chwyć słońce, sięgnij w niebo. Odnaleźć musisz, gdzie góry chmurom dłoń podają - Gdzie deszcz i susza, gdzie lipce, październiki, maje + Gdzie deszcz i susza, gdzie lipce, październiki, maje Stają się rokiem, węzłem życia. Twój dom bukowy zawieszony - U nieba pnia kroplą żywicy - Błękitny, złoty i zielony. + U nieba pnia kroplą żywicy + Błękitny, złoty i zielony. @@ -64,5 +64,5 @@ Bukowina - poezja śpiewana + Poezja śpiewana diff --git a/songs/pl/poezja/Burza.xml b/songs/pl/poezja/Burza.xml new file mode 100644 index 00000000..e40db868 --- /dev/null +++ b/songs/pl/poezja/Burza.xml @@ -0,0 +1,78 @@ + + + + Maciej Służała + + Maciej Służała + Krążek + + + + + Znów chmury zmęczone przysiadły na grani + Ciężkimi brzuchami pieszczą górskie grzbiety + Już drzewa jęknęły smagnięte wichrami + I trawy przerażone knują głośne szepty + + + Umilkły już ptaki w gniazdach cicho siedzą + Świat czeka w napięciu z licem pociemniałym + Zbudziły się biesy, z driadami tańczą + Już błysk srebrnej nici zalśnił oniemiały + + + Pierwsze ciężkie krople dopadły już ziemi + Jak ślepi mocarze chcą powalić wszystko + Już strumienie wody leją się za nimi, + Szumiąc potokami spływają z gór szybko + + + Nowa srebrna nić przecięła czerń nieba + + Echo przerażone ryczy dzikim grzmotem + Drzewa w wiatru graniu szamoczą się z deszczem + Jak rycerze antyczni zmagając się z sobą + + + Jak turkot karety znów grzmot się przewalił + I znów atakują kropli ciężkich fale + A te, co dopadły straciwszy swą siłę + Strumieniem wezbranym z góry odpływają + + + I fala za falą i w dół jak lawina, + Lecz sił już nie starcza ni kroplom ni wiatrom + + I nagle blask słońca przez chmury przenika + + I tęcza w deszczowych drobinkach jak flaga + + + + I cisza i spokój i znów świergot ptaka + I słońce szaleje wśród zroszonej trawy + I drzewa co z włosów wytrzepują krople + I wszystko się cieszy po deszczowej kurzawie + + I cisza + + + + + + + OnufryKrzysiek + + + + Sprawdzono wg tekstu ze strony krążka + + + chord positioning + + + + + Baśn + Poezja śpiewana + diff --git a/songs/Buty.xml b/songs/pl/poezja/Buty.xml similarity index 98% rename from songs/Buty.xml rename to songs/pl/poezja/Buty.xml index 9cc0eb1b..ae4c4203 100644 --- a/songs/Buty.xml +++ b/songs/pl/poezja/Buty.xml @@ -1,5 +1,5 @@ - + Bułat Okudżawa diff --git a/songs/Byloby_milo.xml b/songs/pl/poezja/Byloby_milo.xml similarity index 96% rename from songs/Byloby_milo.xml rename to songs/pl/poezja/Byloby_milo.xml index b00cd700..73469c27 100644 --- a/songs/Byloby_milo.xml +++ b/songs/pl/poezja/Byloby_milo.xml @@ -1,5 +1,5 @@ - + Tomasz Wachnowski diff --git a/songs/Chory_na_wyobraznie.xml b/songs/pl/poezja/Chory_na_wyobraznie.xml similarity index 81% rename from songs/Chory_na_wyobraznie.xml rename to songs/pl/poezja/Chory_na_wyobraznie.xml index cbb2e05d..f9391710 100644 --- a/songs/Chory_na_wyobraznie.xml +++ b/songs/pl/poezja/Chory_na_wyobraznie.xml @@ -1,5 +1,5 @@ - + Vincent van Gogh Mariusz Zadura Metrum zmienne - w zwrotce na 4, w refrenie na 3 @@ -14,28 +14,28 @@ - + - + Dawno już w mieście drwił z niego każdy Pośmiewiskiem był ludziom na co dzień Ot wariat chory na wyobraźnię - Wiecznie w drodze spóźniony przechodzień + Wiecznie w drodze spóźniony przechodzień Dokąd idziesz pytali go bliscy Z tego bracie to trzeba się leczyć A on brał tekturową walizkę - I wychodził swym obrazom naprzeciw mówiąc + I wychodził swym obrazom naprzeciw mówiąc Idę tam gdzie bezmiar błękitu Światłocienie cyprysów przy drodze - Feerią barw każdy ranek rozkwita + Feerią barw każdy ranek rozkwita Chociaż wiem że do celu nie dojdę @@ -45,22 +45,22 @@ - + - + Gdy malował świat milkł jak zaklęty Kurczył się w skrawek płótna na ramach A on pieścił je jak pierś kobiety - W siedmiobarwnych tęcz kreskach i plamach + W siedmiobarwnych tęcz kreskach i plamach Kiedy skończył wpatrywał się w ciszę By natchnieniem nasycić znów duszę A gdy już dał się marszandom wykpić - Pił noc całą by z brzaskiem wyruszyć mówiąc + Pił noc całą by z brzaskiem wyruszyć mówiąc @@ -69,12 +69,12 @@ - + - + @@ -92,6 +92,6 @@ Onufry - Nie mam pojęcia, gdzie to jest nagrane... + Nie mam pojęcia, gdzie to jest nagrane… diff --git a/songs/Chyba_juz_czas_wracac_do_domu.xml b/songs/pl/poezja/Chyba_juz_czas_wracac_do_domu.xml similarity index 69% rename from songs/Chyba_juz_czas_wracac_do_domu.xml rename to songs/pl/poezja/Chyba_juz_czas_wracac_do_domu.xml index b72d22f0..ab72b85f 100644 --- a/songs/Chyba_juz_czas_wracac_do_domu.xml +++ b/songs/pl/poezja/Chyba_juz_czas_wracac_do_domu.xml @@ -1,5 +1,5 @@ - + Adam Drąg @@ -11,28 +11,28 @@ Zawinięte w kłębek drogi - Liczą na twój czas + Liczą na twój czas Zamieniony w wielkie słońce - Dzień powoli gasł + Dzień powoli gasł - Chyba już czas wracać do domu + Chyba już czas wracać do domu W słońcu się chyli wierzbiny liść - Chyba już czas wracać do domu + Chyba już czas wracać do domu W ciszy powrotu tak iść i iść O zielonej mokrej ziemi - ośniej śpiewa wiatr + ośniej śpiewa wiatr By najkrótszą drogę wybrać - Wróży z liści kart + Wróży z liści kart Światło dnia już pobłądziło - W drzewach i na ścieżce + W drzewach i na ścieżce Nie okryty mrokiem został - Tylko wyraz ,,jeszcze'' + Tylko wyraz ,,jeszcze'' diff --git a/songs/Cichutko.xml b/songs/pl/poezja/Cichutko.xml similarity index 51% rename from songs/Cichutko.xml rename to songs/pl/poezja/Cichutko.xml index 8354c4f3..8e91798e 100644 --- a/songs/Cichutko.xml +++ b/songs/pl/poezja/Cichutko.xml @@ -1,5 +1,5 @@ - + @@ -9,19 +9,19 @@ - Cichutko, pomaleńku - Gdzie wiatr w gałęziach drzew - Dogania ciszę ptasich gniazd + Cichutko, pomaleńku + Gdzie wiatr w gałęziach drzew + Dogania ciszę ptasich gniazd - Gdzie gwiazd milczących dal - Odległa, niewiadoma - Ukryta w bezmiar swej piękności + Gdzie gwiazd milczących dal + Odległa, niewiadoma + Ukryta w bezmiar swej piękności - Cichutko, pomaleńku - Przez świata dziwny świat - Nie zważaj na okrutne oczy dnia + Cichutko, pomaleńku + Przez świata dziwny świat + Nie zważaj na okrutne oczy dnia diff --git a/songs/pl/poezja/Czarny_blues_o_czwartej_nad_ranem.xml b/songs/pl/poezja/Czarny_blues_o_czwartej_nad_ranem.xml new file mode 100644 index 00000000..a34694a4 --- /dev/null +++ b/songs/pl/poezja/Czarny_blues_o_czwartej_nad_ranem.xml @@ -0,0 +1,77 @@ + + + + Adam Ziemianin + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + Czwarta nad ranem, może sen przyjdzie + + Może mnie odwiedzisz + Czwarta nad ranem może sen przyjdzie + + Może mnie odwiedzisz + + + Czemu Cię nie ma na odległość ręki + Czemu mówimy do siebie listami + Gdy Ci to śpiewam u mnie pełnia lata + Gdy to usłyszysz będzie środek zimy + + + Czemu się budzę o czwartej nad ranem + I włosy twoje próbuję ugłaskać + Lecz nigdzie nie ma twoich włosów + Jest tylko blada nocna lampka + Łysa śpiewaczka + + + Śpiewamy bluesa bo czwarta nad ranem + Tak cicho żeby nie zbudzić sąsiadów + Czajnik z gwizdkiem świruje na gazie + Myślałby kto że rodem z Manhattanu + + + + Herbata czarna myśli rozjaśnia + A list twój sam się czyta + Że można go śpiewać, za oknem mruczą bluesa + Topole z Krupniczej + + + I jeszcze strażak wszedł na solo + Ten z Mariackiej wieży + Jego trąbka jak księżyc biegnie nad topolą + Nigdzie się jej nie spieszy + + + Już piąta, może sen przyjdzie + + Może mnie odwiedzisz + Już piąta, może sen przyjdzie + + Może mnie odwiedzisz + + + + + + + Onufry + + + + + + chord positioning + + + + + Czarny blues o czwartej nad ranem + Poezja śpiewana + diff --git a/songs/pl/poezja/Czasem_nagle_smutniejesz.xml b/songs/pl/poezja/Czasem_nagle_smutniejesz.xml new file mode 100644 index 00000000..2095feef --- /dev/null +++ b/songs/pl/poezja/Czasem_nagle_smutniejesz.xml @@ -0,0 +1,56 @@ + + + + Adam Ziemianin + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + Czasem nagle smutniejesz + To jakby dnia ubywa + I nie wiem jak ci pomóc + Więc tylko proszę wybacz + + + Czasem łzy w twoich oczach + Na krótką chwilę goszczą + I nie wiem czy coś mówić + I nawet nie wiem po co + + + + Puszczam więc wtedy latawce + + Ze śmiechu mego śmieszne + + I znowu dnia przybywa + Powietrze staje się lżejsze + + + I lżejsza staje się wędrówka + Z plecakiem wciąż coraz cięższym + Nad domem przysiadła tęcza + Na nieba niebieskiej gałęzi + + + + + + + Taboret wg. OnufregoAlek + + + + + + chord positioning + + + + + + + diff --git a/songs/Czlowiek_bez_butow.xml b/songs/pl/poezja/Czlowiek_bez_butow.xml similarity index 93% rename from songs/Czlowiek_bez_butow.xml rename to songs/pl/poezja/Czlowiek_bez_butow.xml index 4bb7ffec..6937bfad 100644 --- a/songs/Czlowiek_bez_butow.xml +++ b/songs/pl/poezja/Czlowiek_bez_butow.xml @@ -1,10 +1,10 @@ - + Janusz Kubicki - nie ma oficjalnego wydawnictwa - Trzy dni Tyłem - Trzy dni Tyłem + Nie ma oficjalnego wydawnictwa + Trzy Dni Tyłem + Trzy Dni Tyłem diff --git a/songs/Deszcz_jesienny.xml b/songs/pl/poezja/Deszcz_jesienny.xml similarity index 97% rename from songs/Deszcz_jesienny.xml rename to songs/pl/poezja/Deszcz_jesienny.xml index 509b3a94..b9f32a5e 100644 --- a/songs/Deszcz_jesienny.xml +++ b/songs/pl/poezja/Deszcz_jesienny.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Dni_ktorych_nie_znamy.xml b/songs/pl/poezja/Dni_ktorych_nie_znamy.xml similarity index 90% rename from songs/Dni_ktorych_nie_znamy.xml rename to songs/pl/poezja/Dni_ktorych_nie_znamy.xml index 4529cee5..3b790c0d 100644 --- a/songs/Dni_ktorych_nie_znamy.xml +++ b/songs/pl/poezja/Dni_ktorych_nie_znamy.xml @@ -1,5 +1,5 @@ - + Grechuta Marek @@ -21,7 +21,7 @@ Wytłumaczyć umiał sobie wtedy właśnie, że - Że ważne są tylko te dni... + Że ważne są tylko te dni… Jak rozpoznać ludzi których już nie znamy @@ -30,7 +30,7 @@ Jak usłyszeć siebie pośród śpiewu tłumu - Bo ważne są tylko te dni... + Bo ważne są tylko te dni… Jak rozpoznać ludzi których już nie znamy @@ -39,7 +39,7 @@ Odpowiedzi szukaj, czasu jest tak wiele - Bo ważne są tylko te dni... + Bo ważne są tylko te dni… diff --git a/songs/pl/poezja/Dobosz.xml b/songs/pl/poezja/Dobosz.xml new file mode 100644 index 00000000..af810973 --- /dev/null +++ b/songs/pl/poezja/Dobosz.xml @@ -0,0 +1,79 @@ + + + + + Nie mam pojęcia, czyj jest ten tekst i ta muzyka. Wysyłam maila z zapytaniem do Rzeszowa, może tam wiedzą… + + + + + + + Przez czarne miasta białe wsie + Po zaśnieżonych drogach + Przeciwko sobie armie dwie + Uparcie szły na wroga + I siały armie śmierć ze sobą + Po miastach i po wioskach + A w każdej armii kroczył dobosz + Co werbel miał i rozkaz + + + Doboszu graj doboszu idź + Choćby się świat zawalił + Trzeba nam iść i w werbel b + Przed siebie dalej i dalej + Poprzez bitewny zgiełk i kurz + Do broni krzycz do broni + Bo tamten dobosz to twój wróg + I śmierć mu werbel dzwoni + + + Aż wreszcie na rozstajach dróg + Armia się z armią zwarła + I przyczajona w bębnach śmierć + Skoczyła im do gardła + I krew na śniegu zbiegła strugą + I zamilkły armie obie + Tylko dwa bębny długo długo + Warczały przeciw sobie + + + + Koło dobosza dobosz legł + Na skraju wsi pod dębem + I z drzewa się posypał śnieg + I werblem zbudził bęben + I zagrał bęben naprzód naprzód + I toczy się po drogach + A drugi mu wtóruje w marszu + A drugi zagrał odzew + + + + Spokojnie leżą armie dwie + Pod krzyżem na rozstajach + I tylko nocą poprzez śnieg + Dwa bębny werblem grają + Jednaki odzew grają… + + + + + + + + + + + + + + chord positioning + + + Onufry + + + + diff --git a/songs/Dokad_nas_zaprowadzisz_Panie.xml b/songs/pl/poezja/Dokad_nas_zaprowadzisz_Panie.xml similarity index 97% rename from songs/Dokad_nas_zaprowadzisz_Panie.xml rename to songs/pl/poezja/Dokad_nas_zaprowadzisz_Panie.xml index 818acd28..4d520335 100644 --- a/songs/Dokad_nas_zaprowadzisz_Panie.xml +++ b/songs/pl/poezja/Dokad_nas_zaprowadzisz_Panie.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Dom_w_gorach.xml b/songs/pl/poezja/Dom_w_gorach.xml similarity index 52% rename from songs/Dom_w_gorach.xml rename to songs/pl/poezja/Dom_w_gorach.xml index 16406239..ad0d4591 100644 --- a/songs/Dom_w_gorach.xml +++ b/songs/pl/poezja/Dom_w_gorach.xml @@ -1,24 +1,21 @@ - - - - - - - - + + Ewa Gaworska + Na dostępnych nagraniach są tylko dwie pierwsze zwrotki. + Ewa Gaworska + Ewa Gaworska; Wojtek Starck - W jesienną głogów czerwień - W złotawą młodość brzozy - Wiatr z głowy czapkę zerwie - Pod stopy gór położy + W jesienną głogów czerwień + W złotawą młodość brzozy + Wiatr z głowy czapkę zerwie + Pod stopy gór położy - I zbudujemy dom bez strychów i bez piwnic - Zapłonie lampą krąg zapachem lasów grzybnych - Nie trzeba stawiać pieców, nie musisz okien szklić - I zbudujemy dom, bo taki dom musi być + I zbudujemy dom bez strychów i bez piwnic + Zapłonie lampą klon, zapachem lasów grzybnych + Nie trzeba stawiać pieców, nie musisz okien szklić + I zbudujemy dom, bo taki dom musi być I niebu się pokłonisz @@ -41,12 +38,25 @@ I rośnie razem z nami + + I zbudujemy dom na cztery świata strony + Zapłonie lampą klon, wędrowcom dniem znużonym + Nie trzeba stawiać pieców, nie musisz okien szklić + I zbudujemy dom, bo taki dom musi być + - + + - - + + + + chord positioning + + + Adam Foland + diff --git a/songs/Dom_wschodzacego_slonca.xml b/songs/pl/poezja/Dom_wschodzacego_slonca.xml similarity index 96% rename from songs/Dom_wschodzacego_slonca.xml rename to songs/pl/poezja/Dom_wschodzacego_slonca.xml index 4904fdcc..6e078d48 100644 --- a/songs/Dom_wschodzacego_slonca.xml +++ b/songs/pl/poezja/Dom_wschodzacego_slonca.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Drzewa.xml b/songs/pl/poezja/Drzewa.xml similarity index 94% rename from songs/Drzewa.xml rename to songs/pl/poezja/Drzewa.xml index aea9b198..5c3edf75 100644 --- a/songs/Drzewa.xml +++ b/songs/pl/poezja/Drzewa.xml @@ -1,5 +1,5 @@ - + Piosenka do nas do drużyny przyszła z "Pomarańczarni", konkretnie z ich śpiewnika szczepowego. Tam nie ma żadnej wzmianki o autorstwie tej piosenki, a wyszukiwanie po sieci nic nie daje. @@ -11,15 +11,15 @@ Dany jest drzewom taki sen, Co korę w puchu mgieł zanurza, - Przegina wiatry zgiętym pniem + Przegina wiatry zgiętym pniem I twardnieć każe w letnich burzach. Dlatego człowiek marszcząc brwi, Powalił pień żelaza błyskiem, - By pierworodny jego syn - Z drzewa wyciętą miał kołyskę. + By pierworodny jego syn + Z drzewa wyciętą miał kołyskę. diff --git a/songs/Dym_z_jalowca.xml b/songs/pl/poezja/Dym_z_jalowca.xml similarity index 52% rename from songs/Dym_z_jalowca.xml rename to songs/pl/poezja/Dym_z_jalowca.xml index 8ddbf293..142eeeac 100644 --- a/songs/Dym_z_jalowca.xml +++ b/songs/pl/poezja/Dym_z_jalowca.xml @@ -1,41 +1,41 @@ - + - R. Pomorski - + Ryszard Pomorski + Ryszard Pomorski Dym z jałowca łzy wyciska, - Noc się coraz wyżej wznosi. + Noc się coraz wyżej wznosi. Strumień srebrną falą błyska, - Czyjś głos w leśnej ciszy prosi, ciszy prosi, ciszy prosi… + Czyjś głos w leśnej ciszy prosi, ciszy prosi, ciszy prosi… - Żeby była taka noc, - Kiedy myśli mkną do Boga, - Żeby były takie dni, - Że się przy Nim ciągle jest. - Żeby był przy tobie ktoś, - Kogo nie zniechęci droga, - Abyś plecak swoich win - Stromą ścieżką umiał nieść. + Żeby była taka noc, + Kiedy myśli mkną do Boga, + Żeby były takie dni, + Że się przy Nim ciągle jest. + Żeby był przy tobie ktoś, + Kogo nie zniechęci droga, + Abyś plecak swoich win + Stromą ścieżką umiał nieść. Usiądź z nami przy ognisku, - omień twarz ci zarumieni. + omień twarz ci zarumieni. Usiądziemy przy nim blisko, - Jedną myślą połączeni, połączeni, połączeni… + Jedną myślą połączeni, połączeni, połączeni… Tuż za szczytem się zatrzymaj, - Spójrz jak gwiazdy w dół spadają. + Spójrz jak gwiazdy w dół spadają. Spójrz jak drży kosodrzewina, - Góry z tobą wraz wołają, wraz wołają, wraz wołają… + Góry z tobą wraz wołają, wraz wołają, wraz wołają… diff --git a/songs/pl/poezja/Dzielna_Margot.xml b/songs/pl/poezja/Dzielna_Margot.xml new file mode 100644 index 00000000..7d4a2c85 --- /dev/null +++ b/songs/pl/poezja/Dzielna_Margot.xml @@ -0,0 +1,88 @@ + + + Georges Brassens + Zespół Reprezentacyjny + + + W naszej wsi bezbronnego kotka + Znalazła w trawie raz Margot + A że sama była sierotką + Wzięła go + Był malutki jeszcze więc chciała + Jakąś poduszkę zdobyć mu + A jedyną jaką znalazła + Był jej biust + Kotek wziął ją za swoją mamę + I ssać zaczął dzielną Margot + Ona zaś ze wzruszenia nagle + Straciła głos + Syn sołtysa właśnie przechodził + Ujrzał rzadki obrazek ten + I poleciał z nowiną do wsi + A na drugi dzień + + + Gdy Margot stanik swój rozpinała + By miał kotek biedactwo co ss + Biegła nas biegła nas cała zgraja + By po pa pa pa pa pa patrzeć + By po pa pa pa pa pa pa + A niewinna Margot przypuszczała + Że do kotka co z jej piersi ssał + Biegła nas biegła nas cała zgraja + By po pa pa pa pa pa patrzeć + By po pa pa pa pa pa pa + + + Nauczyciel lekcje porzucił + Kowal podkowy pole kmieć + I pognali prędko na skróty + Na tę wieść + Nasz listonosz taki uczciwy + Na tę wieść listy ciepnął w mig + Których czytać i tak w tej chwili + Nie chciał nikt + Na tę wieść zaufawszy Bogu + Że im odpuści grzeszną myśl + Ministranci w lot dali nogę + W środku mszy + Nawet gliniarz postrach ludności + Tak z natury tępy jak słup + Staną opodal oszołomiony + Sceną jak ze snu + + + + Ale w pozostałych niewiastach + Wszak każdej zwiał i gach i mąż + Powolutku jęła narastać + Dzika złość + Wreszcie przyszedł we wsi dzień gniewu + Każda chwyciła tęgi kij + I zatłukł biedne maleństwo + Z żądzy krwi + A Margot po roku lamentów + By się pocieszyć wzięła ślub + I już tylko się mąż z jej wdzięków + Cieszyć mógł + Z czasem o tym pozapominano + Oprócz starców już mało kto + Mówi dzieciom dziś na dobranoc + O dzielnej Margot + + + + + + + + + + + chords + + + Krzysiek - na podstawie poprawek w śpiewniku Szkocja + + + diff --git a/songs/Dzis_do_ciebie.xml b/songs/pl/poezja/Dzis_do_ciebie.xml similarity index 97% rename from songs/Dzis_do_ciebie.xml rename to songs/pl/poezja/Dzis_do_ciebie.xml index f940fb87..e9b42c9d 100644 --- a/songs/Dzis_do_ciebie.xml +++ b/songs/pl/poezja/Dzis_do_ciebie.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/poezja/Easy_Rider.xml b/songs/pl/poezja/Easy_Rider.xml new file mode 100644 index 00000000..f949ee14 --- /dev/null +++ b/songs/pl/poezja/Easy_Rider.xml @@ -0,0 +1,118 @@ + + + + Krzysztof Daukszewicz + + Krzysztof Daukszewicz + Krzysztof Daukszewicz + + + + + A kiedy nic już nie miałem w mieście do roboty + Bo na większość poetów skończył się tu popyt + Wsiadłem w auto i rzekłem pora mi uciekać + Do tej Polski gdzie jeszcze kocha się człowieka + Tam gdzie rowy przydrożne ubarwione mleczem + Zapraszają wędrowca: wstąpcie do miasteczek! + + + Easy Rider + Przeszło mi przez głowę + Easy Rider + upiec jednym słowem + Lecz ciagnęły mnie panny + Ciepłe jak poranek + Kiedy mleko skwaszone + Wnoszą mi na ganek + Easy Rider, Easy Rider + + + W miasteczku pierwszym zamknięty był jedyny hotel + Bo personel miał wolne właśnie w tę sobotę + A w prywatnym mieszkaniu drzwi otworzył blondyn + I zapytał mnie z miejsca jakie masz poglądy + Sprawiedliwość i prawda to jest dla mnie wszystko + Wtedy padła odpowiedź: zjeżdżaj aktywisto + + + Easy Rider + Przeszło mi przez głowę + Easy Rider + upiec jednym słowem + Lecz ciągnęły mnie dalej + Wierzby malowane + I te nasze dziewczyny + Ładne jak z pisanek + Easy Rider, Easy Rider + + + W następnym domku z ogródkiem miejski prokurator + Różom kolce przycinał równo ciął sekator + Przywitałem się grzecznie prosząc o mieszkanie + On zapytał mnie tylko jakie ma pan zdanie + Sprawiedliwość i prawda to jest dla mnie wszystko + Wtedy padła odpowiedź: odejdź ekstremisto + + + Easy Rider + Przeszło mi przez głowę + Easy Rider + upiec jednym słowem + Lecz ciągnęło mnie jeszcze + Do gościnnych wiosek + Gdzie częstują każdego + Miodem i bigosem + Easy Rider, Easy Rider + + + Solidny dom z pruskiej cegły siatką ogrodzony + I na bramie tabliczka: obcym wstęp wzbroniony + I na ganku gospodarz czerstwy jak bochenek + Wziął przywitał pytaniem co najbardziej cenię + Sprawiedliwość i prawda to jest dla mnie wszystko + Burek bierz miastowego będzie widowisko + + + Easy Rider + Przeszło mi przez głowę + Easy Rider + upiec jednym słowem + Lecz ciągnęło mnie jeszcze + W strony te dalekie + Gdzie tak swojsko nam pachnie + Sianem i człowiekiem + Easy Rider, Easy Rider + + + A kiedy minął już miesiąc w mej samotnej drodze + Gdzieś na szlaku zatrzymał pojazd mój wędrowiec + Sprawiedliwość i prawda rzekłem do rodaka + I był pierwszym co spytał: dobrze, ale jaka? + I podzielił się ze mną chlebem i kłopotem + To był też Easy Rider tylko na piechotę + Easy Rider + + + + + + + + + + Pralnia + + + + + chord positioning + + + OnufryKrzysiek + + + + Sprawdzane ze śpiewnikiem Daukszewicza + + diff --git a/songs/pl/poezja/Francois_Villon.xml b/songs/pl/poezja/Francois_Villon.xml new file mode 100644 index 00000000..3b1ec47e --- /dev/null +++ b/songs/pl/poezja/Francois_Villon.xml @@ -0,0 +1,64 @@ + + + Bułat Okudżawa + + + Dopóki nam Ziemia kręci się, + Dopóki jest tak czy siak, + Panie, ofiaruj każdemu z nas + Czego mu w życiu brak. + Mędrcowi darować głowę racz, + Tchórzowi dać konia chciej, + Sypnij grosz szczęściarzom + I mnie w opiece swej miej. + + + Dopóki nam Ziemia obraca się, + O, Panie, daj nam znak. + Władzy spragnionym uczyń, + By władza poszła im w smak. + Hojnych puść między żebraków, + Niech się poczują lżej, + Daj Kainowi skruchę + I mnie w opiece swej miej. + + + Ja wiem, że Ty wszystko możesz, + Ja wierzę w Twą moc i gest, + Jak wierzy żołnierz zabity, + Że w siódmym niebie jest, + Jak zmysł każdy chłonie z wiarą + Twój ledwie słyszalny głos, + Jak wszyscy wierzymy w Ciebie, + Nie wiedząc, co niesie los. + + + Panie zielonooki mój + Boże jedyny spraw, + Dopóki nam Ziemia toczy się + Zdumiona obrotem spraw, + Dopóki czasu i prochu + Wciąż jeszcze wystarcza jej, + Dajże nam wszystkim po trochu + I mnie w opiece swej miej. + + + + + + + + + + + + Modlitwa + Bułat Okudżawa + Bułat Okudżawa + + + A. Mandalian + + + + diff --git a/songs/pl/poezja/Gdy_mnie_kochac_przestaniesz.xml b/songs/pl/poezja/Gdy_mnie_kochac_przestaniesz.xml new file mode 100644 index 00000000..733ac248 --- /dev/null +++ b/songs/pl/poezja/Gdy_mnie_kochac_przestaniesz.xml @@ -0,0 +1,65 @@ + + + + Andrzej Sikorowski + + Jan Hnatowicz + Pod Budą + + + + + Gdy mnie kochać przestaniesz to powiedz + Powiedz kiedy mnie kochać przestaniesz + To się człowiek wypłacze jak człowiek + W białym łóżku nad ranem + Nie przysyłaj mi listów ostatnich + Nie owijaj w bawełnę słów paru + Lepiej siądźmy do ciepłej kolacji + Pod okapem wieczoru + + + Na talerzach świecy blask + Dymi waza pełna gwiazd + A pod stołem kot się łasi + Coś stuknęło na tarasie + Może wiatr + Piętro wyżej ćwiczą Liszta + A zawiane towarzystwo + Gdzieś pod bramą wykrzykuje + Stróż im tego nie daruje + Stróż artysta + + + Posiedzimy tak sobie we dwoje + Pośród spraw których nigdy nie bo + Potem w starym zacisznym pokoju + Znowu wyznasz mi mość + Gdy mnie kochać przestaniesz bez racji + Powiedz o tym od razu kochany + Wtedy zjemy kolejną kolację + Na wieczoru dywanie + + + + + + + + + + Pod Budą + Poezja śpiewana + + + + chord positioning + + + Onufry + + + Wszystko OK? + + + diff --git a/songs/Gdy_tak_siedzimy_(3).xml b/songs/pl/poezja/Gdy_tak_siedzimy.xml similarity index 95% rename from songs/Gdy_tak_siedzimy_(3).xml rename to songs/pl/poezja/Gdy_tak_siedzimy.xml index e30f77ae..a6c6353f 100644 --- a/songs/Gdy_tak_siedzimy_(3).xml +++ b/songs/pl/poezja/Gdy_tak_siedzimy.xml @@ -1,5 +1,5 @@ - + L. Szaluga? diff --git a/songs/Gdybym_mial_gitare.xml b/songs/pl/poezja/Gdybym_mial_gitare.xml similarity index 95% rename from songs/Gdybym_mial_gitare.xml rename to songs/pl/poezja/Gdybym_mial_gitare.xml index a105b66d..9563575d 100644 --- a/songs/Gdybym_mial_gitare.xml +++ b/songs/pl/poezja/Gdybym_mial_gitare.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Gdziekolwiek.xml b/songs/pl/poezja/Gdziekolwiek.xml similarity index 71% rename from songs/Gdziekolwiek.xml rename to songs/pl/poezja/Gdziekolwiek.xml index 651a9d2c..bd7f3952 100644 --- a/songs/Gdziekolwiek.xml +++ b/songs/pl/poezja/Gdziekolwiek.xml @@ -1,5 +1,5 @@ - + @@ -9,14 +9,14 @@ - Gdziekolwiek będziesz, cokolwiek się stanie - Będą miejsca w książkach i miejsca przy stole - Kasztan kiedy kwitnie lub owoc otwiera - Będą drzewa, ulice, ktoś nagle zawoła - Ktoś do drzwi zapuka, pamięć przyniesie - Z kwiatem, z godziną, z kolorem - Gdziekolwiek będziesz, cokolwiek się stanie - Gdziekolwiek będziesz + Gdziekolwiek będziesz, cokolwiek się stanie + Będą miejsca w książkach i miejsca przy stole + Kasztan kiedy kwitnie lub owoc otwiera + Będą drzewa, ulice, ktoś nagle zawoła + Ktoś do drzwi zapuka, pamięć przyniesie + Z kwiatem, z godziną, z kolorem + Gdziekolwiek będziesz, cokolwiek się stanie + Gdziekolwiek będziesz Gdziekolwiek będziesz, cokolwiek się stanie diff --git a/songs/pl/poezja/Gloria.xml b/songs/pl/poezja/Gloria.xml new file mode 100644 index 00000000..062577f0 --- /dev/null +++ b/songs/pl/poezja/Gloria.xml @@ -0,0 +1,70 @@ + + + Edward Stachura + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + + Chwała najsampierw komu, komu gloria + Na wysokościach + Chwała najsampierw tobie, trawo przychylna każdemu + Kraino na dół od Edenu + Gloria gloria + + + Chwała tobie słońce odyńcu samotny + Co wstajesz rano z trzęsawisk nocnych + I w górę bieżysz w niebo sam się wzbijasz + I chmury czarne białym kłem przebijasz + I to wszystko bezkrwawo brawo, brawo + I to wszystko złociście i nikogo nie boli + Gloria, gloria in exelsis soli + + + Z słońcem pochwalonym teraz pędźmy razem + Na nim na odyńcu galopujmy dalej + Chwała tobie wietrze, wieczny ty młodziku + Sieroto świata, ulubieńcze losu + Od złego ratuj i kąkoli w zbożu + Łagodnie kołysz tych co są na morzu + Gloria gloria in excelsis eoli + + + + + + Z wiatrem pochwalonym teraz pędzimy społem + Na nim na koniku galopujemy polem + Chwała wam ptaszki śpiewające + Chwała wam ryby pluskające + Chwała wam zające na łące + Zakochane w biedronce + + + Chwała wam zimy, wiosny, lata i jesienie + Chwała temu co bez gniewu idzie + Poprzez śniegi, deszcze, blaski oraz cienie + W piersi pod koszulą całe jego mienie + Gloria gloria + + + + + + + + + + Dla wszystkich starczy miejsca / Sercopisanie + + + + + chords + + + + diff --git a/songs/pl/poezja/Glupi_Gienek.xml b/songs/pl/poezja/Glupi_Gienek.xml new file mode 100644 index 00000000..2c21eca7 --- /dev/null +++ b/songs/pl/poezja/Glupi_Gienek.xml @@ -0,0 +1,46 @@ + + + Stare Dobre Małżeństwo + + + Gienek gra na gitarze + Miał być szewcem G + Lecz mu nie wyszło + Za oknem jesień + Przybija podkówki + Chyba na przyszłość + + + Gitara Gienka jest taka cienka + Po prostu mało ma strun + Lecz Gienek jej wierzy, + Wie że struna pęka + Zwłaszcza gdy cienka i już + + + Gienek nie będzie już szewcem + Bo wbił sobie w głowę gwóźdź + Woli gitarę mieć za żonę + Z gitarą bierze ślub + + + + + + + + + + + + + + + + + + + + + + diff --git a/songs/pl/poezja/Gonic_marzenia.xml b/songs/pl/poezja/Gonic_marzenia.xml new file mode 100644 index 00000000..845bd2f8 --- /dev/null +++ b/songs/pl/poezja/Gonic_marzenia.xml @@ -0,0 +1,80 @@ + + + + Jurij Kukin + + Jurij Kukin + Jurij Kukin + + Za tumanom + + + Na włóczęgę dziś wyruszyć przyszła pora, + Las nas woła śpiewem ptaków, szumem drzew + I wołają nas już pola i jeziora, + Zeszłoroczny nasz wesoły pomnąc śpiew. + Ludzie mają swoje prace, ludzie lubią się bogacić, + Pełne brzuchy mają chcą mieć pełen trzos. + + + + A ja gonię, a ja gonię swe marzenia, + Szukam szczęścia gdzie kaczeńce i gdzie wrzos. + + + + Tak to proste że i gadać szkoda czasu, + Tylko plecak wziąć i iść przed siebie tak. + Szukać wiatru i zapachu szukać lasu, + Jak najdalej z zadymionych wielkich miast. + Zrozum bracie, to tak trzeba łóżkiem trawa, dachem drzewa, + Z wiatrem gonić i z ptakami śpiewać w głos! + + + + Trzeba gonić trzeba gonić swe marzenia + I nie czekać ile trosk przyniesie los! + + + + Tym co iść nie lubią, mówię do widzenia, + Za dni kilka może się spotkamy znów. + Idę w świat, by tam dogonić swe marzenia, + Aby spełnić kilka swoich złotych snów. + Więc z dziewczyną swą pod rękę i z gitarą, i z piosenką, + Precz mi smutki, precz przykrości słońce świeć! + + + + Idę gonić idę gonić swe marzenia + I spokoju szukać pośród starch drzew. + + + + + + + + + + Kuba P.Michał Korch + + + + + + + + + + Nie wiem, kto przetłumaczył. + + + + chord positioning + + + + + Piosenka turystyczna + diff --git a/songs/gormimalo.xml b/songs/pl/poezja/Gor_mi_malo.xml similarity index 54% rename from songs/gormimalo.xml rename to songs/pl/poezja/Gor_mi_malo.xml index 4e8ff386..e588407b 100644 --- a/songs/gormimalo.xml +++ b/songs/pl/poezja/Gor_mi_malo.xml @@ -1,6 +1,6 @@ - + @@ -30,41 +30,41 @@ - Drogi Mistrzu, Mistrzu mojej drogi, + Drogi Mistrzu, Mistrzu mojej drogi, - Mistrzu Jerzy i Mistrzu Wojciechu, + Mistrzu Jerzy i Mistrzu Wojciechu, - Przez was w górach schodziłem nogi, + Przez was w górach schodziłem nogi, - Nie mogąc złapać oddechu. + Nie mogąc złapać oddechu. - Gór, co stoją nigdy nie dogonię, + Gór, co stoją nigdy nie dogonię, - Znikających punktów na mapie, + Znikających punktów na mapie, - Jakie miejsce nazwę swym domem, + Jakie miejsce nazwę swym domem, - Jakim dotrę do niego szlakiem. + Jakim dotrę do niego szlakiem. - Gór mi mało i trzeba mi więcej, + Gór mi mało i trzeba mi więcej, - Żeby przetrwać od zimy do zimy, + Żeby przetrwać od zimy do zimy, - Ktoś mnie skazał na wieczną wędrówkę + Ktoś mnie skazał na wieczną wędrówkę - Po śladach, które sam zostawiłem. + Po śladach, które sam zostawiłem. - Góry, góry i ciągle mi nie dość, + Góry, góry i ciągle mi nie dość, - Skazanemu na gór dożywocie, + Skazanemu na gór dożywocie, - Świat na dobre mi zbieszczadział, + Świat na dobre mi zbieszczadział, - Szczyty wolnym mijają mnie krokiem. + Szczyty wolnym mijają mnie krokiem. @@ -80,21 +80,21 @@ - Pańscy święci, święci bezpańscy, + Pańscy święci, święci bezpańscy, - Święty Jerzy, Mikołaju, Michale, + Święty Jerzy, Mikołaju, Michale, - Starodawni gór świętych mieszkańcy, + Starodawni gór świętych mieszkańcy, - Imię wasze pieśniami wychwalam. + Imię wasze pieśniami wychwalam. - Gór, co stoją nigdy nie dogonię, + Gór, co stoją nigdy nie dogonię, - Znikających punktów na mapie, + Znikających punktów na mapie, - I chaty, by nazwać ją swym domem, + I chaty, by nazwać ją swym domem, - Do której żaden szlak by nie trafił. + Do której żaden szlak by nie trafił. @@ -102,21 +102,21 @@ - Gór mi mało i trzeba mi więcej, + Gór mi mało i trzeba mi więcej, - Żeby przetrwać od zimy do zimy, + Żeby przetrwać od zimy do zimy, - Ktoś mnie skazał na wieczną wędrówkę, + Ktoś mnie skazał na wieczną wędrówkę, - Po śladach, które sam zostawiłem. + Po śladach, które sam zostawiłem. - Góry, góry i ciągle mi nie dość, + Góry, góry i ciągle mi nie dość, - Skazanemu na gór dożywocie, + Skazanemu na gór dożywocie, - Świat na dobre mi zbieszczadział, + Świat na dobre mi zbieszczadział, - Szczyty wolnym mijają mnie krokiem. + Szczyty wolnym mijają mnie krokiem. diff --git a/songs/pl/poezja/Gorska_ballada.xml b/songs/pl/poezja/Gorska_ballada.xml new file mode 100644 index 00000000..0b8dfbcc --- /dev/null +++ b/songs/pl/poezja/Gorska_ballada.xml @@ -0,0 +1,81 @@ + + + + Leszek Kopeć + + Leszek Kopeć + Leszek Kopeć + + + + + + + + + + + + Przyłączył się do nas na jednej z wędrówek + Razem z nami przemierzał górskie szlaki + Rzadko do kogoś odezwał się słowem + Lecz chyba mu dobrze było z nami + Raz kiedyś w schronisku gdy noc nas zdybała + Otworzył jakiś zeszyt wypłowiały + Spod palców spłynęły mu dźwięki gitary + I słowa nieznane lecz bliskie + + + + Bo zagrał swą balladę + A w niej zamknął echa gór + Bo zagrał swą balladę + Górskich potoków szum + + + + + Od tego wieczoru już zawsze nam śpiewał + O nim samym mówiły piosenki + Jakieś imię dziewczyny wspomnienia dużego miasta + Dym z ognisk i noce nieprzespane + Na jednym ze szlaków pożegnał się z nami + Odszedł drogą inną nieznaną + Odszedł jak Majster Bieda może kiedyś powróci + Zawsze na niego czekamy + + + + By zagrał swą balladę + A w niej zamknął echa gór + By zagrał swą balladę + Górskich potoków szum + + Górskich potoków szum + + + + + + + + + + KubaOnufry + + + + a) drugi refren jest z bisem, a dodatkowa linijka po nim występuje tylko raz - trzeba to jakoś rozwiązać +b) Ja w ogóle zazwyczaj gram tę wstawkę muzyczną po pierwszym refrenie tylko raz, ale chwilowo piszę dwa razy. +Nie mam dostępu do oryginału. + + + + chord positioning + + + + + Na szlaku - Turystyczne przeboje - cz. 3 + Piosenka turystyczna górska + diff --git a/songs/pl/poezja/Goryl.xml b/songs/pl/poezja/Goryl.xml new file mode 100644 index 00000000..eb5463c0 --- /dev/null +++ b/songs/pl/poezja/Goryl.xml @@ -0,0 +1,131 @@ + + + + Georges Brassens + + Georges Brassens + Zespół Reprezentacyjny + Filip Łobodziński + Le Gorille + + + W naszym zoo trzymali goryla + W klatce z bardzo grubych krat + Zaś przed nią baby stawały co chwila + I podziwiały samca bez szat + Zwłaszcza na jedną część jego ciała + Wszystkie bezwstydnie gapiły się wciąż + Nie powiem na co lecz nie było to małe + Każda wzdychała gdzie przy nim mój mąż + + + Strzeż się goryla + + + Lecz oto małpa wychodzi ukradkiem + Ku zaskoczeniu szacownych p + Chyba ktoś źle zamknął klatkę + Jak to się stało nie wiem sam + Goryl stanął wolnością zachwycon + I odezwał się słowem tym + Od dziś nie będę już dziewicą + A oto jak słowo przeszło w czyn + + + + Dyrektor zoo postradał zmysły + I powtarzał ciągle bez tchu + Mój goryl nie miał nigdy samicy + On jest silniejszy niż ludzi stu + Gdy dowiedziały się o tym niewiasty + Zaraz podniosły straszliwy krzyk + I zamiast skorzystać z wielkiej szansy + Idiotki dały drapaka w mig + + + + Nawet te z nich co jeszcze przed chwilą + Marzyły o małpim supermanie + Teraz zwiewały aż się kurzyło + A więc to były tylko marzenia + Ten ich strach był tym mniej zrozumiały + Że przecież goryl to na schwał chłop + Bo nawet Don Juan nie dałby mu rady + Szczęście było dosłownie o krok + + + + Ludzie pierzchnęli we wszystkie strony + Bo dziki samiec przeraził ich tak + Pozostał tylko pewien sędzia młody + I jakaś staruszka (stuletni wrak) + Goryl widząc jedynie tych dwoje + Poczuł gwałtowny erotyki głód + Więc aby żądze swe zaspokoić + Ku nim skierował swój kaczy chód + + + + Starucha czując nagłą ochotę + Westchnęła — więc jednak zdarzył się cud + Ktoś jeszcze miewa do mnie ciągoty + Już nie liczyłam na szczęścia łut + Ciekawe jaką samicę tu znajdzie + Chyba tę starą przecież nie mnie + Pomyślał sędzia lecz przyszłość zasię + Dowiodła jak bardzo mylił się + + + + Bo zastanówmy się w tym momencie + Gdyby ktoś inny na miejscu małpy + Musiał tu wybrać starucha czy sędzia + Komu z nich szczęścia spróbować dałby + Ja gdybym rozwiązać miał osobiście + Alternatywę taką już dz + Bym wybrał babinę oczywiście + Choć włos się jeży na samą myśl + + + + Ale niestety co prawda goryl + Jest arcymistrzem w miłosnej grze + Lecz jeśli chodzi o smak czy urodę + Wiadomo powszechnie raczej nie + Albowiem zamiast zgwałcić staruchę + Jak to uczynił by byle kto + Ten sędziego ułapił za ucho + I w jakieś krzaki zaciągnął go + + + + Dalszego ciągu zdradzić nie mogę + Chociaż i miejsce na to i czas + Lecz mi nie wolno a wielka szkoda + Bo ubawiło by to was + Jako że sędzia w szczytowym momencie + Zapłakał głośno i krzyknął ,,mamo'' + Zupełnie jak człowiek którego na ścięcie + Skazał był właśnie tego dnia rano + + + + + + + + + Piosenka kabaretowa + + + + chord positioning + + + Onufry + + + + + + diff --git a/songs/pl/poezja/Hej_przyjaciele.xml b/songs/pl/poezja/Hej_przyjaciele.xml new file mode 100644 index 00000000..4b15b9da --- /dev/null +++ b/songs/pl/poezja/Hej_przyjaciele.xml @@ -0,0 +1,57 @@ + + + + Paweł Kasperczyk + + Paweł Kasperczyk + Babsztyl + + + + + Tam, dokąd chciałem już nie dojdę, szkoda zdzierać nóg, + Już wędrówki naszej wspólnej nadchodzi kres. + Wy pójdziecie inną drogą zostawicie mnie, + Odejdziecie — sam zostanę na rozstaju dróg. + + + Hej przyjaciele, przyjaciele, hej, zostańcie ze mną, + Przecież wszystko to co miałem oddałem Wam. + Hej przyjaciele, przyjaciele, hej, choć chwilę jedną, + Znowu w życiu mi nie wyszło, znowu będę sam. + + + Znów spóźniłem się na pociąg i odjechał już, + Tylko jego mglisty koniec zamajaczył mi. + Stoję smutny na peronie z tą walizką jedną + Tak, jak człowiek, który zgubił od domu swego klucz. + + + + Tam, dokąd chciałem już nie dojdę, szkoda zdzierać nóg, + Już wędrówki naszej wspólnej nadchodzi kres. + Wy pójdziecie inną drogą zostawicie mnie, + Zamazanych drogowskazów nie odczytam już. + + + + + + + + Michał Korch + + + + + + + + chord positioning + + + + + + Inna + diff --git a/songs/pl/poezja/Idac_zawsze_idz.xml b/songs/pl/poezja/Idac_zawsze_idz.xml new file mode 100644 index 00000000..3877b9a7 --- /dev/null +++ b/songs/pl/poezja/Idac_zawsze_idz.xml @@ -0,0 +1,67 @@ + + + + Grzegorz Tomczak + + Grzegorz Tomczak + Grzegorz Tomczak + + + + + Przyszedł do mnie, jak do swego + Twarz z powieści Witkacego mi + I dwie książki. Jak nie patrzeć + Bursa Andrzej i Wojaczek Raf + W oczach miał zmęczenie światem + I chciał ze mną, tak jak z bratem iść w rozmowy szał + Więc od razu bez przymiarki + Takie słowne dwa ogarki mi d + + + Siedząc, zawsze siedź + + Idąc, zawsze idź + Pierwsze kroki stawiaj w chmurach + Choćbyś wiedział, że nie wskórasz + W takich chmurach nic + + Absolutnie nic + Kiedy mówisz, mów + Kiedy milczysz, milcz + Niechaj wielka będzie cisza + Tak by każdy ją usłyszał + ośniej niż twój krzyk + Więc: kiedy milczysz, milcz + + + Milczeliśmy przez godzinę + Popijając połowinę pod kwas + Gdy byliśmy już w rozpędzie + Wstał, powiedział: na mnie będzie już czas + Jeszcze na mnie spojrzał, jak ten + Który miał miasteczka każdy wie, gdzie + Na odchodnym, bez przymiarki + Rzucił słowne dwa ogarki bym pamiętał, że + + + + + + + + OnufryAlek + + + + + + + chord positioning + + + + + Ja to mam szczęście… + Poezja śpiewana + diff --git a/songs/pl/poezja/Imperatyw.xml b/songs/pl/poezja/Imperatyw.xml new file mode 100644 index 00000000..6aa5e25e --- /dev/null +++ b/songs/pl/poezja/Imperatyw.xml @@ -0,0 +1,61 @@ + + + + Piotr Bakal + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + Będziemy szli nieprzerwanie + W ulewie skwarze huraganie + Przez chwiejne mosty grząskie bagna + Chaszcze pustynie i mokradła + Będziemy szli przez zamiecie + Przez grudnie, marce, czerwce, sierpnie + Upalne lata mroźne zimy + Będziemy szli nie zawrócimy + + + Z wiarą w następny zakręt drogi + Co znów okaże się nie ten + W tajne przymierze z Panem Bogiem + W naszego trudu jakiś sens + + + Będziemy szli bez wytchnienia + Upadający ze zmęczenia + Bez gromkich fanfar i okrzyków + Bez pozy dumnych wojowników + Będziemy szli wbrew logice + Powolnym marszem całe życie + Będziemy mówić że już dosyć + I dalej, dalej, dalej kroczyć + + + + + + + + + + + Michał Korch + + + Nigdy nie słyszałem w oryginale… + + + + + + chord positioning + + + + Pod wielkim dachem nieba + Poezja śpiewana + diff --git a/songs/Ja_mam_tylko_jeden_swiat.xml b/songs/pl/poezja/Ja_mam_tylko_jeden_swiat.xml similarity index 97% rename from songs/Ja_mam_tylko_jeden_swiat.xml rename to songs/pl/poezja/Ja_mam_tylko_jeden_swiat.xml index 2548de1c..66cb3712 100644 --- a/songs/Ja_mam_tylko_jeden_swiat.xml +++ b/songs/pl/poezja/Ja_mam_tylko_jeden_swiat.xml @@ -1,5 +1,5 @@ - + J. Strąkowski diff --git a/songs/Jak.xml b/songs/pl/poezja/Jak.xml similarity index 59% rename from songs/Jak.xml rename to songs/pl/poezja/Jak.xml index d3980e08..5f6398d8 100644 --- a/songs/Jak.xml +++ b/songs/pl/poezja/Jak.xml @@ -1,5 +1,5 @@ - + Edward Stachura @@ -11,47 +11,47 @@ Jak po nocnym niebie sunące - Białe obłoki nad lasem + Białe obłoki nad lasem Jak na szyi wędrowca apaszka szamotana wiatrem Jak wyciągnięte tam powyżej - Gwiaździste ramiona wasze - A tu są nasze, a tu są nasze + Gwiaździste ramiona wasze + A tu są nasze, a tu są nasze Jak suchy szloch w tę dżdżystą noc - Jak winny li niewinny sumienia wyrzut - Że się żyje gdy umarło tylu tylu tylu + Jak winny li niewinny sumienia wyrzut + Że się żyje gdy umarło tylu tylu tylu Jak suchy szloch w tę dżdżystą noc - Jak lizać rany celnie zadane - Jak lepić serce w proch potrzaskane + Jak lizać rany celnie zadane + Jak lepić serce w proch potrzaskane Jak suchy szloch w tę dżdżystą noc - Pudowy kamień, pudowy kamień - Ja na nim stanę, on na mnie stanie - On na mnie stanie, spod niego wstanę + Pudowy kamień, pudowy kamień + Ja na nim stanę, on na mnie stanie + On na mnie stanie, spod niego wstanę Jak suchy szloch w tę dżdżystą noc - Jak złota kula nad wodami + Jak złota kula nad wodami Jak świt pod spuchniętymi powiekami Jak zorze miłe śliczne polany - Jak słońca pierś jak garb swój nieść - Jak do was siostry mgławicowe ten zawodzący śpiew + Jak słońca pierś jak garb swój nieść + Jak do was siostry mgławicowe ten zawodzący śpiew @@ -59,7 +59,7 @@ Jak biec do końca potem odpoczniesz Potem odpoczniesz cudne manowce - Cudne manowce, cudne, cudne manowce + Cudne manowce, cudne, cudne manowce diff --git a/songs/Jak_bede_stary_zgrzybialy.xml b/songs/pl/poezja/Jak_bede_stary_zgrzybialy.xml similarity index 94% rename from songs/Jak_bede_stary_zgrzybialy.xml rename to songs/pl/poezja/Jak_bede_stary_zgrzybialy.xml index c92ab027..b377dd1e 100644 --- a/songs/Jak_bede_stary_zgrzybialy.xml +++ b/songs/pl/poezja/Jak_bede_stary_zgrzybialy.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/jakdobrzenam.xml b/songs/pl/poezja/Jak_dobrze_nam.xml similarity index 59% rename from songs/jakdobrzenam.xml rename to songs/pl/poezja/Jak_dobrze_nam.xml index af782747..9a96ae31 100644 --- a/songs/jakdobrzenam.xml +++ b/songs/pl/poezja/Jak_dobrze_nam.xml @@ -1,6 +1,6 @@ - + @@ -20,41 +20,41 @@ - Jak dobrze nam zdobywać góry + Jak dobrze nam zdobywać góry - I młodą piersią chłonąć wiatr. + I młodą piersią chłonąć wiatr. - Prężnymi stopy deptać chmury + Prężnymi stopy deptać chmury - I palce ranić o szczyt Tatr. + I palce ranić o szczyt Tatr. - Mieć w uszach szum, strumieni śpiew, + Mieć w uszach szum, strumieni śpiew, - A w żyłach rozognioną krew, + A w żyłach rozognioną krew, - Hejże hej, hejże ha, + Hejże hej, hejże ha, - Żyjmy więc póki czas, + Żyjmy więc póki czas, - Bo kto wie, bo kto wie, + Bo kto wie, bo kto wie, - Kiedy znowu ujrzę Was. + Kiedy znowu ujrzę Was. - Jak dobrze nam głęboką nocą + Jak dobrze nam głęboką nocą - Wędrować jasną wstęgą szos, + Wędrować jasną wstęgą szos, - Patrzeć jak gwiazdy niebo złocą + Patrzeć jak gwiazdy niebo złocą - I czekać, co przyniesie los. + I czekać, co przyniesie los. @@ -62,29 +62,29 @@ - Jak dobrze nam tak przy ognisku + Jak dobrze nam tak przy ognisku - Tęczową wstęgę marzeń snuć, + Tęczową wstęgę marzeń snuć, - Patrzeć jak w niebo iskra tryska + Patrzeć jak w niebo iskra tryska - I wokół siebe przyjaźń czuć. + I wokół siebe przyjaźń czuć. - Mieć w oczach blask i ogna żar, + Mieć w oczach blask i ogna żar, - A w duszy mieć młodości czar. + A w duszy mieć młodości czar. - Hejże hej, hejże ha, + Hejże hej, hejże ha, - Żyjmy więc póki czas, + Żyjmy więc póki czas, - Bo kto wie, bo kto wie, + Bo kto wie, bo kto wie, - Kiedy znowu ujrzę Was. + Kiedy znowu ujrzę Was. diff --git a/songs/Jaka_cene.xml b/songs/pl/poezja/Jaka_cene.xml similarity index 96% rename from songs/Jaka_cene.xml rename to songs/pl/poezja/Jaka_cene.xml index b5913735..a2597f12 100644 --- a/songs/Jaka_cene.xml +++ b/songs/pl/poezja/Jaka_cene.xml @@ -1,5 +1,5 @@ - + Adam Ziemianin @@ -19,7 +19,7 @@ Że nie wie o niej nawet rzeka - Tamdamdaradaj... + Tamdamdaradaj… Czy poto tutaj tylko jesteśmy diff --git a/songs/Jaka_jestes.xml b/songs/pl/poezja/Jaka_jestes.xml similarity index 94% rename from songs/Jaka_jestes.xml rename to songs/pl/poezja/Jaka_jestes.xml index f91a7a84..cf9aeb3f 100644 --- a/songs/Jaka_jestes.xml +++ b/songs/pl/poezja/Jaka_jestes.xml @@ -1,5 +1,5 @@ - + Bitwa Tomek Lewandowski diff --git a/songs/pl/poezja/Jaki_byl_ten_dzien.xml b/songs/pl/poezja/Jaki_byl_ten_dzien.xml new file mode 100644 index 00000000..d17dee0d --- /dev/null +++ b/songs/pl/poezja/Jaki_byl_ten_dzien.xml @@ -0,0 +1,59 @@ + + + + + + + Turbo + + + + + Późno już, otwiera się mrok, + Sen podchodzi do drzwi na palcach jak kot. + Nadchodzi czas ucieczki na aut. + Gdy kolejny mój dzień wspomieniem się stał. + + + Jaki był ten dzień, co darował co wziął, + Czy mnie wyniósł pod niebo czy rzucił na dno? + Jaki był ten dzień, czy coś zmienił czy nie, + Czy był tylko nadzieją na dobre i złe? + + + Łagodny mrok zasłania mi twarz, + Jakby przeczuł, że chcę być sobą choć raz. + Nie skarżę się, że mam to co mam, + Że przegrałem coś znów, że jestem znów sam. + + + Jaki był ten dzień, co darował co wziął, + Czy mnie wyniósł pod niebo czy rzucił na dno? + Jaki był ten dzień, czy coś zmienił czy nie, + Czy był tylko nadzieją na dobre i złe? + + + + + + + + + + + + + Rock + + + + chord positioning + + + Kasia Kowalska + + + + + + diff --git a/songs/Jaworzyna.xml b/songs/pl/poezja/Jaworzyna.xml similarity index 89% rename from songs/Jaworzyna.xml rename to songs/pl/poezja/Jaworzyna.xml index c5bc9309..386d9427 100644 --- a/songs/Jaworzyna.xml +++ b/songs/pl/poezja/Jaworzyna.xml @@ -1,5 +1,5 @@ - + Jerzy Reiser @@ -19,10 +19,10 @@ Jaworzyna górom się kłania Spod obłoków szczyt odsłania - Pogoda będzie jutro będzie ładny świt + Pogoda będzie jutro będzie ładny świt Rozchmurzyła się Jaworzyna Już nie płacze śmiać się zaczyna - Pogoda będzie jutro nie będzie smutny nikt + Pogoda będzie jutro nie będzie smutny nikt Noc się ściele na lasach mokrych diff --git a/songs/Jedyne_co_mam.xml b/songs/pl/poezja/Jedyne_co_mam.xml similarity index 97% rename from songs/Jedyne_co_mam.xml rename to songs/pl/poezja/Jedyne_co_mam.xml index d4bc04ba..152c9542 100644 --- a/songs/Jedyne_co_mam.xml +++ b/songs/pl/poezja/Jedyne_co_mam.xml @@ -1,5 +1,5 @@ - + Pod Budą diff --git a/songs/Jesien_idzie.xml b/songs/pl/poezja/Jesien_idzie.xml similarity index 95% rename from songs/Jesien_idzie.xml rename to songs/pl/poezja/Jesien_idzie.xml index f5c0c151..0dc1bcbd 100644 --- a/songs/Jesien_idzie.xml +++ b/songs/pl/poezja/Jesien_idzie.xml @@ -1,5 +1,5 @@ - + Andrzej Waligórski @@ -14,7 +14,7 @@ Ujrzał listek przywiędły i blady - I pomyślał -- Znowu idzie jesień, + I pomyślał — Znowu idzie jesień, Jesień idzie, nie ma na to rady! @@ -82,7 +82,7 @@ - Tekst zgodnie z oficialnš stronš A. Waligórskiego: www.waligorski.art.pl -- NN + Tekst zgodnie z oficialnš stronš A. Waligórskiego: www.waligorski.art.pl — NN diff --git a/songs/Jesien_w_gorach.xml b/songs/pl/poezja/Jesien_w_gorach.xml similarity index 94% rename from songs/Jesien_w_gorach.xml rename to songs/pl/poezja/Jesien_w_gorach.xml index f5ae4789..66a2ef48 100644 --- a/songs/Jesien_w_gorach.xml +++ b/songs/pl/poezja/Jesien_w_gorach.xml @@ -1,5 +1,5 @@ - + Sieciarz; A. Turbus diff --git a/songs/Jesienna_zaduma_(2).xml b/songs/pl/poezja/Jesienna_zaduma.xml similarity index 65% rename from songs/Jesienna_zaduma_(2).xml rename to songs/pl/poezja/Jesienna_zaduma.xml index 5e3bbb5a..ac1534b4 100644 --- a/songs/Jesienna_zaduma_(2).xml +++ b/songs/pl/poezja/Jesienna_zaduma.xml @@ -1,5 +1,5 @@ - + Jerzy Harasymowicz @@ -11,30 +11,30 @@ Nic nie mam Zdmuchnęła mnie ta jesień całkiem - Nawet nie wiem + Nawet nie wiem Jak tam sprawy za lasem - Rano wstaję poemat chwalę - Biorę się za słowo jak za chleb + Rano wstaję poemat chwalę + Biorę się za słowo jak za chleb - Rzeczywiście tak jak księżyc - Ludzie znają mnie tylko z jednej + Rzeczywiście tak jak księżyc + Ludzie znają mnie tylko z jednej Jesiennej strony Nic nie mam Tylko z daszkiem nieba zamyślony kaszkiet - Nie zważam + Nie zważam Na mody byle jakie - Piszę wyłącznie piszę wyłącznie + Piszę wyłącznie piszę wyłącznie Uczuć starym drapakiem - Rzeczywiście tak jak księżyc - Ludzie zn ają mnie tylko z jednej + Rzeczywiście tak jak księżyc + Ludzie zn ają mnie tylko z jednej Jesiennej strony diff --git a/songs/Jesienne_wino.xml b/songs/pl/poezja/Jesienne_wino.xml similarity index 68% rename from songs/Jesienne_wino.xml rename to songs/pl/poezja/Jesienne_wino.xml index 1708cbb4..dab5e522 100644 --- a/songs/Jesienne_wino.xml +++ b/songs/pl/poezja/Jesienne_wino.xml @@ -1,8 +1,8 @@ - + Andrzej Koczewski - Nie jestem pewien czy autorem muzyki nie jest Bogdański, różne źródła różnie mówią... I nie jestem pewien na 100% rozmieszczenia akordów, bo pisałem tak, jak ja gram (a ja gram ciut inne chwyty, choć chyba te są standardowe) + Nie jestem pewien czy autorem muzyki nie jest Bogdański, różne źródła różnie mówią… I nie jestem pewien na 100% rozmieszczenia akordów, bo pisałem tak, jak ja gram (a ja gram ciut inne chwyty, choć chyba te są standardowe) Andrzej Koczewski Andrzej Koczewski; Zbigniew Bogdański @@ -17,20 +17,20 @@ Usiądź razem ze mną - Spróbuj mego wina + Spróbuj mego wina Z czereśni wiśni resztek lata - Choć jesień się zaczyna - Tyle tej jesieni - Jeszcze jest przed nami + Choć jesień się zaczyna + Tyle tej jesieni + Jeszcze jest przed nami Zdążysz wrócić do domu - Nim noc zawita nad drogami, hej! + Nim noc zawita nad drogami, hej! Słońce stało w zenicie, bił południowy żar A w gardle kurz przebytych dróg Co tam spocznę chwilę przecież nie zaszkodzi - Do przejścia niedaleką jeszcze drogę mam - A ona kusi + Do przejścia niedaleką jeszcze drogę mam + A ona kusi @@ -38,18 +38,18 @@ Pod starą karczmą co rynek zamyka Zabrała moje srebro duszę i ostrogi Zostało pragnienie i tępy głowy ból - I pamięć jej słów + I pamięć jej słów Usiądź razem ze mną - Spróbuj mego wina + Spróbuj mego wina Z czereśni wiśni resztek lata - Choć jesień się zaczyna - Tyle tej jesieni - Jeszcze jest przed nami + Choć jesień się zaczyna + Tyle tej jesieni + Jeszcze jest przed nami Zdążysz wrócić do domu - Nim noc zawita nad drogami, hej! + Nim noc zawita nad drogami, hej! diff --git a/songs/Jesienne_wspominanki.xml b/songs/pl/poezja/Jesienne_wspominanki.xml similarity index 91% rename from songs/Jesienne_wspominanki.xml rename to songs/pl/poezja/Jesienne_wspominanki.xml index abf3382f..5f34ff3e 100644 --- a/songs/Jesienne_wspominanki.xml +++ b/songs/pl/poezja/Jesienne_wspominanki.xml @@ -1,12 +1,6 @@ - - - Maciej Służała - - - - - + + Maciej Służała Letnich wieczorów wspomnienie @@ -32,7 +26,7 @@ Na pociechę sięgamy do pudeł Wyciągamy stare fotografie Zapatrzeni w nie cicho myślimy - O lecie które będzie -- jakie? + O lecie które będzie — jakie? @@ -47,11 +41,12 @@ - + + + - diff --git a/songs/pl/poezja/Jesienny_obrazek.xml b/songs/pl/poezja/Jesienny_obrazek.xml new file mode 100644 index 00000000..319ddf85 --- /dev/null +++ b/songs/pl/poezja/Jesienny_obrazek.xml @@ -0,0 +1,68 @@ + + + + Maciej Służała + + Maciej Służała + + + + + + Klucz ptaków na niebie wygląda wspaniale + Choć chmury zwiastują deszczową pogodę + Wiatr liście pozrywał i rzucił na trawę + A niebo jest dziwnie różowe + + + Jesienny obrazek malują małe ręce + + Las i ptaki i nic więcej + Jesienny obrazek malują małe ręce + + Las i ptaki i nic więcej + + + + + + + W tym małym obrazku zmieściło się wszystko + Co jesień ze sobą przyniosła na pola + I słońce i deszcz i namiot niebieski + Rozbity pod starą topolą + + + + + + + + Deszcz chyba już pada, lecz słońce wciąż świeci + Zaraz powinna pojawić się tęcza + To cały obrazek spod dziecinnej ręki + I cała to o nim piosenka + + + + + + + + + + + + Alek + + + + + chord positioning + + + + + + + diff --git a/songs/Jest_juz_za_pozno,_nie_jest_za_pozno.xml b/songs/pl/poezja/Jest_juz_za_pozno_nie_jest_za_pozno.xml similarity index 92% rename from songs/Jest_juz_za_pozno,_nie_jest_za_pozno.xml rename to songs/pl/poezja/Jest_juz_za_pozno_nie_jest_za_pozno.xml index 5d480939..d18bf0f4 100644 --- a/songs/Jest_juz_za_pozno,_nie_jest_za_pozno.xml +++ b/songs/pl/poezja/Jest_juz_za_pozno_nie_jest_za_pozno.xml @@ -1,5 +1,5 @@ - + Edward Stachura @@ -9,7 +9,7 @@ - Jeszcze zdążymy w dżungli ludzkości siebie odnaleźć + Jeszcze zdążymy w dżungli ludzkości siebie odnaleźć Tęskność zawrotna przybliża nas diff --git a/songs/Jestem_maly_mis.xml b/songs/pl/poezja/Jestem_maly_mis.xml similarity index 98% rename from songs/Jestem_maly_mis.xml rename to songs/pl/poezja/Jestem_maly_mis.xml index ba10a7cb..34744d67 100644 --- a/songs/Jestem_maly_mis.xml +++ b/songs/pl/poezja/Jestem_maly_mis.xml @@ -1,5 +1,5 @@ - + Georges Brassens diff --git a/songs/pl/poezja/Jeszcze_nie_czas.xml b/songs/pl/poezja/Jeszcze_nie_czas.xml new file mode 100644 index 00000000..8b69c534 --- /dev/null +++ b/songs/pl/poezja/Jeszcze_nie_czas.xml @@ -0,0 +1,62 @@ + + + + + + Wieczór w granatowym swym płaszczu + Gwiazdy już pozapalał + Z kątów wyłażą zrudziałe smutki + A my gramy na swych gitarach + I ciche nutki zbieramy + By grały nam razem do taktu + Niebieskie myśli odganiamy + Bo przecież jeszcze nie czas + + + Jeszcze nie czas swe marzenia do walizek kłaść + Jeszcze nie czas, by piosenki nasze śpiewał tylko wiatr + Jeszcze nie czas, by gitary spały na dnie szaf + Póki tyle jest muzyki jeszcze w nas + + + A kiedy zabraknie przyjaciół + By wieczór przegadać do rana + To przecież masz jeszcze swoją gitarę + Strun kilka, melodii parę + Gdy piasek nie chce się wsypać + Pod oczy i do snu zaprosić + To trzeba gdzieś odejść, by dłużej nie płakać + I smutku w swym sercu nie nosić + + + + Gdy włożą cię w dębową skrzynkę + Niech włożą razem z gitarą + Niech w niebie ci grają struny srebrzyste + Melodię twą ukochaną + + + + + + + + Alek + + + + + + Tekst zgodny z nagraniem — Alek + + + + Andrzej Koczewski + Andrzej Koczewski + + + + + + + diff --git a/songs/Jezioro_(4).xml b/songs/pl/poezja/Jezioro.xml similarity index 98% rename from songs/Jezioro_(4).xml rename to songs/pl/poezja/Jezioro.xml index d6206373..7930a69b 100644 --- a/songs/Jezioro_(4).xml +++ b/songs/pl/poezja/Jezioro.xml @@ -1,5 +1,5 @@ - + Jan Błyszczak diff --git a/songs/Kaganek.xml b/songs/pl/poezja/Kaganek.xml similarity index 80% rename from songs/Kaganek.xml rename to songs/pl/poezja/Kaganek.xml index 298d7fbf..1cdc8f7e 100644 --- a/songs/Kaganek.xml +++ b/songs/pl/poezja/Kaganek.xml @@ -1,5 +1,5 @@ - + @@ -13,21 +13,21 @@ Płomień chwieje się, tańczy i drga. By wskazywać drogę zbłąkanym, W oknie twoim się pali do dnia, - Do dnia, do dnia... + Do dnia, do dnia Każdy z nas szuka gdzieś swego światła By mu drogę wskazało przez mrok Każdy z nas wierzy w mały kaganek By móc prędzej w tę noc zrobić krok - Zrobić krok, zrobić krok... + Zrobić krok, zrobić krok… Może kiedy i ty stąd wyruszysz Przyjdzie nocą wędrować przez trakt Jakoś raźniej ci będzie na duszy - Gdy światełko zobaczysz wśród chat - Wśród chat, wśród chat... + Gdy światełko zobaczysz wśród chat + Wśród chat, wśród chat… @@ -39,7 +39,7 @@ - poezja śpiewana + Poezja śpiewana diff --git a/songs/Kamienie_(3).xml b/songs/pl/poezja/Kamienie.xml similarity index 97% rename from songs/Kamienie_(3).xml rename to songs/pl/poezja/Kamienie.xml index 71c197d8..547569df 100644 --- a/songs/Kamienie_(3).xml +++ b/songs/pl/poezja/Kamienie.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/poezja/Karol_Levittoux.xml b/songs/pl/poezja/Karol_Levittoux.xml new file mode 100644 index 00000000..bc157a67 --- /dev/null +++ b/songs/pl/poezja/Karol_Levittoux.xml @@ -0,0 +1,110 @@ + + + + Jerzy Czech + Nie jestem pewien, czy ta piosenka nie wystąpiła na jakimś nagraniu przed 'Kamieniami'. Ale na kamieniach na pewno jest. + Przemysław Gintrowski + Przemysław Gintrowski + + + + + Zbrodniczy spisek w gimnazjalnej klasie + Zagraża państwu w jego spokój godzi + + Inspiratorów wkrótce wykryć da się + Wciąż niepoprawni Polaczkowie młodzi + Ten Levittoux był hersztem jak się zdaje + Przez niego w duszę sączy się trucizna + Śledztwo prowadźcie zgodnie ze zwyczajem + W mig się przyzna prędko się przyzna + + + Drogi panie Levittoux + Prawdę wyznać chciej + Gdy wspólników podasz tu + Sercu będzie lżej + Milczysz panie Levittoux + Nie unikniesz kar + Młodzież wiodłeś ty ku złu + Smuci się nasz car + + + Mury kazamat dostatecznie grube + Żeby krzyk każdy wytłumić dokładnie + ogosławiony kto przejdzie tę próbę + A kto się złamie przekleństwo nań spadnie + Logika dziejów nakłada kajdany + Sprawiedliwości zgrzytają zasuwy + I ciągle jedna myśl tłucze o ściany + Nic nie mówić, nie mówić, nie mówić + + + Wszakże panie Levittoux + Nie działałeś sam + Gdy cię pozbawimy snu + Wszystko powiesz nam + Miejże rozum Levittoux + Próżny jest twój trud + Żadnej strawy nie dać mu + By go złamał głód + + + Na przesłuchaniu wziął czterysta pałek + Konieczny był tu bezpośredni przymus + Śledztwo da skutek jeśli jest wytrwałe + Bez końca przecież nie może się trzymać + Zwinięty w szmatę leży sztandar ciała + Szarpie go w strzępy ptaszysko dwugłowe + Krwią pokreślona pleców karta biała + Na niej napis nie powiem, nie powiem + + + W końcu z ciebie Levittoux + Tryśnie zeznań zdrój + Zaznasz knuta dzień po dniu + Pęknie upór twój + Chciałeś uciec Levittoux + Coś ci słabo szło + Krzycz do ostatniego tchu + Nas nie wzruszy to + + + Ponad siennikiem migoce kaganek + Mniej boli ogień niźli ran płomienie + Dziś sobie takie rozścielę posłanie + Co moją celę w jeden krzyk zamieni + Skąpo tu światła Moskale mi dali + + Ale wystarczy żeby spłonął człowiek + Patrzcie jak długo ten więzień się pali + Co już nic nie powie, nie powie + + + Zwęglone resztki wyniesiono rano + Ból szybko wsiąka w kamień cytadeli + Po incydencie tym rozkaz wydano + By więźniom światła nie dawać do celi + + + + + + + Onufry + + + + + + + + + chord positioning + + + + + Kamienie + Poezja śpiewana + diff --git a/songs/Kiedy_w_piatek.xml b/songs/pl/poezja/Kiedy_w_piatek.xml similarity index 90% rename from songs/Kiedy_w_piatek.xml rename to songs/pl/poezja/Kiedy_w_piatek.xml index 80c97aac..df032822 100644 --- a/songs/Kiedy_w_piatek.xml +++ b/songs/pl/poezja/Kiedy_w_piatek.xml @@ -1,9 +1,9 @@ - + Strąkowski - Kiedy w piątek słońce świeci + Kiedy w piątek słońce świeci Serce mi do góry wzlata Że w sobotę wezmę plecak W podróż do mojego świata. diff --git a/songs/pl/poezja/Kim_wlasciwie_byla_ta_piekna_pani_ktora_pewnego_wieczoru_w_mojej_samotni_mnie_odwiedzila.xml b/songs/pl/poezja/Kim_wlasciwie_byla_ta_piekna_pani_ktora_pewnego_wieczoru_w_mojej_samotni_mnie_odwiedzila.xml new file mode 100644 index 00000000..5b1399bd --- /dev/null +++ b/songs/pl/poezja/Kim_wlasciwie_byla_ta_piekna_pani_ktora_pewnego_wieczoru_w_mojej_samotni_mnie_odwiedzila.xml @@ -0,0 +1,75 @@ + + + Madame + Edward Stachura + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + Kim byłaś... + + + + Lalalala lalalalala, lalalala lalalala, lalala, lalala, lalala + + + + Nikt nie zna ścieżek gwiazd + Wybrańcem kto wśród nas + Zapukał ktoś to do mnie gość + Włóczyłem się jak ci + Czekałem na ten dzi + Już stoisz w drzwiach jak dziwny ptak + + + + Więc bardzo proszę wejdź + Tu siadaj rozgość się + I zdradź mi kim tyś jest madame + Albo nie zdradzaj mi + Lepiej nie mówmy nic + Lepiej nie mówmy nic + + + + Nieśmiało sunie brzask + Zatrzymać chciałbym czas + Inaczej jest czas musi biec + Gdzieś w dali zapiał kur + Niemodny wdziewasz strój + Już stoisz w drzwiach jak dziwny ptak + + + + Więc jednak musisz pójść + Posyłasz mi przez próg + Ulotny uśmiech swój madame + Lecz będę czekać przyjdź + Gdy tylko zechcesz przyjdź + Będziemy razem ż + + Ja będę czekać przyjdź + Gdy tylko zechcesz przyjdź + Będziemy razem ż + + + + + + + + OnufryKrzysiek Cz. + + + + + + + chord positioning + + + + + Dla wszystkch starczy miejsca + Poezja śpiewana + \ No newline at end of file diff --git a/songs/pl/poezja/Klasowka_z_fragmentu_wolnosci.xml b/songs/pl/poezja/Klasowka_z_fragmentu_wolnosci.xml new file mode 100644 index 00000000..8ee46aa9 --- /dev/null +++ b/songs/pl/poezja/Klasowka_z_fragmentu_wolnosci.xml @@ -0,0 +1,85 @@ + + + Krzysztof Daukszewicz + + + Nie pomni dziś filozof pan + Historyk i teolog + Kto pierwszy krzyknął - Wolność dam! + Czy tyran, czy też prorok? + I co na myśli człek ów miał + Też nikt z nas nie pamięta + Czy łańcuch, co dwie ręce skuł + Czy rozerwane pęta? + + + Lecz: Wolność! Wolny! + Jak pięknie się odmienia + Wolność! Wolny! + Przez wieki bez wytchnienia + Wolność! Wolny! + I nikt jej nie rozbudził + Bo wolność, ludzie + To tylko lep na ludzi + + + Bo ten, co wisiał w cieniu drzew + Przed śmiercią się pocieszał + Że to za wolność, chociaż też + Tak myślał ten, co wieszał + A ten, co wydał rozkaz: śmierć + Szampanem się uraczył + Bo wyrok brzmiał: za wolność! + Więc pan sędzia mu wybaczył + + + + I trwa to już tysiące lat + I nic się tu nie zmienia + Krzyczymy przede wszystkim tak + By spały nam sumienia + Choć każdy wiek przykłady dał + Te przypłacone głową + By wierzyć, że ta wolność + To nie tylko piękne słowo + + + + Więc leją się przez cały czas + Krwi purpurowe strugi + Bo zawsze jednym bywa śmierć + By wolność była drugim + I zawsze jakiś człowiek jest + Co w czasach niespokojnych + Zarzuca sobie pętlę, bo + Naprawdę chce być wolnym + + + + + + + Onufry + + + + + + + + + chord positioning + + + + + + Krzysztof Daukszewicz + Krzysztof Daukszewicz + + + + Prośba + Poezja śpiewana + + diff --git a/songs/Kochac.xml b/songs/pl/poezja/Kochac.xml similarity index 96% rename from songs/Kochac.xml rename to songs/pl/poezja/Kochac.xml index 7ed6a5ac..a3067ae3 100644 --- a/songs/Kochac.xml +++ b/songs/pl/poezja/Kochac.xml @@ -1,5 +1,5 @@ - + Piotr Szczepanik diff --git a/songs/Kochaj_mnie_i_dotykaj.xml b/songs/pl/poezja/Kochaj_mnie_i_dotykaj.xml similarity index 60% rename from songs/Kochaj_mnie_i_dotykaj.xml rename to songs/pl/poezja/Kochaj_mnie_i_dotykaj.xml index ffb8eba6..4eb97309 100644 --- a/songs/Kochaj_mnie_i_dotykaj.xml +++ b/songs/pl/poezja/Kochaj_mnie_i_dotykaj.xml @@ -1,5 +1,5 @@ - + Tomasz Żółtko @@ -8,57 +8,57 @@ Dawnych mistyków ludzkiej duszy pieśń - Księżyca ciemna strona + Księżyca ciemna strona Słońce zabija na raty nas - W nadfiolecie + W nadfiolecie Schodami do nieba zacząłem się piąć - Tam nie ma autostrady + Tam nie ma autostrady Myślę o Tobie, a ptakiem jest myśl - Zbytek słów - Me światy są obce bez nocy i dnia - Tam wiersze z obłędu powstają + Zbytek słów + Me światy są obce bez nocy i dnia + Tam wiersze z obłędu powstają Lecz póki tu jestem, proszę, kochaj mnie, - Dotykaj mnie... + Dotykaj mnie… - Dotykaj delikatnie, bezszelestnie, ciepłem palców - Dotykaj, aksamitnie, rzęs pokłonem, nie przestawaj - Dotykaj, całowaniem i oddechem, tak jak lubisz - Dotykaj, smugą włosów, niby muślin, bólowi zadaj ból + Dotykaj delikatnie, bezszelestnie, ciepłem palców + Dotykaj, aksamitnie, rzęs pokłonem, nie przestawaj + Dotykaj, całowaniem i oddechem, tak jak lubisz + Dotykaj, smugą włosów, niby muślin, bólowi zadaj ból Kochaniem samotność można wypić do dna - Choć to trudne + Choć to trudne Miłość prawdziwą daje tylko Bóg - I zrozumienie + I zrozumienie Wszędzie Go szukam, dla niego chcę ż - Wbrew potępieniom + Wbrew potępieniom Tęsknię za ciszą bezludnych wysp, - Dzikich pl - Me światy są obce bez nocy i dnia - Tam wiersze z obłędu powstają + Dzikich pl + Me światy są obce bez nocy i dnia + Tam wiersze z obłędu powstają Lecz póki tu jestem, proszę, kochaj mnie, - Dotykaj mnie... + Dotykaj mnie… - Wiem, że chcesz wspólnych snów - Dam ci je, nie bój się, nie bój s + Wiem, że chcesz wspólnych snów + Dam ci je, nie bój się, nie bój s Dziwne jest piękne, wciąż twierdzę tak - Gorsząc dewotów + Gorsząc dewotów Na urodziny sam sobie dziś dam - Znak pokoju + Znak pokoju Kochaniem samotność można wypić do dna - Choć to trudne + Choć to trudne Więcej nic nie mów, tylko przytul się - Dotykaj mnie... + Dotykaj mnie… I więcej nic nie mów, tylko kochaj mnie - Jestem Twój... + Jestem Twój… diff --git a/songs/Kolekcja_(2).xml b/songs/pl/poezja/Kolekcja.xml similarity index 98% rename from songs/Kolekcja_(2).xml rename to songs/pl/poezja/Kolekcja.xml index 6c1759c4..abeed90b 100644 --- a/songs/Kolekcja_(2).xml +++ b/songs/pl/poezja/Kolekcja.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/poezja/Kolysanka_dla_Joanny_I.xml b/songs/pl/poezja/Kolysanka_dla_Joanny_I.xml new file mode 100644 index 00000000..4f38a0df --- /dev/null +++ b/songs/pl/poezja/Kolysanka_dla_Joanny_I.xml @@ -0,0 +1,55 @@ + + + Wolna Grupa Bukowina + + + Zanim mi sen na oczy spłynie + Moje myśli szybują przez lufcik + Żeby cię ujrzeć w ową chwilę + Gdy włosy czeszesz przed lustrem + + + A kiedy zaśniesz w ciepłej pościeli + Zmęczone długim przelotem + Jak ptaki głowy w skrzydła wtulają + Patrząc na sen twój spokojny + + + Niech ci się przyśnią pory roku + Niech grają we śnie twoim i tańczą + Jesień prężąca liście do lotu + Lato w upale słonecznym + + + A jeśli zima, to w śniegu cała + Wiosna w miłków wiosennych łąkach + + Śpij, moje myśli nad tobą czuwają + Na parapecie za oknem + + + + + + + + Krzysiek Cz. - zgodnie ze śpiewnikiem + + + + + chords + + + + + + + + + + + + + + diff --git a/songs/pl/poezja/Kolysanka_dla_misiakow.xml b/songs/pl/poezja/Kolysanka_dla_misiakow.xml new file mode 100644 index 00000000..3e3b4084 --- /dev/null +++ b/songs/pl/poezja/Kolysanka_dla_misiakow.xml @@ -0,0 +1,53 @@ + + + Martyna Jakubowska + Chcę Ci dać trochę wiary w cud + + + W tym pokoju bardzo cicho dziś + Po trzech dniach nareszcie śpisz + Gdzieś za drzwiami został ból + Całych siebie chcemy dać + Kilku ludzi dobrze nas zna + Tylko czasem słabnie nam puls + + + + Już dobrze, dobrze j + + + + Może trzeba upaść na twarz + Swoje rzeczy ubogiemu dać + I zacząć malować bez farb + Przeklinamy dzień za dniem + Śpisz, bo życie nie, nie jest snem + Taki ciężar tylko zgina ci kark + + + + W kącie siedzi Anioł Stróż + Strzeże naszych ciał i dusz + Za godzinę muszę wyjść + Przyjdź po bliskość moich ust + Chcę Ci dać trochę wiary w cud + Póki możesz moje wino pij + + + + + + + + + + chord positioning + + + Onufry + Krzysiek Cz. - literówki + Adam F.:Na płycie którą mam tytuł brzmi: Chcę Ci dać trochę wiary w cud (Kołysanka dla misiaków) - zmieniłem na taki, ale się nie upieram przy nim tym :-) + Poprawiłem rozmieszczenie akordów nad tekstem, zmieniłem tonację, poprawiłem tekst w drugiej zwrotce (dodatkowe "nie"), poprawiłem akordy w wersji nie nad tekstem (lepiej napisać "DGD"), na końcu śpiewa się 4 razy - nie wiedziałem jak to zapisać-> dałem 2 x refren + + + diff --git a/songs/pl/poezja/Koncert.xml b/songs/pl/poezja/Koncert.xml new file mode 100644 index 00000000..0c4281c3 --- /dev/null +++ b/songs/pl/poezja/Koncert.xml @@ -0,0 +1,69 @@ + + + Aleksandra Kiełb + Aleksandra Kiełb + Stare Dobre Małżeństwo / Ola Kiełb + + + + + + W kołnierz wtulam twarz + Chowam się przed miastem + Jego cienie żłobią w mojej twarzy wąwóz + Trzeszczy jak ułamek szkła + Mój codzienny niepokój + Jak wydostać się z cienia + Może wtedy + + + + Gdyby koncert grać + Ten na trąbki i skrzypce + Tak by dźwięki ułożyły się w wiersz + Gdyby łyżką światła + Rozweselić to wszystko + Żeby we mnie zaśpiewało coś t + + Żeby we mnie zaśpiewało coś t + + + Rośnie we mnie mgła + Jak ze studzien stu + Nie wiem ilu trzeba ksiąg, by ją rozwi + Jedno wiem, że muszę biec + Póki sił mi wystarczy + Póki tylko ta nuta + Mam ją w sobie + + + + Będę koncert grać + Ten na trąbki i skrzypce + Tak by dźwięki ułożyły się w wiersz + Będę łyżką światła rozweselać to wszystko + Żeby w tobie zaśpiewało coś też + + Żeby w tobie zaśpiewało coś też + + + + + + + + + + Pod wielkim dachem nieba + + + + + chord positioning + + + Onufry + Adam Foland + + + diff --git a/songs/pl/poezja/Koniec.xml b/songs/pl/poezja/Koniec.xml new file mode 100644 index 00000000..e192979c --- /dev/null +++ b/songs/pl/poezja/Koniec.xml @@ -0,0 +1,63 @@ + + + + + + + + + + + + Już ostatni płomień zgasł + Trzeba odejść kryjąc twarz + Przez życzliwie uchylone drzwi + + + Ktoś powiedział nazbyt wiele + Ktoś się poczuł przyjacielem + I z dnia na dzień nie zostało nic + + + Ktoś powiedział nazbyt wiele + Ktoś się poczuł przyjacielem + I z dnia na dzień nie zostało nic + + + Jutro wstanie nowy dzień po staremu + Dzwoni mleczarz butelkami daje zn + I na pewno nic na zewnątrz się nie zmieni + Trzeba sobie tylko jakoś z sobą samym radę d + + + Już ostatni płomień zgasł + To już koniec na mnie czas + Drugi brzeg w oddali dawno znikł + + + Tyle serca kosztowało + Jak wyjść teraz z tego cało + Gdy z dnia na dzień nie zostało nic + + + Tyle serca kosztowało + Jak wyjść teraz z tego cało + Gdy z dnia na dzień nie zostało nic + + + + + + + + + + + chord positioning + + + Kuba + + NIe wiem, jak zaznaczyć, że tam pod koniec część się powtarza itd. + + diff --git a/songs/pl/poezja/Korowod.xml b/songs/pl/poezja/Korowod.xml new file mode 100644 index 00000000..151933af --- /dev/null +++ b/songs/pl/poezja/Korowod.xml @@ -0,0 +1,80 @@ + + + + Marek Grechuta + + Marek Grechuta + Marek Grechuta + + + + + Kto pierwszy szedł przed siebie + Kto pierwszy cel wyznaczył + Kto pierwszy w nas rozpoznał + Kto wrogów kto przyjaciół + Kto pierwszy sławę wszelką + I włości swe miał za nic + A kto nie umiał zasnąć + Nim nie wymyślił granic? + + + Kto pierwszy w noc bezsenną + Wymyślił wielką armię + Kto został bohaterem + Kto żył i umarł marnie + Kto pierwszy został panem + Kto pierwszy został sługą + Kto musiał wstawać wcześnie + A kto mógł spać za długo? + + + Zapatrzeni w słońce + Zapatrzeni w niebo + Zapatrzeni w tańcu + Zapatrzeni w siebie + Wciąż niepewni siebie + Siebie niewiadomi + Pytać wciąż będziemy + Pytać po kryjomu + + + Kto pierwszy szedł przed siebie + Kto pierwszy cel wyznaczył + Kto pierwszy w nas rozpoznał + Kto wrogów kto przyjaciół + Kto pierwszy możnym radził + A kto był buntownikiem + Kto pierwszy został sobą + Kto pierwszy został nikim? + + + Kto pierwszy był fakirem + Kto pierwszy astrologiem + Kto pierwszy został królem + A kto chciał zostać bogiem + Kto z gwiazdozbioru Wega + Patrząc na Ziemię zgadnie + Kto pierwszy był człowiekiem + Kto będzie nim ostatni? + + + + + + + + Onufry + + + + + + chord positioning + + + + + + + diff --git a/songs/pl/poezja/Krajka.xml b/songs/pl/poezja/Krajka.xml new file mode 100644 index 00000000..534c2347 --- /dev/null +++ b/songs/pl/poezja/Krajka.xml @@ -0,0 +1,191 @@ + + + + + + + T. Chmielewski + + + + + + + + + + + + + + + + Chorałem dzwonków dzień rozkwita, + + Jeszcze od rosy rzęsy mokre, + + We mgle turkoce pierwsza bryka, + + ońce wyrusza na włóczęgę. + + Drogą pylistą, drogą polną, + + Jak kolorowa panny krajka, + + ońce się wznosi nad stodołą, + + Będzie tańczyć walca. + + + + + + + + A ja mam swoją gitarę, + + Spodnie wytarte i buty stare, + + Wiatry niosą mnie daleko, + + + + A ja mam swoją gitarę, + + Spodnie wytarte i buty stare, + + Wiatry niosą mnie. + + + + + + Schrypnięte skrzypki stroją świerszcze, + + Żuraw się wsparł o cembrowinę, + + Wiele nanosi wody jeszcze, + + Wielu się ludzi z niej napije. + + Helios dojechał na południe, + + + + Od potu ludzkie karki mokre, + + W kurzu terkoce druga bryka, + + ońce w zenicie nad stodołą. + + Drogą pylistą, drogą polną, + + Jak kolorowa panny krajka, + + ońce w zenicie nad stodołą, + + Dalej tańczy walca. + + + + + + + + Zapachem siana gra muzyka, + + Wieczorną rosą zioła mokre, + + Drogą przemknęła trzecia bryka, + + Purpurą płoną strzechy złote. + + Drogą pylistą, drogą polną, + + Jak kolorowa panny krajka, + + ońce zachodzi za stodołę, + + Kończy tańczyć walca. + + + + + + + + Poszumem, mgły się dzień zamyka, + + + + Ostatni świerszcz już schował skrzypce, + + W ciszy terkoce czwarta bryka, + + ońce już zaszło za stodołę. + + Drogą pylistą, drogą polną, + + Jak kolorowa panny krajka, + + ońce już zaszło za stodołą, + + Zakończyło walca. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + chord positioning + + + + + + Michał Korch + + + + + + Wiem tylko tyle, że z autorstwem ma coś wspólnego T. Chmielewski + + + + + + + + diff --git a/songs/pl/poezja/Krakow_Piwna_7.xml b/songs/pl/poezja/Krakow_Piwna_7.xml new file mode 100644 index 00000000..e6a4500b --- /dev/null +++ b/songs/pl/poezja/Krakow_Piwna_7.xml @@ -0,0 +1,67 @@ + + + Andrzej Sikorowski + Pod Budą + + + Byłem u wróżki - Piwna 7 + Wysokie kręte schody + Ile mi jeszcze chciałem wiedzieć + Upłynie w Wiśle wody + Jaka mnie kiedyś czeka bieda + Lub jakie urodzaje + Czy mi gitarę przyjdzie sprzedać + Czy lecieć na Hawaje + A wróżka puka + W szkalną kulę + I mówi do mnie czule + + + Przed tobą sława + Wieczna zabawa + Wszystko jak z nut + Pieniędzy w bród + Wspaniałe płyty + Piękne kobiety + Zdrowie jak dzwon + Wygodny tron + + + Żegnam staruszkę lekki cały + I ruszam w dół po schodach + Nagle potykam się o mały + Wyjątek w jej prognozach + I myślę tak spadając z hukiem + Niby dojrzała gruszka + W końcu przyszedłem po naukę + Zatem niech żyje wróżka + Niech częściej puka + W szklaną kulę + I mówi do nas czule + + + + Przed wami sława + Wieczna zabawa + Wszystko jak z nut + Pieniędzy w bród + Wspaniałe płyty + Piękne kobiety + Zdrowie jak dzwon + Wygodny tron + + + + + + + + Zmowa Z Zegarem + Poezja śpiewana + + + + + + + diff --git a/songs/pl/poezja/Kubus.xml b/songs/pl/poezja/Kubus.xml new file mode 100644 index 00000000..02332ba7 --- /dev/null +++ b/songs/pl/poezja/Kubus.xml @@ -0,0 +1,84 @@ + + + Walczyk grzecznego Kubusia + Waldemar Chyliński lub Jacek Zwoźniak + Tu znalazłem nagranie: + +1984: https://youtu.be/Q1xk_DQ25jU?si=Lih8C3__Vr8Vpzmt&t=2549 + +i + +1987: https://youtu.be/PPqOC3jT334?si=5hVan1O3PxRJ36jN&t=4326 + OCIPIEC + + + Na stole stoi wazonik, + Pierdut w wazonik kamieniem, + Jak pięknie wazonik zadzwoni, + Cichutko spadając na ziemię. + Na łóżku śpi sobie babcia, + Lecz babcia jest trochę głucha, + Lecz może mej babci pomoże, + Gdy włożę jej druta do ucha. + + + To walczyk grzecznego Kubusia, + Znanego w całym miasteczku, + Co nocą do majtek nie siusia, + I grzecznie się bawi w piaseczku. + + + Dziadkowi, co od lat trzydziestu + Fajeczkę ćmi nałogowo, + Zamieniam tytoń „Amfora” + Z mieszanką ciut ciut wybuchową. + Gdy dziadek się w nocy obudził, + Fajeczkę zapalił po cichu, + To tak mu buchnęło z cybucha, + Że babci szukał na strychu. + + + + Mój tata to też jest aparat, + Czasami nie wraca do domu, + Lecz ja go tego oduczę, + Do kawy wsypuję mu bromu. + O mamie mojej w tym względzie + Powiedzieć nie mogę nic złego, + Na wszelki wypadek do zupy + Dolewam jej kwasu solnego. + + + + Na górze mieszka sąsiadka, + Której nie lubi mamusia, + Więc jutro jej z samego rana, + W butelkę po mleku nasiusiam. + Malutką córeczkę sąsiadki + Po cichu w bramie zaszkoczę, + Na siłę jej ściągnę majteczki + I gumkę wyciągnę na procę. + + + + I rośnie nam Kubuś malutki, + I rośnie nam Kubuś wspaniały, + I rośnie nam chluba narodu, + Przepraszam dziś naród za mały. + + + + + + + Piosenka kabaretowa + + + + chord positioning + + + Michał + + + diff --git a/songs/Kubus_Puchatek.xml b/songs/pl/poezja/Kubus_Puchatek.xml similarity index 96% rename from songs/Kubus_Puchatek.xml rename to songs/pl/poezja/Kubus_Puchatek.xml index 5b9ffe42..6b2a2217 100644 --- a/songs/Kubus_Puchatek.xml +++ b/songs/pl/poezja/Kubus_Puchatek.xml @@ -1,5 +1,5 @@ - + @@ -36,7 +36,7 @@ W czwartek miał Kubuś problem totalny Bo się spotkali już naturalnie - Najpierw ze strachem -- rzekł -- potem hardziej + Najpierw ze strachem — rzekł — potem hardziej To właśnie Tygrys lubił najbardziej diff --git a/songs/Labedzi_puch.xml b/songs/pl/poezja/Labedzi_puch.xml similarity index 97% rename from songs/Labedzi_puch.xml rename to songs/pl/poezja/Labedzi_puch.xml index 6e03e7c5..a676a45a 100644 --- a/songs/Labedzi_puch.xml +++ b/songs/pl/poezja/Labedzi_puch.xml @@ -1,5 +1,5 @@ - + Wolna Grupa Bukowina diff --git a/songs/pl/poezja/Lato_z_ptakami_odchodzi.xml b/songs/pl/poezja/Lato_z_ptakami_odchodzi.xml new file mode 100644 index 00000000..7399da67 --- /dev/null +++ b/songs/pl/poezja/Lato_z_ptakami_odchodzi.xml @@ -0,0 +1,63 @@ + + + + + + Adam Cichocki + + + + + + Lato z ptakami odchodzi + Wiatr skręca liście w warkocze + Dywanem okrywa szlaki + Szkarłaty wiesza na zboczach + + + Przyoblekam myśli w kolory + W liści złoto w buków purpurę + Palę w ogniu letnie wspomnienia + Idę wymachując kosturem + + + + Idę w góry cieszyć się życiem + Oddać dłoniom halnego włosy + W szelest liści wsłuchać się pragnę + W odlatujących ptaków głosy + + + + ony pot czuję w ustach + Dzień spracowany ucieka + Anioł zapala gwiazdy + Oświetla drogę człowieka + + + Już niedługo rozpalę ogień + Na rozległej górskiej polanie + Już niedługo szałas zielony + Wśród dostojnych buków powstanie + + + + + + + + AlekOnufryKrzysiek Cz. + + + + + Sprawdzono i rozmieszczono akordy refrenu — Alek + + chord positioning + + + + + + + diff --git a/songs/pl/poezja/Lemkowyna.xml b/songs/pl/poezja/Lemkowyna.xml new file mode 100644 index 00000000..f5fa3f0c --- /dev/null +++ b/songs/pl/poezja/Lemkowyna.xml @@ -0,0 +1,79 @@ + + + + Krzysztof Jurkiewicz + + Krzysztof Jurkiewicz + Słodki Całus od Buby + + + + + Dusza moja kamienna + I serce z kamienia + I oczy zmrożone + Granitami szczytów + Zimne echo ulicy + Odbija kroki + I kolana chłodzi posadzka kościoła + + + I cóż mi powiesz + Panienko przeczysta jarzębino + Ikono leśna + Przydrożna leszczyno + Czegóż mnie nauczysz + Pod drewnianym dachem + Płomykiem lampki drżącym + Bukowym zapachem + + + onie moje stalowe + I nerwy ze stali + Zimna porcelana + Błyszczący widelec + Nawet krzyż na ścianę + Wykrojony z blachy + I żelaznym gwoździem + Przybity do muru + + + + Nigdy nie zrozumiem + Waszych ciepłych dłoni + I drewnianych łyżek + Nasiąkniętych zupą + Twarz przytulam do belek + Lecz ukłon do progu + I wracam do siebie + Żelazną koleją + + + I cóż mi powiesz + Panienko przeczysta jarzębino + Ikono leśna + + Przydrożna leszczyno + Czegóż mnie nauczysz + Pod drewnianym dachem + Płomykiem lampki drżącym + Bukowym zapachem + + + + + + + + + + + chord positioning + + + Onufry + + Rozmieszczenie akordów jest tak, jak ja gram. Wydaje mi się, że oryginał jest inny szczególnie w linijkach "ikono leśna przydrożna leszczyno", pewnie też w kilku innych miejscach. +Tekst ciut (w dwóch miejscach) odbiega od standardu drużyny, pisany wg strony wykonawców. + + diff --git a/songs/Leniwa_niedziela.xml b/songs/pl/poezja/Leniwa_niedziela.xml similarity index 97% rename from songs/Leniwa_niedziela.xml rename to songs/pl/poezja/Leniwa_niedziela.xml index 8703bafc..03f00c73 100644 --- a/songs/Leniwa_niedziela.xml +++ b/songs/pl/poezja/Leniwa_niedziela.xml @@ -1,5 +1,5 @@ - + Krzysztof Daukszewicz @@ -22,7 +22,7 @@ - + Asfalt pachnie świeżym deszczem @@ -38,7 +38,7 @@ - + Pani lekkich obyczajów @@ -54,7 +54,7 @@ - + Docent z chłopskim pochodzeniem @@ -70,7 +70,7 @@ - + Dyplomatę sen rozbudził @@ -86,7 +86,7 @@ - + A chłopaki z braku zdarzeń @@ -102,7 +102,7 @@ - + A po drodze mkną górnicy @@ -118,7 +118,7 @@ - + A na stacji benzynowej @@ -134,7 +134,7 @@ - + diff --git a/songs/List.xml b/songs/pl/poezja/List.xml similarity index 58% rename from songs/List.xml rename to songs/pl/poezja/List.xml index a529874a..5700901c 100644 --- a/songs/List.xml +++ b/songs/pl/poezja/List.xml @@ -1,5 +1,5 @@ - + Duet całoroczny @@ -14,41 +14,41 @@ List do najpiękniejszej kobiety jaką znałem Serce miałem kiedyś jedno i mi się - Potrzaskało staraszliwie i doszczętnie + Potrzaskało straszliwie i doszczętnie I nie udało mi się posklejać skorupek tego - Dzbanka ani łzami -- tym klejem białym - Ani krwią -- tym klejem czerwonym - Nie udało mi się i myślałem że już + Dzbanka ani łzami — tym klejem białym + Ani krwią — tym klejem czerwonym + Nie udało mi się i myślałem, że już Zawsze będę tak żyć bez serca Lecz nagle zjawiłaś się Ty i pomóc chciałaś mi - Czemu? - nie wiem do dziś + Czemu? - nie wiem do dziś - Przygarnęłaś mnie bo byłem jak bezpański pies + Przygarnęłaś mnie, bo byłem jak bezpański pies I nie wiem skąd wzięłaś do serca mego klej - Dałaś mi ciepło swe dałaś mi dobroć swą - Twe piękno było dla mnie i serce twe + Dałaś mi ciepło swe dałaś mi dobroć swą + Twe piękno było dla mnie i serce twe - Byłem tak szczęśliwy, mało szczęścia przedtem miałem - Skleiłaś serce me -- kochać zacząłem Cię + Byłem tak szczęśliwy, mało szczęścia przedtem miałem + Skleiłaś serce me — kochać zacząłem Cię - Lecz wielkie szczęście tak już jest nie może dla mnie wiecznie trwać - Gdy już kochałem Cię ode mnie odwróciłaś się - To moja wina, tak ja wiem, miłości mojej nie można znieść - Lecz za te chwile szczęścia -- dziękuję Ci + Lecz wielkie szczęście tak już jest nie może dla mnie wiecznie trwać + Gdy już kochałem Cię ode mnie odwróciłaś się + To moja wina, tak ja wiem, miłości mojej nie można znieść + Lecz za te chwile szczęścia — dziękuję Ci - Ten list piszę teraz bo rozmawiać ze mną nie chcesz już - Może zaśpiewam kiedyś go by go wysłuchać ktoś mógł - Może ten ktoś gdzieś spotka Cię, opowie dziękczynienie me + Ten list piszę teraz bo rozmawiać ze mną nie chcesz już + Może zaśpiewam kiedyś go by go wysłuchać ktoś mógł + Może ten ktoś gdzieś spotka Cię, opowie dziękczynienie me W ten sposób dowiesz się Jak bardzo wciąż niestety kocham Cię @@ -59,8 +59,8 @@ - P.S. Naprawdę dziękuję Ci za to że dzięki Tobie mogę znowu kochać ludzi - Że mogę śpiewać im o szczęściu którego zasmakowałem przy Tobie + P.S. Naprawdę dziękuję Ci za to że dzięki Tobie mogę znowu kochać ludzi + Że mogę śpiewać im o szczęściu którego zasmakowałem przy Tobie diff --git a/songs/List_do_Malego_Ksiecia.xml b/songs/pl/poezja/List_do_Malego_Ksiecia.xml similarity index 87% rename from songs/List_do_Malego_Ksiecia.xml rename to songs/pl/poezja/List_do_Malego_Ksiecia.xml index 8aa314e3..d81822c9 100644 --- a/songs/List_do_Malego_Ksiecia.xml +++ b/songs/pl/poezja/List_do_Malego_Ksiecia.xml @@ -1,5 +1,5 @@ - + @@ -12,20 +12,20 @@ - + - + - + - + - + Zagubieni Książę jesteśmy @@ -35,7 +35,7 @@ - + Niespokojnie Książe żyjemy @@ -45,7 +45,7 @@ - + Nasze wieczne ucieczki wycieczki @@ -53,24 +53,24 @@ Kiedy niebo Cię olśni Wiesz że zaczął się wielki taniec - + - + - + - + - + - + Pod gwiazdami Książe jesteśmy @@ -78,24 +78,24 @@ Niebo śmieje się otwarcie I nie trzeba wtedy nic więcej - + - + - + - + - + - + diff --git a/songs/List_do_swiata.xml b/songs/pl/poezja/List_do_swiata.xml similarity index 97% rename from songs/List_do_swiata.xml rename to songs/pl/poezja/List_do_swiata.xml index 57f36bf3..e9ad8d11 100644 --- a/songs/List_do_swiata.xml +++ b/songs/pl/poezja/List_do_swiata.xml @@ -1,5 +1,5 @@ - + Andrzej Sikorowski diff --git a/songs/listoczekaniu.xml b/songs/pl/poezja/List_o_czekaniu.xml similarity index 62% rename from songs/listoczekaniu.xml rename to songs/pl/poezja/List_o_czekaniu.xml index 6bbf642d..9f8eca89 100644 --- a/songs/listoczekaniu.xml +++ b/songs/pl/poezja/List_o_czekaniu.xml @@ -1,71 +1,71 @@ - - - - Wojciech Bellon - - Wojciech Szymański - Dom o Zielonych Progach - - - - - Śmiechem pisane z kalendarza, - Kartki rozwiały się po świecie, - U obcych ludzi śpią w rupieciach - Pamiątki niegdysiejszych zdarzeń. - - - Leniwie daty chat się chylą - Przed karczmą w stylu nowoczesnym. - A tej dla Ciebie słowa pieśni, - Którego nie ma który byłeś. - - - - Znów pora, nasza górska jesieni, - Powietrze liśćmi rozzłocone, - Pachnie drewnianym ciepłem domu - I mrokiem starych opowieści. - - - - Przyjdzie rzuci twoje imię, - Ze śmiechem spyta jak Ci leci, - A tej dla ciebie słowa pieśni, - Którego nie ma który byłeś. - - - Dni na okrągło jak kapusta, - Czas ani miodem ani mlekiem, - Może czekaniem na człowieka - Wypełnić miejsce po nim puste. - - - - - - - - - - - - - - - W górach jest wszyatko co kocham - Poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - - + + + + Wojciech Bellon + + Wojciech Szymański + Dom o Zielonych Progach + + + + + Śmiechem pisane z kalendarza, + Kartki rozwiały się po świecie, + U obcych ludzi śpią w rupieciach + Pamiątki niegdysiejszych zdarzeń. + + + Leniwie daty chat się chylą + Przed karczmą w stylu nowoczesnym. + A tej dla Ciebie słowa pieśni, + Którego nie ma który byłeś. + + + + Znów pora, nasza górska jesieni, + Powietrze liśćmi rozzłocone, + Pachnie drewnianym ciepłem domu + I mrokiem starych opowieści. + + + + Przyjdzie rzuci twoje imię, + Ze śmiechem spyta jak Ci leci, + A tej dla ciebie słowa pieśni, + Którego nie ma który byłeś. + + + Dni na okrągło jak kapusta, + Czas ani miodem ani mlekiem, + Może czekaniem na człowieka + Wypełnić miejsce po nim puste. + + + + + + + + + + + + + + + W górach jest wszyatko co kocham + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/Madonna.xml b/songs/pl/poezja/Madonna.xml similarity index 77% rename from songs/Madonna.xml rename to songs/pl/poezja/Madonna.xml index b4a7d4a1..a8270e59 100644 --- a/songs/Madonna.xml +++ b/songs/pl/poezja/Madonna.xml @@ -1,5 +1,5 @@ - + @@ -9,10 +9,10 @@ - Polsko--ruska madonna - Polsko--starocerkiewna + Polsko--ruska madonna + Polsko--starocerkiewna Z gorejącego złota - Z żywego drewna, srebra + Z żywego drewna, srebra Bizantyjsko--słowiańska @@ -25,7 +25,7 @@ Nie bojarska, nie carska Zasmucona, kamienna twarz Nie bojarska, nie carska - Zasmucona, chłopska ikona + Zasmucona, chłopska ikona diff --git a/songs/Majka.xml b/songs/pl/poezja/Majka.xml similarity index 83% rename from songs/Majka.xml rename to songs/pl/poezja/Majka.xml index 6378504c..19862c93 100644 --- a/songs/Majka.xml +++ b/songs/pl/poezja/Majka.xml @@ -1,5 +1,5 @@ - + @@ -13,8 +13,8 @@ Do mej najdroższej, jak rzeka wiernej - O, o, Majka, nie jestem Ciebie wart - Majka, zmieniłbym dla Ciebie cały świat + O, o, Majka, nie jestem Ciebie wart + Majka, zmieniłbym dla Ciebie cały świat Choć dni mijają i czas ucieka diff --git a/songs/pl/poezja/Majster_bieda.xml b/songs/pl/poezja/Majster_bieda.xml new file mode 100644 index 00000000..3b8289c5 --- /dev/null +++ b/songs/pl/poezja/Majster_bieda.xml @@ -0,0 +1,73 @@ + + + Wolna Grupa Bukowina + + + + + + + Skąd przychodził kto go znał + Kto mu rękę podał kiedy + Nad rowem siadał wyjmował chleb + Serem przekładał i dzielił się z psem + Tyle wszystkiego co z sobą miał + Majster Bieda + + + Czapkę z głowy ściągał gdy + Wiatr gałęzie chylił drzewom + Śmiał się do słońca i śpiewał do gwiazd + Drogę bez końca co przed nim szła + Znał jak pięć palców jak szeląg zły + Majster Bieda + + + Nikt nie pytał skąd się wziął + Gdy do ognia się przysiadał + Wtulał się w krąg ciepła jak w kożuch + Znużony drogą wędrowiec boży + Zasypiał długo gapiąc się w noc + Majster Bieda + + + Aż nastąpił taki rok + Smutny rok tak widać trzeba + Nie przyszedł Bieda zieloną wiosną + Miejsce gdzie siadał zielskiem zarosło + I choć niejeden wytężał wzrok + Choć lato pustym gościńcem przeszło + Z rudymi liśćmi jesieni schedą + Wiatrem niesiony popłynął w przeszłość + Wiatrem niesiony popłynął w przeszłość + Wiatrem niesiony popłynął w przeszłość + Majster Bieda + + + + + + Onufry + + + + + + + + + chord positioning + + + + + + Wojciech Bellon + Wojciech Bellon + + + + Bukowina + Poezja śpiewana + + diff --git a/songs/Makatka_kuszaca.xml b/songs/pl/poezja/Makatka_kuszaca.xml similarity index 95% rename from songs/Makatka_kuszaca.xml rename to songs/pl/poezja/Makatka_kuszaca.xml index 9d568314..4d4edb7b 100644 --- a/songs/Makatka_kuszaca.xml +++ b/songs/pl/poezja/Makatka_kuszaca.xml @@ -1,5 +1,5 @@ - + Adam Ziemianin @@ -30,7 +30,7 @@ Że jest dla nas znowu łaskawy A pod wieczór cicho przyjdą Skrzydlaci wysłannicy Pana - Nie jadłem żadnego ogryzka -- powiem + Nie jadłem żadnego ogryzka — powiem Skusiły mnie tylko jabłka diff --git a/songs/pl/poezja/Makatka_z_aniolem.xml b/songs/pl/poezja/Makatka_z_aniolem.xml new file mode 100644 index 00000000..af7ea4fb --- /dev/null +++ b/songs/pl/poezja/Makatka_z_aniolem.xml @@ -0,0 +1,52 @@ + + + + Adam Ziemianin + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + Na twarzy twej rumieńce + Jakbyś był uduchowiony + Przez gruźlicę płuc a dobroć twą nieziemską + Zamykasz na niebieski klucz + Zamykasz na niebieski klucz + + + Najczęściej można spotkać cię + Nad przepaścią lukrowaną + Gdy przez dziurawą kładkę + Przeprowadzasz swoje dzieci + + + Nocą może chciałbyś + Oderwać się od ściany + Ale jedno skrzydło gwóźdź ci przedziurawił + Więc zostajesz z nami + Na wieki wieków amen + + + + + + + + + Onufry + + + + + + + + + + + + + + diff --git a/songs/Maly_Ksiaze.xml b/songs/pl/poezja/Maly_Ksiaze.xml similarity index 97% rename from songs/Maly_Ksiaze.xml rename to songs/pl/poezja/Maly_Ksiaze.xml index 1f9f448d..e392b990 100644 --- a/songs/Maly_Ksiaze.xml +++ b/songs/pl/poezja/Maly_Ksiaze.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/poezja/Marinette.xml b/songs/pl/poezja/Marinette.xml new file mode 100644 index 00000000..03bbd25f --- /dev/null +++ b/songs/pl/poezja/Marinette.xml @@ -0,0 +1,88 @@ + + + + Georges Brassens + + Georges Brassens + Zespół Reprezentacyjny + Jarosław Gugała + Marinette + + + Ujrzałem po raz pierwszy ją gdzieś w tłumie na ulicy + i pierwszym już spojrzeniem do swych stóp rzuciła mnie. + + + Zdumiony, tylko gębę głupio rozdziawiłem, + wybałuszyłem durne ślepia swe + + + + + + + + + + + + + + + Poszedłem potem do niej, by zaśpiewać jej piosenkę, + Lecz powiedziano mi, że w filharmonii właśnie jest. + + + Z gitarą w rękach, gębę głupio rozdziawiłem + wybałuszyłem durne ślepia swe. + + + Gdy w któreś popołudnie słój z musztardą jej przyniosłem, + ma miła chwilę przedtem już raczyła skończyć jeść. + + + Na słój się gapiąc, gębę tylko rozdziawiłem, + wybałuszyłem durne ślepia swe. + + + Gdy w dniu urodzin rower jej w prezencie chciałem oddać, + jej kochający tatuś właśnie auto sprawił jej. + + + Więc na rowerze siedząc, gębę rozdziawiłem, + wybałuszyłem durne ślepia swe. + + + A kiedy się z mą miłą pewnej nocy umówiłem, + po ciemku z jakimś typem strasznym pomyliła mnie. + + + Na ich umizgi patrząc, gębęvrozdziawiłem, + wybałuszyłem durne ślepia swe. + + + Następnym razem nóż zabrałem, by z nią wreszcie skończyć, + lecz powiedziano mi,że śmierć przerwała życie jej. + + + Więc z nożem w garści gębę głupio rozdziawiłem, + wybałuszyłem durne ślepia swe + + + Nieotulony w żalu więc poszedłem na jej pogrzeb, + Lecz ją cudownym trafem odratować dało się. + + + Z żałobnym wieńcem w dłoniach gębę rozdziawiłem + wybałuszyłem durne ślepia swe. + + + + + + + + + + Pornograf + diff --git a/songs/pl/poezja/Miasto.xml b/songs/pl/poezja/Miasto.xml new file mode 100644 index 00000000..3104b304 --- /dev/null +++ b/songs/pl/poezja/Miasto.xml @@ -0,0 +1,86 @@ + + + + Krzysztof Jurkiewicz + + Krzysztof Jurkiewicz + Słodki Całus od Buby + + + + + + + + Ciemną nocą po schodach uliczek + Po gorących Mostu kamieniach + Pełen piwa łeb niosę w chmurach + I gitarę i pustkę w kieszeniach + + + + Żegnam się z Miastem + Które sto się moje + Jego wieże jego drogi + Kroki moje + Żegnam się z Miastem + Jego Mostem gdzie wieczorem + Spadały gwiazdy monet + Za muzykę + + + + + + Nazbierałem po całym Mieście + Sprawy ważne i te nic nie warte + Ot w podeszwach dziury na wylot + Bicie dzwonów, bramy otwarte + + + + + + + + Gwiazdy w rzece tu się zaczyna + I tu kończy opowieść moja + Chciałbym dzisiaj jak wtedy wieczorem + Siedzieć z Tobą na Moście Karola + + + + + + + + + + + + + + + + Jeszcze raz na żywo znowu we Wrocławiu + + + + + + + + chord positioning + + + Onufry + + Krzysiek Cz. + + + + + + Wielkie litery przy Most i Miasto (a także przy Tobie) pochodzą z www.scob.art.pl, nie ruszać mi ich. + + diff --git a/songs/Michal_Wolodyjowski.xml b/songs/pl/poezja/Michal_Wolodyjowski.xml similarity index 96% rename from songs/Michal_Wolodyjowski.xml rename to songs/pl/poezja/Michal_Wolodyjowski.xml index 7022f770..91a1f778 100644 --- a/songs/Michal_Wolodyjowski.xml +++ b/songs/pl/poezja/Michal_Wolodyjowski.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/poezja/Miedzy_nami_tyle_sniegu.xml b/songs/pl/poezja/Miedzy_nami_tyle_sniegu.xml new file mode 100644 index 00000000..70bff224 --- /dev/null +++ b/songs/pl/poezja/Miedzy_nami_tyle_sniegu.xml @@ -0,0 +1,61 @@ + + + + Adam Ziemianin + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + Ślady Twoje zasypało + W śniegu całkiem się zgubiły + Szukać trudno — wszędzie biało + Czekać — też nad moje siły + Gdzie Cię poniosło na tych saniach? + Co Ci się stało w środku zimy? + A jeszcze latem byłaś ze mną + Czy w twoje życie wszedł ktoś inny? + + + Między nami tyle śniegu + Między nami tyle lodu + Czy trafimy znów na siebie + W naszych oknach szyby chłodu + Może wiosna Cię odmieni + Może lato da zapomnieć + Czekam tylko do jesieni + Więc przypomnij sobie o mnie + + + Mam po Tobie listów kilka + I krzyżówkę bez dwóch haseł + Pięć biletów tramwajowych + Pewnie dzisiaj też nie zasnę + Bo wciąż w myślach biję się ze sobą + Gdybyś dziś znów stanęła na progu + Ze śniegu pewnie bym Cię otrzepał + I dziękował sam nie wiem komu + + + + + + + + + + + chord positioning + + + Kuba + + + + + + + + diff --git a/songs/Miejcie_nadzieje.xml b/songs/pl/poezja/Miejcie_nadzieje.xml similarity index 87% rename from songs/Miejcie_nadzieje.xml rename to songs/pl/poezja/Miejcie_nadzieje.xml index 0d117a20..fca1db8a 100644 --- a/songs/Miejcie_nadzieje.xml +++ b/songs/pl/poezja/Miejcie_nadzieje.xml @@ -1,12 +1,8 @@ - - - - - - - - - + + + Adam Asnyk + Zbigniew Preisner + Jacek Wójcicki Miejcie nadzieję nie tę lichą marną @@ -23,7 +19,7 @@ Miejcie odwagę nie tę tchnącą szałem Która na oślep leci bez oręża - + Lecz tę co sama niezdobytym wałem Przeciwne losy stałością zwycięża @@ -31,7 +27,7 @@ Przestańmy własną pieścić się boleścią Przestańmy ciągłym lamentem się poić - + Kochać się w skargach jest rzeczą niewieścią Mężom przystoi w milczeniu się zbroić @@ -39,7 +35,7 @@ Lecz nie przestańmy czcić świętości swoje I przechowywać ideał czystości - + Do nas należy dać im moc i zbroję By z kraju marzeń przeszły w rzeczywistość @@ -47,17 +43,18 @@ Miejcie nadzieję nie tę lichą marną Co rdzień spruchniały w wątły kwiat ubiera - + Lecz tę niezłomną która tkwi jak ziarno Przyszłych poświęceń w duszy bohatera - + + + - - + \ No newline at end of file diff --git a/songs/Milosc.xml b/songs/pl/poezja/Milosc.xml similarity index 71% rename from songs/Milosc.xml rename to songs/pl/poezja/Milosc.xml index abeabd4c..2b5894ac 100644 --- a/songs/Milosc.xml +++ b/songs/pl/poezja/Milosc.xml @@ -1,5 +1,5 @@ - + K. K. Baczyński @@ -9,30 +9,30 @@ - ońce słońce w ramionach + ońce słońce w ramionach Czy twego ciała kryształ pełen Owoców białych gdzie zdrój zielony tryska - Gdzie oczy miękkie w mroku + Gdzie oczy miękkie w mroku Tak pół mnie a pół Bogu - Twych kroków korowody + Twych kroków korowody W urojonych alejach twe odbicia U wody jak w pragnieniach nadziejach Twe usta u źródeł To syte to znów głodne - I Twój śmiech i płakanie + I Twój śmiech i płakanie Nie odpłynie zostanie - Uniosę je przeniosę + Uniosę je przeniosę Jak ramionami głosem - W czas daleki wysoko - W obcowanie obłokom - Tak pół mnie a pół Tobie + W czas daleki wysoko + W obcowanie obłokom + Tak pół mnie a pół Tobie diff --git a/songs/Mily_moj.xml b/songs/pl/poezja/Mily_moj.xml similarity index 72% rename from songs/Mily_moj.xml rename to songs/pl/poezja/Mily_moj.xml index b58ea9eb..e1bfa44c 100644 --- a/songs/Mily_moj.xml +++ b/songs/pl/poezja/Mily_moj.xml @@ -1,5 +1,5 @@ - + Aleksandra Kiełb @@ -13,11 +13,11 @@ - Do mnie tu przyjdź i słuchaj pieśni - Złożonej z tęsknot, marzeń wyobraźni + Do mnie tu przyjdź i słuchaj pieśni + Złożonej z tęsknot, marzeń wyobraźni A jeśli chcesz to zabrzmi głośniej - Ty dodasz do niej miłość swą + Ty dodasz do niej miłość swą Miły mój w deszczu do mnie biegł @@ -34,11 +34,11 @@ - Ta wielka noc gdy pierwszy strach + Ta wielka noc gdy pierwszy strach Trzymał ciała nasze na odległość ramion - Dawno już dziś zszarzała zbladła - Wchodzimy razem w jasny dzi + Dawno już dziś zszarzała zbladła + Wchodzimy razem w jasny dzi @@ -46,15 +46,15 @@ - Gdy miły mój zgubi drogę - I mówi do mnie -- daj mi rękę miła + Gdy miły mój zgubi drogę + I mówi do mnie — daj mi rękę miła Nie trzeba już nic więcej mówić - Dzielimy każdy śmiech i łzy + Dzielimy każdy śmiech i łzy - La la la... + La la la… diff --git a/songs/Mniszek_(3).xml b/songs/pl/poezja/Mniszek.xml similarity index 97% rename from songs/Mniszek_(3).xml rename to songs/pl/poezja/Mniszek.xml index 9bbab3ea..6cdde030 100644 --- a/songs/Mniszek_(3).xml +++ b/songs/pl/poezja/Mniszek.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Modlitwa_jesienna.xml b/songs/pl/poezja/Modlitwa_jesienna.xml similarity index 94% rename from songs/Modlitwa_jesienna.xml rename to songs/pl/poezja/Modlitwa_jesienna.xml index 5cb16ee6..88af93bf 100644 --- a/songs/Modlitwa_jesienna.xml +++ b/songs/pl/poezja/Modlitwa_jesienna.xml @@ -1,5 +1,5 @@ - + Mirosław Ostrycharz diff --git a/songs/pl/poezja/Modlitwa_wedrownego_grajka.xml b/songs/pl/poezja/Modlitwa_wedrownego_grajka.xml new file mode 100644 index 00000000..e6dc4259 --- /dev/null +++ b/songs/pl/poezja/Modlitwa_wedrownego_grajka.xml @@ -0,0 +1,69 @@ + + + + Jan Kasprowicz + Tekst oryginalny Kasprowicza odbiega od powyższego (w szczególności ma ciut więcej zwrotek i w nieco innej kolejności) + Andrzej Mróz + Seta + + + + + Przy małej wiejskiej kapliczce + Stojącej wedle drogi + Ukląkł rzępoląc na skrzypkach + Wędrowny grajek ubogi + Od czasu do czasu grający + Bezzębne otwierał wargi + To przekomarzał się z Bogiem + To znowu się korzył bez skargi + + + + Hej Panie Boże coś wielkim + Gazdą nad gazdami + Po coś mi dał taką skrzypkę + Co jeno tumani i mami + + + + Spraw to ażebym na zawsze + Umiał dziękować ci Panie + Że sobie rzępolę jak mogę + Że daję ci na co mnie stanie + A jeszcze bardziej chroń mnie + I od najmniejszej zawiści + Że są na świecie grajkowie + Pełni szumniejszych myśli + + + + I niechaj pomnę w mym życiu + Czy bliskim czy też dalekim + Żem człekiem jest przede wszystkim + I niczym więcej jak człekiem + Spraw w końcu by przy tej kapliczce + Obok tej wiejskiej drogi + Klękał i grywał na skrzypkach + Wędrowny grajek ubogi + + + + + + + + Onufry + + Słowa sprawdzane wg oryginalnego wiersza Kasprowicza. Usunąłem tylko rażące archaizmy + + + + chord positioning + + + + + + Poezja śpiewana + diff --git a/songs/pl/poezja/Moi_przyjaciele.xml b/songs/pl/poezja/Moi_przyjaciele.xml new file mode 100644 index 00000000..b4e47ecb --- /dev/null +++ b/songs/pl/poezja/Moi_przyjaciele.xml @@ -0,0 +1,77 @@ + + + Opowieść o przyjaźni + Agata Budzyńska + Zamiast "zagram dla was" w tekście oryginalnym jest "zagram klauna" ;) — tu pozwoliłem sobie nie zmienić, a resztę zmian wprowadziłem + Agata Budzyńska + Agata Budzyńska + + + + + Kiedy was nie ma, to jakby nagle + Zabrakło w moim życiu muzyki, + Kiedy was nie ma to czas mnie straszy, + Że przeminę, że będę chwilą. + Kiedy was nie ma, to jakby niebo + Miało się rozstać na zawsze ze słońcem, + Kiedy was nie ma, dość mam wszystkiego + I pragnę z stąd na zawsze odejść. + + + Moi przyjaciele, moi przyjaciele, + Moi przyjaciele, bądźcie zawsze ze mną, + Moi przyjaciele, moi przyjaciele, + Z Wami wiem, że wszystko mogę, + Że wystarczy tylko chcieć. + + + Jak mam wyśpiewać, jak mam dziękować? + Jak wytłumaczyć, że bez was mnie nie ma? + Przytulam do was swoją miłość, + I wdzięczność swą w modlitwę zamieniam. + Milion aniołków narysuje + I wszystkie razem postrącam z nieba, + Dom na górze wybuduje + I zagram dla was kiedy trzeba. + + + + Moi przyjaciele, moi przyjaciele, + Moi przyjaciele, bądźcie zawsze ze mną, + Moi przyjaciele, moi przyjaciele, + Z Wami wiem, że wszystko mogę, + Że wystarczy tylko chcieć. + + + + + + + + + + + Rozmowa z przyjacielem + + + + + + + + + chord positioning + + + Michał Korch + + + + + + + + + + diff --git a/songs/Moje_miasto.xml b/songs/pl/poezja/Moje_miasto.xml similarity index 96% rename from songs/Moje_miasto.xml rename to songs/pl/poezja/Moje_miasto.xml index fb2adac4..987f3338 100644 --- a/songs/Moje_miasto.xml +++ b/songs/pl/poezja/Moje_miasto.xml @@ -1,5 +1,5 @@ - + Arkadiusz Kobus diff --git a/songs/Mur_1.xml b/songs/pl/poezja/Mur_1.xml similarity index 96% rename from songs/Mur_1.xml rename to songs/pl/poezja/Mur_1.xml index ee5b1b22..8e6bb3ee 100644 --- a/songs/Mur_1.xml +++ b/songs/pl/poezja/Mur_1.xml @@ -1,5 +1,5 @@ - + Zbigniew Herbert diff --git a/songs/Mur_2.xml b/songs/pl/poezja/Mur_2.xml similarity index 96% rename from songs/Mur_2.xml rename to songs/pl/poezja/Mur_2.xml index 8928dae9..d2dc1e05 100644 --- a/songs/Mur_2.xml +++ b/songs/pl/poezja/Mur_2.xml @@ -1,10 +1,10 @@ - + - Zespół Reprezentacyjny Programu Trzeciego Polskiego Radia + Zespół Reprezentacyjny diff --git a/songs/Na_blekicie_jest_polana.xml b/songs/pl/poezja/Na_blekicie_jest_polana.xml similarity index 92% rename from songs/Na_blekicie_jest_polana.xml rename to songs/pl/poezja/Na_blekicie_jest_polana.xml index e1db56fd..c2beeeb0 100644 --- a/songs/Na_blekicie_jest_polana.xml +++ b/songs/pl/poezja/Na_blekicie_jest_polana.xml @@ -1,5 +1,5 @@ - + Edward Stachura @@ -10,7 +10,7 @@ Powiedz mi, powiedz co byś chciała, - Cuda ja czynię, cuda moja mała -- + Cuda ja czynię, cuda moja mała — Martwe zamieniam w żywe, Zgasłe w płonącą grzywę, Powiedz mi co byś chciała. @@ -34,7 +34,7 @@ Powiedz mi, powiedz co byś chciała, Cuda ja czynię, cuda moja mała. Masz chęć na lody może - Albo na młode zboże -- + Albo na młode zboże — Wszystko dla ciebie dziś zrobię, Mój ty mały wielki boże. diff --git a/songs/Na_kredyt_zaufania.xml b/songs/pl/poezja/Na_kredyt_zaufania.xml similarity index 94% rename from songs/Na_kredyt_zaufania.xml rename to songs/pl/poezja/Na_kredyt_zaufania.xml index c83b8358..608f3227 100644 --- a/songs/Na_kredyt_zaufania.xml +++ b/songs/pl/poezja/Na_kredyt_zaufania.xml @@ -1,5 +1,5 @@ - + Adam Ziemianin diff --git a/songs/pl/poezja/Na_potoczku-m_prala.xml b/songs/pl/poezja/Na_potoczku-m_prala.xml new file mode 100644 index 00000000..67f75dac --- /dev/null +++ b/songs/pl/poezja/Na_potoczku-m_prala.xml @@ -0,0 +1,70 @@ + + + + + + + + + + + + Na potoczku-m prała, + Na werboczku-m kłała, + Pomoży mi, Pan’e Boże, + Szczo-m sobi dumała. + + + Jam sobi dumała + Chłopcia mołodoho, + A mene wydali + Za dida staroho. + + + Jak mn’e wydawali, + Tak mene kazali, + Abyś moja Doniu + Dida czestuwała. + + + Ja dida czesuju, + Czestuwaty muszu, + Pomoży mi, Pan’e Boże, + Wiźmi z dida duszu! + + + Wiźmi z dida duszu, + Taj powiś na chruszu, + Szczuby starym znaty, + Jak mołodu braty. + + + Zabrał Boh staroho, + Nie dał mołodoho. + Pomoży mi, Pan’e Boże, + Widdaj choć staroho! + + + + + + + + + + + + + + + Onufry + + + + + + + + + Piosenka łemkowska + diff --git a/songs/Nadaremnosc.xml b/songs/pl/poezja/Nadaremnosc.xml similarity index 69% rename from songs/Nadaremnosc.xml rename to songs/pl/poezja/Nadaremnosc.xml index dc979eb8..4b59cc51 100644 --- a/songs/Nadaremnosc.xml +++ b/songs/pl/poezja/Nadaremnosc.xml @@ -1,5 +1,5 @@ - + Bolesław Leśmian @@ -9,11 +9,11 @@ - W znoju słońca mozolnie razem z ciszą dzwoni - Rozgrzanych płotów chrust. - Pocałunek sam siebie składa mi na skroni, + W znoju słońca mozolnie razem z ciszą dzwoni + Rozgrzanych płotów chrust. + Pocałunek sam siebie składa mi na skroni, - Sam - bez pomocy ust... + Sam - bez pomocy ust... @@ -21,7 +21,7 @@ Jaskółek płacz i śmiech - Do pokoju, spłowiałe wzdymając kotary, - Wyrywa się wiosny dech! + Wyrywa się wiosny dech! @@ -29,7 +29,7 @@ Wonny rozkwiecił bez, Przebacz, że wbrew twej wiedzy i przed czasem ginę - Z woli mych własnych łez!... + Z woli mych własnych łez!... diff --git a/songs/Nie_brooklinski_most.xml b/songs/pl/poezja/Nie_brooklinski_most.xml similarity index 95% rename from songs/Nie_brooklinski_most.xml rename to songs/pl/poezja/Nie_brooklinski_most.xml index 6b9f8283..9e5553c2 100644 --- a/songs/Nie_brooklinski_most.xml +++ b/songs/pl/poezja/Nie_brooklinski_most.xml @@ -1,5 +1,5 @@ - + Stare Dobre Małżeństwo diff --git a/songs/Nie_chodz_tam.xml b/songs/pl/poezja/Nie_chodz_tam.xml similarity index 62% rename from songs/Nie_chodz_tam.xml rename to songs/pl/poezja/Nie_chodz_tam.xml index 59a80a7f..836889fa 100644 --- a/songs/Nie_chodz_tam.xml +++ b/songs/pl/poezja/Nie_chodz_tam.xml @@ -1,8 +1,8 @@ - + Jerzy Reiser - Nie jestem na bank pewien, czy ta piosenka jest na "Jaworzynie", acz jest to jedyny album wydany przez Browar Żywiec, więc pewnie tak...<br>Nie jestem również pewien akordów - te dla mnie pasują, acz zdarza się sporo modyfikacji w różnych źródłach. + Nie jestem na bank pewien, czy ta piosenka jest na "Jaworzynie", acz jest to jedyny album wydany przez Browar Żywiec, więc pewnie tak…<br>Nie jestem również pewien akordów - te dla mnie pasują, acz zdarza się sporo modyfikacji w różnych źródłach. Jerzy Reiser Browar Żywiec @@ -12,39 +12,39 @@ Tak smutno patrzysz przez otwarte okno Już się latarnie w mieście zapalają I nic nie mówisz patrzysz tylko w dół - Nie chodź tam gdzie uliczny obcy tłum + Nie chodź tam gdzie uliczny obcy tłum Usiądź tu obok mnie w fotelu - onecznikowe pestki gr + onecznikowe pestki gr A ja piosenkę Ci zanucę - Tę której słuchać chciałabyś - Nie strącaj z biurka kałamarza - Nie zrywaj z kalendarza dni - Jeśli nie lubisz tej piosenki + Tę której słuchać chciałabyś + Nie strącaj z biurka kałamarza + Nie zrywaj z kalendarza dni + Jeśli nie lubisz tej piosenki Inną, ładniejszą zagram Ci Zasnęło słońce gdzieś za antenami Wyłażą koty z piwnic i śmietników Zadzwonił tramwaj już ostatni kurs - Nie chodź tam puste place zniknął tłum + Nie chodź tam puste place zniknął tłum A kiedy przyjdziesz do mnie znów pojutrze Popatrzysz smutno przez okno otwarte Wsłuchasz się w miasta przedwieczorny szum - Powiem Ci -- nie chodź tam gdzie obcy tłum + Powiem Ci — nie chodź tam gdzie obcy tłum - Siądziesz tu obok mnie w fotelu - onecznikowe pestki gryźć + Siądziesz tu obok mnie w fotelu + onecznikowe pestki gryźć A ja piosenkę Ci zanucę - Tę której słuchać chciałab - Może kałamarz strącisz z biurka - Lub z kalendarza zerwiesz dzi - Może już lubisz tę piosenkę + Tę której słuchać chciałab + Może kałamarz strącisz z biurka + Lub z kalendarza zerwiesz dzi + Może już lubisz tę piosenkę A może nawet lubisz mnie diff --git a/songs/pl/poezja/Nie_patrz_na_to_mila.xml b/songs/pl/poezja/Nie_patrz_na_to_mila.xml new file mode 100644 index 00000000..fe8a7099 --- /dev/null +++ b/songs/pl/poezja/Nie_patrz_na_to_mila.xml @@ -0,0 +1,72 @@ + + + + Andrzej Sikorowski + + Andrzej Sikorowski + Pod Budą + + + + + Świat jest taki a nie inny i zapewne się nie zmieni + ogłosili wczoraj słynni dwaj uczeni + a w przypadku słynnych ludzi każda myśl jest całkiem dobra + więc ci goście otrzymali zaraz Nobla + Mieli rację jest jak było czyli całkiem nieciekawie + w rowie leży pierwsza miłość po zabawie + jak się bawić to się bawić krzyż na szyi w dłoni "seta" + i na niebie czasem zjawi się kometa + + + + Zamknij oczy nie patrz na to moja miła + pod powieką znaczenie lepsze są widoki + i w tym nasza siła i w tym nasza siła + że umiemy jeszcze czasem marzyć + + + + Jak się bawić to się bawić a tu biedy coraz więcej + i ważniejszy jest karabin niźli serce + tutaj się zabawą żyje za to tępe rządzą głowy + a czasami kretyn z kijem bejsbolowym + Nie patrz miła na to wszystko człowiek musi się szanować + niech nie schyla się za nisko twoja głowa + lecz na chwilę moment jeden za to z góry ci dziękuję + otwórz oczy tylko kiedy mnie całujesz + + + A na resztę zamknij oczy moja miła + pod powieką znaczenie lepsze są widoki + i w tym nasza siła i w tym nasza siła + że umiemy jeszcze czasem marzyć + + + A na resztę zamknij oczy moja miła + pod powieką znaczenie lepsze są obrazy + + i w tym nasza siła i w tym nasza siła + że umiemy jeszcze czasem marzyć + + + + + + + + żal za + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + diff --git a/songs/Nie_-_prosba_o_reke.xml b/songs/pl/poezja/Nie_prosba_o_reke.xml similarity index 98% rename from songs/Nie_-_prosba_o_reke.xml rename to songs/pl/poezja/Nie_prosba_o_reke.xml index 55556c77..451fcbba 100644 --- a/songs/Nie_-_prosba_o_reke.xml +++ b/songs/pl/poezja/Nie_prosba_o_reke.xml @@ -1,5 +1,5 @@ - + Georges Brassens diff --git a/songs/pl/poezja/Nie_rozdziobia_nas_kruki.xml b/songs/pl/poezja/Nie_rozdziobia_nas_kruki.xml new file mode 100644 index 00000000..17e78b8d --- /dev/null +++ b/songs/pl/poezja/Nie_rozdziobia_nas_kruki.xml @@ -0,0 +1,63 @@ + + + + Edward Stachura + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + Nie rozdziobią nas kruki + Ni wrony, ani nic! + Nie rozszarpią na sztuki + Poezji wściekłe kły! + + + Ruszaj się Bruno, idziemy na piwo; + Niechybnie brakuje tam nas! + Od stania w miejscu niejeden już zginął, + Niejeden zginął już kwiat! + + + Nie omami nas forsa + Ni sławy pusty dźwięk! + Inną ścigamy postać: + Realnej zjawy tren! + + + + Nie zdechniemy tak szybko, + Jak sobie roi śmierć! + Ziemia dla nas za płytka, + Fruniemy w góry gdzieś! + + + + + + + + + + + + + + + + Dolina w długich cieniach + Poezja śpiewana + + + + + + Onufry + + + + + + diff --git a/songs/Nie_wierzcie_piechocie_(3).xml b/songs/pl/poezja/Nie_wierzcie_piechocie.xml similarity index 97% rename from songs/Nie_wierzcie_piechocie_(3).xml rename to songs/pl/poezja/Nie_wierzcie_piechocie.xml index a3d21562..bb7dede7 100644 --- a/songs/Nie_wierzcie_piechocie_(3).xml +++ b/songs/pl/poezja/Nie_wierzcie_piechocie.xml @@ -1,5 +1,5 @@ - + Bułat Okudżawa diff --git a/songs/Niebieska_piosenka.xml b/songs/pl/poezja/Niebieska_piosenka.xml similarity index 65% rename from songs/Niebieska_piosenka.xml rename to songs/pl/poezja/Niebieska_piosenka.xml index 4dbf392a..ee8149a8 100644 --- a/songs/Niebieska_piosenka.xml +++ b/songs/pl/poezja/Niebieska_piosenka.xml @@ -1,5 +1,5 @@ - + Grzegorz Tomczak Zmienne metrum - od słów "zaczniemy wirować" przechodzi na walcowe, na 3. @@ -13,9 +13,9 @@ Krętymi każe iść Kto nas usprawiedliwi gdy Pan się będzie dziwił Że to już właśnie my - Ja wstawię się za Tobą i z podniesioną głową + Ja wstawię się za Tobą i z podniesioną głową Dziękować będę że - Pan dał mi właśnie Ciebie w radości i w potrzebie + Pan dał mi właśnie Ciebie w radości i w potrzebie Na lepsze i na złe @@ -23,21 +23,21 @@ Bo chciałem tak i j I razem chleb jedliśmy i równym krokiem szliśmy Wśród wichrów pośród burz - Ty wciąż mnie ratowałaś za rękę mnie trzymałaś + Ty wciąż mnie ratowałaś za rękę mnie trzymałaś Gdy z drogi chciałem zejść - A ja otuchy krople gdy oczy miałaś mokre + A ja otuchy krople gdy oczy miałaś mokre Nie raz musiałem nieść I tak będziemy stali aż w tej niebieskiej sali Do walca zaczną gr Ja wtedy z pierwszym taktem poproszę Cię i raptem - Zaczniemy wirować, wolniutko walcować - I kręcąc się kręcić na palcach na pięcie - Troszeczkę bezmyślnie jak wiosną przebiśnieg - Ty nieco szalona, cóż żona to żona - I w mojej twa ręka niebieska piosenka - Za serca nas chwyta niebieska muzyka + Zaczniemy wirować, wolniutko walcować + I kręcąc się kręcić na palcach na pięcie + Troszeczkę bezmyślnie jak wiosną przebiśnieg + Ty nieco szalona, cóż żona to żona + I w mojej twa ręka niebieska piosenka + Za serca nas chwyta niebieska muzyka @@ -53,8 +53,8 @@ - Nie jestem pewien położenia ostatniego akordu. -- Onufry -Zamieniłem "a" na "a a7" zgodnie z wskazaniami Józka. -- Alek + Nie jestem pewien położenia ostatniego akordu. — Onufry +Zamieniłem "a" na "a a7" zgodnie z wskazaniami Józka. — Alek diff --git a/songs/Niedokonczona_jesienna_fuga.xml b/songs/pl/poezja/Niedokonczona_jesienna_fuga.xml similarity index 53% rename from songs/Niedokonczona_jesienna_fuga.xml rename to songs/pl/poezja/Niedokonczona_jesienna_fuga.xml index acfea824..a35900e0 100644 --- a/songs/Niedokonczona_jesienna_fuga.xml +++ b/songs/pl/poezja/Niedokonczona_jesienna_fuga.xml @@ -1,5 +1,5 @@ - + Wojciech Bellon @@ -16,40 +16,40 @@ A jeśli mnie dom buczyną spięty - tej nocy przyjmie w swoje progi - zapalę gwiazdy w nocy głębi + tej nocy przyjmie w swoje progi + zapalę gwiazdy w nocy głębi a sam zakwitnę górskim głogiem A jeśli mnie dom buczyną spięty - tej nocy przyjmie w swoje progi - zapalę gwiazdy w nocy głębi + tej nocy przyjmie w swoje progi + zapalę gwiazdy w nocy głębi a sam zakwitnę głogiem - Beskid kołysze się i szumi - i chwiać się będzie drżeniem nieba + Beskid kołysze się i szumi + i chwiać się będzie drżeniem nieba i horyzontu zmieni drogi - i umrzeć moim słowom nie da + i umrzeć moim słowom nie da - Do końca drogi swej noc zmierza - i płoną drzewa w nocnym chłodzie - czy gościem będę w nim czy muszę - do domu swego wejść jak złodziej + Do końca drogi swej noc zmierza + i płoną drzewa w nocnym chłodzie + czy gościem będę w nim czy muszę + do domu swego wejść jak złodziej - Beskid woła znak mi daje - wiem oto droga już niedługa - i trwa świt złocąc wyświechtana - jesiennym wiatrem biedna fuga + Beskid woła znak mi daje + wiem oto droga już niedługa + i trwa świt złocąc wyświechtana + jesiennym wiatrem biedna fuga diff --git a/songs/pl/poezja/Niepokoj.xml b/songs/pl/poezja/Niepokoj.xml new file mode 100644 index 00000000..5db1c27f --- /dev/null +++ b/songs/pl/poezja/Niepokoj.xml @@ -0,0 +1,64 @@ + + + + Józef Baran + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + Mosty które pod osłoną nocy + Przerzuciliśmy do siebie + Porywa świt + Trwa potop jutrzenki po obu brzegach + Bezradnie biegamy + Ręce do siebie wyciągamy + + + Twoje oczy + Rozwarte szeroko rozstaniem + Oddalają się i serce za nimi podąża + Oglądając się raz po raz za siebie + Oglądając się za siebie + + + Przez niebo przebiega dreszcz niepokoju + Rozstępuje się świat + Na dwie połowy + I coraz mniejsza staje się + Włosów chmura + Kasztanowa + + + + I twoja ręka wyrwana z mojej + Do stacji + Zbliżają s + Robotnicy dnia powszedniego + O twarzach przeraźliwie + Trzeźwych + + + + + + + + Kasia KowalskaOnufryKrzysiek Cz. + + + + + Drobne poprawki, dodałem kasetę. + + + chord positioning + + + + + Makatki + Poezja śpiewana + diff --git a/songs/Nina.xml b/songs/pl/poezja/Nina.xml similarity index 96% rename from songs/Nina.xml rename to songs/pl/poezja/Nina.xml index e9def30d..70e497a5 100644 --- a/songs/Nina.xml +++ b/songs/pl/poezja/Nina.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/poezja/Noc_albo_oczekiwanie_na_sniadanie.xml b/songs/pl/poezja/Noc_albo_oczekiwanie_na_sniadanie.xml new file mode 100644 index 00000000..583ffe36 --- /dev/null +++ b/songs/pl/poezja/Noc_albo_oczekiwanie_na_sniadanie.xml @@ -0,0 +1,57 @@ + + + Edward Stachura + Krzysztof Myszkowski + Pod Wielkim Dachem Nieba + Stare Dobre Małżeństwo + + + Ty się pochyl róża-bóg + ty się do mnie pochyl i + i na ucho jak kolczyk róża-bóg + aaa… + + + Moje ucho ma dzban + z niego pić tylko tobie nikomu + a twój kolczyk jak ucho na dzban + aaa… + + + O modlitwy mnie wabisz + O, wabisz. Że błysk noża + w najpiękniejsze serce kozy + aaa… + + + Z tobą czystość zachować to gorzej + każdy lew by się spalił już dawno + las popiołu z jego grzywy nic więcej + aaa… + + + Ty się pochyl róża-bóg + Ty się do mnie pochyl we mnie + Wytryśniemy jak słońce wytryśnie + aaa… + aaa… + + + + + + + Krzysiek Cz. + + + + + + + + + + + + + diff --git a/songs/Noc_niespodzianek.xml b/songs/pl/poezja/Noc_niespodzianek.xml similarity index 97% rename from songs/Noc_niespodzianek.xml rename to songs/pl/poezja/Noc_niespodzianek.xml index 60b7e6e0..3c4e7040 100644 --- a/songs/Noc_niespodzianek.xml +++ b/songs/pl/poezja/Noc_niespodzianek.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/poezja/Noc_w_bacowce.xml b/songs/pl/poezja/Noc_w_bacowce.xml new file mode 100644 index 00000000..3d6e7bbb --- /dev/null +++ b/songs/pl/poezja/Noc_w_bacowce.xml @@ -0,0 +1,57 @@ + + + + + + Porwały nas deszczem, + Przegoniły wiatrem + I zdały na siebie. + W przygodnym nam domu + Miejsca nie zagrzały, + W tym górskim niby niebie. + + + + I dziury w tym niebie + Wiatrem łatane, + W bacówce tylko my sami. + I nic nie mówimy + Tylko dotyk ręki + By nie psuć chwil, + Co przed nami + + + + A mrok - sprzymierzeniec + Przygarnął mi Ciebie, + Ciepło - Twoje ręce. + (Ech) stara bacówko + Niebo w nas się rodzi, + Przyjaźń czy coś więcej. + + + + + + + + + Onufry + + + + chord positioning + + + + + + + + + + + + + + diff --git a/songs/pl/poezja/Nocna_piosenka_o_miescie.xml b/songs/pl/poezja/Nocna_piosenka_o_miescie.xml new file mode 100644 index 00000000..471538bb --- /dev/null +++ b/songs/pl/poezja/Nocna_piosenka_o_miescie.xml @@ -0,0 +1,87 @@ + + + + Wojciech Bellon + Ostatnią zwrotkę śpiewa się w kanonie, do wspólnego wyhamowania na 'W mieście jak ryby tramwaje' + Bukowina + Wojciech Bellon + Wolna Grupa Bukowina + + + + + + W mieście jak ryby tramwaje + A miasto jak studnia bez dna + A niebo jak żuraw, a niebo jak żuraw + Schyla się nocą i świtem powstaje + Nad rybną studnią bez dna + + + + Zaułków lipcem sparzonych + Wyciszyć nie może zmrok + Zasiedli na ławkach, zasiedli na ławkach + Ludzie co twarze dniem umęczone + Pod lipiec kładą i zmrok, pod lipiec kładą i zmrok + + + + Nie śpię, bo spotkać chcę w mieście + Tę ciszę, co gęsta jak noc + Rozmawiać z krokami, swoimi krokami + I oto idę nocy na przeciw + Bo wokół cisza i noc + + + + Czekam, aż neon przytłumi + Rozmyta latarnia dnia + Odnajdą się cienie, odnajdą się cienie + I ludźmi ulice zatłumią + Czekam na przyjście dnia, czekam na przyjście dnia + + + W mieście jak ryby tramwaje + A miasto jak studnia bez dna + A niebo jak żuraw, a niebo jak żuraw + Schyla się nocą i świtem powstaje + Nad rybną studnią bez dna + + + + W mieście jak ryby tramwaje + A miasto jak studnia bez dna + A niebo jak żuraw, a niebo jak żuraw + Schyla się nocą i świtem powstaje + Nad rybną studnią bez dna + + + + + + + + Onufry + + + + + + + + + + + + + + + + chord positioning + + + + + Poezja śpiewana + diff --git a/songs/Nowa_(2).xml b/songs/pl/poezja/Nowa.xml similarity index 98% rename from songs/Nowa_(2).xml rename to songs/pl/poezja/Nowa.xml index 614b6d4e..724729ab 100644 --- a/songs/Nowa_(2).xml +++ b/songs/pl/poezja/Nowa.xml @@ -1,5 +1,5 @@ - + Krzysztof Jurkiewicz diff --git a/songs/pl/poezja/Nuta_z_Ponidzia.xml b/songs/pl/poezja/Nuta_z_Ponidzia.xml new file mode 100644 index 00000000..d4b37e0e --- /dev/null +++ b/songs/pl/poezja/Nuta_z_Ponidzia.xml @@ -0,0 +1,49 @@ + + + Wojciech Bellon + Wolna Grupa Bukowina + + + Polami, polami, po miedzach, po miedzach + Po błocku skisłym w mgłę i wiatr + Nie za szybko, kroki drobiąc + Idzie wiosna, idzie nam + Idzie wiosna, idzie + + + + Rozłożyła wiosna spódnicę zieloną + Przykryła błota bury łan + Pachnie ziemia ciałem młodym + Póki wiosna, póki trwa + Póki wiosna, póki trwa + + + + Rozpuściła wiosna warkocze kwieciste + Zbarwniały łąki niczym kram + Będzie odpust pod Wiślicą + Póki wiosna, póki trwa + Póki wiosna, póki trwa + + + + Ponidzie wiosenne, Ponidzie leniwe + Pręży się jak do słońca kot, + Rozciągnięte po tych polach + Lichych lasach, pstrych łozinach + Skałkach słońcem rozognionych + Nidą w łąkach roziskrzoną + Na Ponidziu wiosna trwa + Na Ponidziu wiosna trwa + Na Ponidziu + + + + + + chords + + + + diff --git a/songs/pl/poezja/O_braciach_ktorzy_pytali_sie.xml b/songs/pl/poezja/O_braciach_ktorzy_pytali_sie.xml new file mode 100644 index 00000000..379412e1 --- /dev/null +++ b/songs/pl/poezja/O_braciach_ktorzy_pytali_sie.xml @@ -0,0 +1,71 @@ + + + + + Zwrotka 4/4, refren 3/4. + + + + + + + Wyszli bracia, wiatr we włosach, co za czas, + W oczach gwiazdy i drzewa na spodzie, + Pochyleni, zanurzeni po pas, + Brodzą w nocy czerwcowej jak w wodzie. + Zatrzaśnięte na krzyż okiennice, + Nieskoszony jescze zapach łąk + I już płoną pozrywane księżyce + W białych lampach zamkniętych rąk. + + + A z miłością się nie jest, czy jest, + Powiedz pierwszy, z kochania słyniesz. + Jeśli nie ma, to i tak szkoda łez, + Jeśli jest, to i tak kiedyś minie. + Wędrowali tak pewnego dnia, + Wędrowali tak w głębokie sny. + Pierwszym bratem chyba byłem ja, + Drugim bratem pewnie byłeś ty. + + + Czy to życie jest, czy tylko sen, + Pomyśl pierwszy, potem ja pomyślę. + I dziwili się to tamten, to ten, + Las się chwieje, jakby stał na Wiśle. + Mamy umrzeć, czy żyć dalej, może wiesz, + Rozważ pierwszy, potem ja rozważę, + A już spadał powoli jak zmierzch + Odgłos dzwonów bijących na twarze. + + + A z miłością się nie jest, czy jest, + Powiedz pierwszy, z kochania słyniesz. + Jeśli nie ma, to i tak szkoda łez, + Jeśli jest, to i tak kiedyś minie. + + Wędrowali tak pewnego dnia, + Wędrowali tak w głębokie sny. + Pierwszym bratem chyba byłem ja, + Drugim bratem pewnie byłeś ty. + + + + + + + + + + + + + chord positioning + + + Michał Korch + + + + + diff --git a/songs/pl/poezja/Ocean.xml b/songs/pl/poezja/Ocean.xml new file mode 100644 index 00000000..35343860 --- /dev/null +++ b/songs/pl/poezja/Ocean.xml @@ -0,0 +1,64 @@ + + + + Mirosław Hrynkiewicz + + Mirosław Hrynkiewicz + Wolna Grupa Bukowina + + + + + Oceanie sinowłosy białe statki ku mnie wyślij + Dwa kamyki moje myśli na otwartych dłoniach niosę + Daj mi miejsce w głębi morza szczyptę lądu, szczyptę skały + Tu zbuduję zamek biały, tutaj gniazdo swe założę + + + + + + Gdzieś daleko w stu stolicach żyją ludzie, biją w dzwony + Niezliczone bataliony przyczajone na granicach + Marszałkowie szklanoocy palą owce i dziewczęta + Kto o kwiatach dziś pamięta, szumią giełdy w głębi nocy + + + + + + W głębi morza zabłąkany nie chcę nic o ludziach słyszeć + Biały kolor, kolor ciszy, w moim zamku białe ściany + W moim zamku gdzieś w ogrodzie będę czytać wschodnie baśnie + Zanim słońce w morzu zgaśnie, żeby z morza powstać co dzień + + + + + + A gdy ludzie wypełnieni nienawiścią w jednej chwili + Zniszczą wszystko co stworzyli wielkim ogniem z wnętrza ziemi + Znikną lądy zniknie morze nie wie nikt co będzie potem + W białych światach ja z powrotem w łonie matki się ułożę + + + + + + + + + chord positioning + + + KubaKrzysiek Cz. + + + + + + + + + + diff --git a/songs/Oczy_me_pelne.xml b/songs/pl/poezja/Oczy_me_pelne.xml similarity index 94% rename from songs/Oczy_me_pelne.xml rename to songs/pl/poezja/Oczy_me_pelne.xml index 740b6ca9..f3592ad2 100644 --- a/songs/Oczy_me_pelne.xml +++ b/songs/pl/poezja/Oczy_me_pelne.xml @@ -1,5 +1,5 @@ - + Leopold Staff diff --git a/songs/Odeszly_dziewczeta.xml b/songs/pl/poezja/Odeszly_dziewczeta.xml similarity index 95% rename from songs/Odeszly_dziewczeta.xml rename to songs/pl/poezja/Odeszly_dziewczeta.xml index 2ac64bc1..1b3f4124 100644 --- a/songs/Odeszly_dziewczeta.xml +++ b/songs/pl/poezja/Odeszly_dziewczeta.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/poezja/Ogien.xml b/songs/pl/poezja/Ogien.xml new file mode 100644 index 00000000..c8b041b3 --- /dev/null +++ b/songs/pl/poezja/Ogien.xml @@ -0,0 +1,50 @@ + + + + + + Zwyczaj to stary jak świat + Ogień, ogień, ogień + Rozpalmy blisko nas + Ogień, ogień, ogień + + + Dla spóźnionego wędrowca, + Dla wszystkich spóźnionych w noc + Rozpalmy tu, rozpalmy tu + Ogień, ogień, ogień + + + Pierwsza gwiazdka już wzeszła, + Czas by ogień rozpalić + Lipy, sosny i buki + Chylą gałęzie ku nam + + + + Najpiękniejsze ogniska + Z trzaskiem sypią się skry + Wokół samych przyjaciół masz + Zaśpiewaj z nami i ty + + + + + + + + + + + + + + + + + + + + + + diff --git a/songs/Ona_sobie_tego_nie_zyczy.xml b/songs/pl/poezja/Ona_sobie_tego_nie_zyczy.xml similarity index 96% rename from songs/Ona_sobie_tego_nie_zyczy.xml rename to songs/pl/poezja/Ona_sobie_tego_nie_zyczy.xml index f7ec08a1..bd1647c4 100644 --- a/songs/Ona_sobie_tego_nie_zyczy.xml +++ b/songs/pl/poezja/Ona_sobie_tego_nie_zyczy.xml @@ -1,5 +1,5 @@ - + Edward Stachura diff --git a/songs/pl/poezja/Opadly_mgly_wstaje_nowy_dzien.xml b/songs/pl/poezja/Opadly_mgly_wstaje_nowy_dzien.xml new file mode 100644 index 00000000..a666e8f1 --- /dev/null +++ b/songs/pl/poezja/Opadly_mgly_wstaje_nowy_dzien.xml @@ -0,0 +1,75 @@ + + + Edward Stachura + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + Opadły mgły i miasto ze snu się budzi + Górą czmycha już noc + Ktoś tam cicho czeka by ktoś powrócił + Do gwiazd jest bliżej niż krok + Pies się włóczy popod murami bezdomny + Niesie się tęsknota czyjaś na świata cztery strony + + + + A Ziemia toczy toczy swój garb uroczy + Toczy toczy się los + + Ty co płaczesz ażeby śmiać mógł się ktoś + Już dość, już dość, już dość + Odpędź czarne myśli + Dość już twoich łez + Niech to wszystko przepadnie we mgle + + Bo nowy dzień wstaje + Bo nowy dzień wstaje + Nowy dzień + + Wstaje nowy dzień + + + Z dusznego snu już miasto się wynurza + Słońce wschodzi gdzieś tam + Tramwaj na przystanku zakwitł jak róża + Uchodzą cienie do bram + Ciągną swoje wózki dwukółki mleczarze + Nad dachami snują się sny podlotków pełne marzeń + + + + A Ziemia toczy toczy swój garb uroczy + Toczy toczy się los + + Ty co płaczesz ażeby śmiać mógł się ktoś + Już dość, już dość, już dość + Odpędź czarne myśli + Porzuć błędny wzrok + Niech to wszystko zabierze już noc + + Bo nowy dzień wstaje + Bo nowy dzień wstaje + Nowy dzień + + Wstaje nowy dzień + + + + + + + + + + + chord positioning + + + Alek + Krzysiek Cz. + + Alek chyba sprawdzil, i nie zaznaczyl, ze sprawdzone +Onufry + + diff --git a/songs/Pamiatka_ze_splywu.xml b/songs/pl/poezja/Pamiatka_ze_splywu.xml similarity index 96% rename from songs/Pamiatka_ze_splywu.xml rename to songs/pl/poezja/Pamiatka_ze_splywu.xml index 6bf601b4..3f9a8be4 100644 --- a/songs/Pamiatka_ze_splywu.xml +++ b/songs/pl/poezja/Pamiatka_ze_splywu.xml @@ -1,5 +1,5 @@ - + J. Borowicz diff --git a/songs/pl/poezja/Panna_kminkowa.xml b/songs/pl/poezja/Panna_kminkowa.xml new file mode 100644 index 00000000..b02531db --- /dev/null +++ b/songs/pl/poezja/Panna_kminkowa.xml @@ -0,0 +1,76 @@ + + + Jerzy Reiser + Jerzy Reiser + Browar Żywiec + + + + + + + + Obróciła się wiosna na pięcie + Wyminęła się z latem we drzwiach + Wpatrywałaś się w okno zawzięcie + Może wyjdzie kominarz na dach + Potem jechał gdzieś pociąg spóźniony + Ktoś trzy asy wyłożył na stół + A ty kwiaty wkładałaś w wazony + I słyszałaś z daleka stuk kół + A tymczasem rozgościł się lipiec + Na wesele zaprosił ze stu + Pasikonik pożyczył mu skrzypiec + I w tym graniu tak biegłaś bez tchu + + + Panno kminkowa, panno lipcowa + Twoje są łąki twoje skowronki wszystkich łąk + Idziesz polami w palcach łodyżkę masz + I gryziesz kminek czarny przecinek nasz + Panna kminkowa, panna lipcowa + Śmiać się gotowa letnia królowa kwietnych łąk + Idzie polami w palcach łodyżkę ma + I gryzie kminek czarny przecinek dnia + + + Noce śniły budziły się ranki + Koniczyny poczwórny był liść + Rwałaś groszek zielony przed gankiem + Kiedy przyszło polami nam iść + Trwało lato i trwała muzyka + Rumieniłaś się wiśnią z mych ust + Las na wzgórzu horyzont zamykał + A ty biegłaś ku niemu bez tchu + + + + A gdy lipiec się w drogę spakował + Oddał skrzypce i poszedł gdzieś w świat + Ty zostałaś mi panno kminkowa + I łodyżki rzucane na wiatr + Jesień deszczem twe łąki przemoczy + Zima śniegiem okryje na mróz + A gdy lipiec zaglądnie ci w oczy + Znowu będziesz tak biegła bez tchu + + + + I gryzie kminek czarny przecinek dnia + + + + + + + + + + + chord positioning + + + Adam Foland + + + diff --git a/songs/Pejzaze_harasymowiczowskie.xml b/songs/pl/poezja/Pejzaze_harasymowiczowskie.xml similarity index 91% rename from songs/Pejzaze_harasymowiczowskie.xml rename to songs/pl/poezja/Pejzaze_harasymowiczowskie.xml index 883bcea3..d49ea385 100644 --- a/songs/Pejzaze_harasymowiczowskie.xml +++ b/songs/pl/poezja/Pejzaze_harasymowiczowskie.xml @@ -1,5 +1,5 @@ - + Wojciech Bellon @@ -21,14 +21,14 @@ I był Beskid i były słowa Zanurzone po pępki w cerkwi baniach - Rozłożyście złotych + Rozłożyście złotych Smagających się wiatrem do krwi Moje myśli biegały końmi Po niebieskich mokrych połoninach I modliłem się złożywszy dłonie - Do gór do madonny brunatnolicej + Do gór do madonny brunatnolicej A gdy serce kroplami tęsknoty Jęło spadać na góry sine Czarodziejskim kwiatem paproci diff --git a/songs/piesnxxix.xml b/songs/pl/poezja/Piesn_XXIX.xml similarity index 68% rename from songs/piesnxxix.xml rename to songs/pl/poezja/Piesn_XXIX.xml index 4f64d3d4..774b37a3 100644 --- a/songs/piesnxxix.xml +++ b/songs/pl/poezja/Piesn_XXIX.xml @@ -1,6 +1,6 @@ - + @@ -30,21 +30,21 @@ - Całe życie w niebo idzie + Całe życie w niebo idzie - Mój połoniński pochód + Mój połoniński pochód - I buki srebrni jeźdźcy + I buki srebrni jeźdźcy - Nad nimi wiosny sokół + Nad nimi wiosny sokół - I nadal tamtej połoniny wiatr + I nadal tamtej połoniny wiatr - I chmur wiosennych grzywy + I chmur wiosennych grzywy - I na chorągwi wspomnień twarz + I na chorągwi wspomnień twarz - Z włosami wiejącymi + Z włosami wiejącymi @@ -52,13 +52,13 @@ - Jak ciała nasze w mrocznym rytmie + Jak ciała nasze w mrocznym rytmie - Wznosiły się góry opadały + Wznosiły się góry opadały - Tak dzieje się gdy wiosna przyjdzie + Tak dzieje się gdy wiosna przyjdzie - Wypala miłość stare trawy + Wypala miłość stare trawy @@ -68,21 +68,21 @@ - Całe życie w niebo idzie + Całe życie w niebo idzie - Mój połoniński pochód + Mój połoniński pochód - I buki srebrni jeźdźcy + I buki srebrni jeźdźcy - Nad nimi wiosny sokół + Nad nimi wiosny sokół - Jak popiół rozwiały się grzechy + Jak popiół rozwiały się grzechy - W ciszy ktoś zawilce zasiał + W ciszy ktoś zawilce zasiał - I tylko grzmią włosy przestrzeni + I tylko grzmią włosy przestrzeni - W wielkich oknach mego świata + W wielkich oknach mego świata diff --git a/songs/pl/poezja/Piesn_gruzinska.xml b/songs/pl/poezja/Piesn_gruzinska.xml new file mode 100644 index 00000000..4c3c1bbe --- /dev/null +++ b/songs/pl/poezja/Piesn_gruzinska.xml @@ -0,0 +1,49 @@ + + + Bułat Okudżawa + + + Spulchnię ziemię na zboczu i pestkę winogron w niej złożę, + A gdy winnym owocem gronowa obrodzi mi wić, + Zwołam wiernych przyjaciół i serce przed nimi otworzę… + Bo doprawdy — czyż warto inaczej na ziemi tej żyć? + Cóż, czym chata bogata! Darujcie, że progi za niskie, + Mówcie wprost, czy się godzi siąść przy mnie, ucztować i pić. + Pan Bóg grzechy wybaczy i winy odpuści mi wszystkie… + Bo doprawdy — czyż warto inaczej na ziemi tej żyć? + + + W czerni swej i czerwieni zaśpiewa mi znów moja Dali, + Runę w czerni i bieli do stóp jej, niech przędzie swą nić! + I o wszystkim zapomnę i umrę z miłości i żalu… + Bo doprawdy — czyż warto inaczej na ziemi tej żyć? + A gdy zmierzch się zakłębi i cienie po kątach się splotą, + Niech się cisną do oczu, niech wiecznie pozwolą mi śn + Płowy bawół i orzeł srebrzysty i pstrąg szczerozłoty… + Bo doprawdy — czyż warto inaczej na ziemi tej żyć? + + + + + + + Michał Korch + + + + + chord positioning + + Orginalna interpunkcja, mimo że się z nią nie zgadzam, mówi właśnie tak. + + + + Bułat Okudżawa + Bułat Okudżawa + + Gruzinskaja piesnia + Andrzej Mandalian + Dopóki nam Ziemia toczy się… (Poka Ziemla jeszczo wiertitsa…) + Poezja śpiewana + + diff --git a/songs/pl/poezja/Piesn_na_wejscie.xml b/songs/pl/poezja/Piesn_na_wejscie.xml new file mode 100644 index 00000000..a349fd16 --- /dev/null +++ b/songs/pl/poezja/Piesn_na_wejscie.xml @@ -0,0 +1,43 @@ + + + Edward Stachura + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + Chodź człowieku coś ci powiem + Chodźcie wszystkie stany + Kolorowi biali czarni + Chodźcie zwłaszcza wy ludkowie + Przez na oścież bramy + + + Dla wszystkich starczy miejsca + Pod wielkim dachem nieba + Rozsiądźcie się na drogach + Na łąkach, na rozłogach + Na polach, błoniach i wygonach + W blasku słońca, w cieniu chmur + Rozsiądźcie się na niżu + Rozsiądźcie się na wyżu + Rozsiądźcie się na płaskowyżu + W blasku słońca w cieniu chmur + + + Dla wszystkich starczy miejsca + Pod wielkim dachem nieba + + Na ziemi którą ja i ty też + Zamieniliśmy w morze łez + + + + + + + + + + + + diff --git a/songs/pl/poezja/Piesn_na_wyjscie.xml b/songs/pl/poezja/Piesn_na_wyjscie.xml new file mode 100644 index 00000000..ec4f5ea3 --- /dev/null +++ b/songs/pl/poezja/Piesn_na_wyjscie.xml @@ -0,0 +1,56 @@ + + + + Edward Stachura + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + + Idź człowieku idź rozpowiedz + Idźcie wszystkie stany + Kolorowi biali czarni + Idźcie zwłaszcza wy ludkowie + Przez na oścież bramy + + + Dla wszystkich starczy miejsca + Pod wielkim dachem nieba + Rozejdźcie się po drogach + Po łąkach, po rozłogach + Po polach, błoniach i wygonach + W blasku słońca, w cieniu chmur + Rozejdźcie się po niżu + Rozejdźcie się po wyżu + Rozejdźcie się po płaskowyżu + W blasku słońca w cieniu chmur + + + Dla wszystkich starczy miejsca + Pod wielkim dachem nieba + + Na ziemi której ja i ty + Nie zamienimy w bagno krwi + + + + + + + + Alek + + + + + chord positioning + + + + + + Poezja śpiewana + diff --git a/songs/pl/poezja/Piesn_pozegnalna.xml b/songs/pl/poezja/Piesn_pozegnalna.xml new file mode 100644 index 00000000..03e90045 --- /dev/null +++ b/songs/pl/poezja/Piesn_pozegnalna.xml @@ -0,0 +1,36 @@ + + + Robert Burns / Jerzy Zbigniew Litwiniuk + Jerzy Zbigniew Litwiniuk + Auld Lang Syne + + + Ogniska już dogasa blask + Braterski splećmy krąg + W wieczornej ciszy, w świetle gwiazd + Ostatni uścisk rąk + + + Kto raz przyjaźni poznał moc + Nie będzie trwonić słów + Przy innym ogniu w inną noc + Do zobaczenia znów + + + Nie zgaśnie tej przyjaźni żar + Co połączyła nas + Nie pozwolimy by ją starł + Nieubłagany czas + + + + + + + + + + + + Tradycyjna melodia szkocka + diff --git a/songs/Pietruszka.xml b/songs/pl/poezja/Pietruszka.xml similarity index 94% rename from songs/Pietruszka.xml rename to songs/pl/poezja/Pietruszka.xml index 42393286..188c1f55 100644 --- a/songs/Pietruszka.xml +++ b/songs/pl/poezja/Pietruszka.xml @@ -1,5 +1,5 @@ - + Ania Lorenc diff --git a/songs/Piosenka_bez_tytulu.xml b/songs/pl/poezja/Piosenka_bez_tytulu.xml similarity index 96% rename from songs/Piosenka_bez_tytulu.xml rename to songs/pl/poezja/Piosenka_bez_tytulu.xml index dff428c7..0804db30 100644 --- a/songs/Piosenka_bez_tytulu.xml +++ b/songs/pl/poezja/Piosenka_bez_tytulu.xml @@ -1,5 +1,5 @@ - + W. Chyliński diff --git a/songs/pl/poezja/Piosenka_dla_Wojtka_Bellona.xml b/songs/pl/poezja/Piosenka_dla_Wojtka_Bellona.xml new file mode 100644 index 00000000..4a71ece7 --- /dev/null +++ b/songs/pl/poezja/Piosenka_dla_Wojtka_Bellona.xml @@ -0,0 +1,61 @@ + + + + Aleksandra Kiełb + + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + + Powiedz dokąd znów wędrujesz + Czy daleko jest twój sad + Hen w krainy buczynowe + Ze mną tam układa pieśni wiatr + Hen w krainy buczynowe + Ze mną tam nikogo tylko wiatr + + + Zmierzchy grają a przestrzenie + asny im podają dźwięk + Takie śpiewy z nimi lub milczenie + W którym znika każdy dawny lęk + W takich śpiewach i milczeniu + W szumie świętych buków zginął lęk + + + Zaszumiały cię powietrza + + I ruszyłeś sam na szlak + Ten ostatni ten najlepszy + Przyszedł czas Pan dał ci znak + + Ten ostatni ten najlepszy + Przyszedł czas Pan dał ci znak + + + + + + + + AlekOnufry + + + + + + + + + + + chord positioning + + + + + Makatki + Poezja śpiewana + diff --git a/songs/pl/poezja/Piosenka_dla_corki.xml b/songs/pl/poezja/Piosenka_dla_corki.xml new file mode 100644 index 00000000..3d844791 --- /dev/null +++ b/songs/pl/poezja/Piosenka_dla_corki.xml @@ -0,0 +1,44 @@ + + + + Krzysztof Kasprzyk + + Maciej Pietrzyk + Maciej Pietrzyk + + + + + +Nie mam teraz czasu dla Ciebie +nie widziała Cię długo matka +jeszcze trochę poczekaj dorośnij +opowiemy Ci o tych wypadkach + + + +O tych dniach pełnych nadziei +pełnych rozmów i sporów gorących +o tych nocach kiepsko przespanych +naszych sercach mocno bijących + + + +O tych ludziach którzy poczuli +że są wreszcie teraz u siebie +solidarnie walczą o dzisiaj +i o jutro także dla Ciebie + + + +Więc się nie smuć i czekaj cierpliwie +aż powrócisz w nasze objęcia +w naszym domu który nie istniał +bo w nim brak było… +prawdziwego szczęścia. + + + + + + diff --git a/songs/Piosenka_dla_juniora_i_jego_gitary.xml b/songs/pl/poezja/Piosenka_dla_juniora_i_jego_gitary.xml similarity index 96% rename from songs/Piosenka_dla_juniora_i_jego_gitary.xml rename to songs/pl/poezja/Piosenka_dla_juniora_i_jego_gitary.xml index 08877cf2..a3f6e484 100644 --- a/songs/Piosenka_dla_juniora_i_jego_gitary.xml +++ b/songs/pl/poezja/Piosenka_dla_juniora_i_jego_gitary.xml @@ -1,5 +1,5 @@ - + Edward Stachura diff --git a/songs/Piosenka_dla_piosenki.xml b/songs/pl/poezja/Piosenka_dla_piosenki.xml similarity index 95% rename from songs/Piosenka_dla_piosenki.xml rename to songs/pl/poezja/Piosenka_dla_piosenki.xml index c4b7bb5b..24e8557e 100644 --- a/songs/Piosenka_dla_piosenki.xml +++ b/songs/pl/poezja/Piosenka_dla_piosenki.xml @@ -1,5 +1,5 @@ - + Edward Stachura diff --git a/songs/pl/poezja/Piosenka_dla_przyjaciela.xml b/songs/pl/poezja/Piosenka_dla_przyjaciela.xml new file mode 100644 index 00000000..57943b9b --- /dev/null +++ b/songs/pl/poezja/Piosenka_dla_przyjaciela.xml @@ -0,0 +1,85 @@ + + + + Wojciech Bellon + + Tomek Fojgt + Enigma + + + + + Przeczekamy jeszcze jedną zimę, + Żeby znów móc się spotkać, + + + j Przyjacielu, + + Opowiedzieć co dobrego, + I zapomnieć o złych chwilach, + + + j Przyjacielu, + + A gdy wiosną wyschną drogi, + Dogonimy tych co przeszli obok. + + + Przeczekamy ciszę między nami, + Płoche słowa i rozmowy nieskończone, + Chleba nigdy nam nie zbrakło, + Popatrz znowu kwitnie jabłoń, + Przyjacielu gwiazda spadła. + + + + + + Przeczekamy jeszcze jedno lato, + Wciąż nie wierząc że na karku mamy jesień, + + + j Przyjacielu, + + A dziewczynom co odeszły, + Odeślemy listy z deszczu, + + + j Przyjacielu, + + Żeby życia zbyt nie trudzić, + To epilog dopiszemy garścią złudzeń. + + + + + + j Przyjacielu… + + + + + + + + + + + + + W górach jest wszystko co kocham + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/Piosenka_dla_starego_wiesniaka.xml b/songs/pl/poezja/Piosenka_dla_starego_wiesniaka.xml similarity index 98% rename from songs/Piosenka_dla_starego_wiesniaka.xml rename to songs/pl/poezja/Piosenka_dla_starego_wiesniaka.xml index c2ff9b35..50a86751 100644 --- a/songs/Piosenka_dla_starego_wiesniaka.xml +++ b/songs/pl/poezja/Piosenka_dla_starego_wiesniaka.xml @@ -1,5 +1,5 @@ - + Georges Brassens diff --git a/songs/PiosenkaMazowiecka.xml b/songs/pl/poezja/Piosenka_mazowiecka.xml similarity index 91% rename from songs/PiosenkaMazowiecka.xml rename to songs/pl/poezja/Piosenka_mazowiecka.xml index 6cca1ad3..9d459371 100644 --- a/songs/PiosenkaMazowiecka.xml +++ b/songs/pl/poezja/Piosenka_mazowiecka.xml @@ -1,5 +1,5 @@ - + Iwona Piastowska @@ -21,7 +21,7 @@ Wyślę pocztą gołębią cztery mile za piec. - I nic więcej, bo przecież nad taką równiną + I nic więcej, bo przecież nad taką równiną No jak tu nie lecieć, no jak tu nie płynąć Od końca do końca, na teraz na teraz i zawsze No jak tu nie słuchać, no jak tu nie patrzeć. @@ -46,7 +46,7 @@ Onufry - Zupełnie niesprawdzone, nie znam tej piosenki... + Zupełnie niesprawdzone, nie znam tej piosenki… diff --git a/songs/pl/poezja/Piosenka_na_rozgrzanie.xml b/songs/pl/poezja/Piosenka_na_rozgrzanie.xml new file mode 100644 index 00000000..0b3b6164 --- /dev/null +++ b/songs/pl/poezja/Piosenka_na_rozgrzanie.xml @@ -0,0 +1,47 @@ + + + + Tomasz Liszewski + + Tomasz Liszewski + Nijak + + + + + Zimno tak, że aż strach, jakże rozgrzać się + Korowody chłodnych myśli oziębiają mnie + Nie pomaga łyk herbaty, ani ciepły szal + Urojone z sopli kraty jak roztopić mam + + + Piosenka na rozgrzanie, na rozgrzanie serc + Rozgrzewa mnie takie granie, jak w domu ciepły piec + W przytulnym cieple nutek, w przytulnym cieple pauz + Z zimnego jak lód serca wypłynie czasem łza + + + Jak dziewczynka z zapałkami chcę ciepła, miłości + Nie rozgrzeję się słowami tymi, co ze złości + Nie rozbawią mnie pajace, co na sznurkach skaczą + Chociaż wszystkim nam tak zimno, dobrze dziś pajacom + + + + + + + + Alek + + Zgodne z nagraniem — Alek + + + + + + + + + + diff --git a/songs/Piosenka_o_mojej_ulicy.xml b/songs/pl/poezja/Piosenka_o_mojej_ulicy.xml similarity index 97% rename from songs/Piosenka_o_mojej_ulicy.xml rename to songs/pl/poezja/Piosenka_o_mojej_ulicy.xml index 8379f6b2..82a4df2b 100644 --- a/songs/Piosenka_o_mojej_ulicy.xml +++ b/songs/pl/poezja/Piosenka_o_mojej_ulicy.xml @@ -1,5 +1,5 @@ - + Andrzej Sikorowski diff --git a/songs/pl/poezja/Piosenka_o_papierowym_zolnierzyku.xml b/songs/pl/poezja/Piosenka_o_papierowym_zolnierzyku.xml new file mode 100644 index 00000000..7984b3fe --- /dev/null +++ b/songs/pl/poezja/Piosenka_o_papierowym_zolnierzyku.xml @@ -0,0 +1,67 @@ + + + + Bułat Okudżawa + + Bułat Okudżawa + Bułat Okudżawa + Witold Dąbrowski + Piesienka o bumażnam sałdatie + + + Raz pewien żołnierz sobie żył, + Odważny i zawzięty, + Lecz cóż?… zabawka tylko był, + Z kartonu był wycięty. + + + Choć zmieniać świat i zwalczać zło + Niezmiennie był gotowy, + Stał ciągle wśród zabawek, bo + Był tylko papierowy. + + + I w ogień gotów był, jak w dym, + Pójść za Was bez namowy, + I mieliście sto pociech z nim — + Bo był on papierowy. + + + I nie ujawniał przed nim sztab + Tajemnic swych wojskowych. + A czemu tak? A temu tak, + Że był on papierowy. + + + Wyzywał los, w pogardzie miał + Tchórzliwych maruderów, + I „Ognia! Ognia!” ciągle łkał, + Choć przecież był z papieru. + + + Niejeden wódz już w ogniu znikł, + Niejeden szeregowy… + I poszedł w ogień… Zginął w mig + Żołnierzyk papierowy. + + + + + + + Do widzenia, chłopcy (Do swidanija, malczyki) + Poezja śpiewana + + + + chord positioning + + + Michał Korch Krzysiek Cz. + + + + + + + diff --git a/songs/Piosenka_o_przyjaciolach,_wietrze,_czasie,_sloncu_itd.xml b/songs/pl/poezja/Piosenka_o_przyjaciolach_wietrze_czasie_sloncu_itd.xml similarity index 96% rename from songs/Piosenka_o_przyjaciolach,_wietrze,_czasie,_sloncu_itd.xml rename to songs/pl/poezja/Piosenka_o_przyjaciolach_wietrze_czasie_sloncu_itd.xml index 0cbdacc8..3af790aa 100644 --- a/songs/Piosenka_o_przyjaciolach,_wietrze,_czasie,_sloncu_itd.xml +++ b/songs/pl/poezja/Piosenka_o_przyjaciolach_wietrze_czasie_sloncu_itd.xml @@ -1,5 +1,5 @@ - + Wojciech Bellon diff --git a/songs/pl/poezja/Piosenka_o_zajaczku.xml b/songs/pl/poezja/Piosenka_o_zajaczku.xml new file mode 100644 index 00000000..dc8aade5 --- /dev/null +++ b/songs/pl/poezja/Piosenka_o_zajaczku.xml @@ -0,0 +1,67 @@ + + + Wolna Grupa Bukowina + + + + Mam mało czasu tak mało jak piachu + W dziecięcej garści nad rzeką + Zwieram powieki zatrzymać obraz + Co z moich wspomnień ucieka + + + Bledną kolory i płynie, płynie + Rzeka po szarej łące + I płynie płynie nie realniejąc + Rzeką zielony zajączek + + + Biegnę wciąż biegnę przed siebie w siebie + Tęczę rozgarniam rękami + Letnim upałem wytrzeć do sucha + Spotniałą wilgotną pamięć + + + + Rzeki jaszczurka w trawie się wije + Słońce się chyli zrudziałe + Wieczną zieloność zachować w oczach + Tak wiele pragnę tak mało + + + + Bledną wspomnienia i płynie rzeka + Bez końca i bez początku + Nasyć me oczy kolorem rosy + I drzwi mi otwórz zajączku + + + + + + + + + + + + Onufry + + + + + chord positioning + + + + + + + + + + + + + + diff --git a/songs/pl/poezja/Piosenka_turystyczna_1.xml b/songs/pl/poezja/Piosenka_turystyczna_1.xml new file mode 100644 index 00000000..91d62016 --- /dev/null +++ b/songs/pl/poezja/Piosenka_turystyczna_1.xml @@ -0,0 +1,57 @@ + + + + Krzysztof Jurkiewicz + + Mariusz Kamper + Słodki Całus od Buby + + + + + Szliśmy tak już chyba szósty dzi + Przed nami stoi szczyt, cel naszej drogi + Szliśmy tak już chyba szósty dzi + Po bokach wysychały siana stogi + Ani świeci słońce ani pada deszcz + W tym roku góry jakieś takie + + + Szliśmy tak już chyba szósty dzi + Aż Kapeć powiedział czas w doliny nam wyruszyć + Może napotkamy jakiś sklep + I parę flaszek piwa uda się osuszyć + A tam było jak w raju + O której byś nie przyszedł + Zawsze piwo dają + + + Szliśmy tak już chyba szósty dzi + A w każdej knajpie tak co najmniej cztery piwa + Za oknami ciągle sterczy szczyt + A drogi jakoś wcale nie ubywa + ,,Piwo albo góry!'' powiedziałem + Odpowiedział ,,Oczywiście góry! + Kelner, jeszcze cztery piwa!'' + Ani świeci słońce ani pada deszcz + W tym roku góry jakieś takie + + + + + + + Słodki Całus od Buby + Piosenka turystyczna górska + + + + + chords + + + Onufry + + Nie jestem na 100% pewien rozłożenia akrodów… + + diff --git a/songs/pl/poezja/Piosenka_turystyczna_2.xml b/songs/pl/poezja/Piosenka_turystyczna_2.xml new file mode 100644 index 00000000..b697a7aa --- /dev/null +++ b/songs/pl/poezja/Piosenka_turystyczna_2.xml @@ -0,0 +1,99 @@ + + + + Krzysztof Jurkiewicz + + Mariusz Kamper + Słodki Całus od Buby + + + + + Gdy na rajd wyruszaliśmy + Wszyscy byli dobrej myśli + Buty mocno zawiązali + I plecaki zarzucili + Pomyśleli jak to fajnie + Będzie siedzieć przy ognisku + Gdy na las się kładą cienie + A nad głową iskra błyska + Kilometry już za nami + A przed nami zachód słońca + Echo niesie nad górami + Pieśń radosną pieśń bez końca + + + La la la la la + La la la la la la la la la la + La la la la la + La la la la la la la la + + + Góry stały ponad nami + Całe w niebie postrzępionyme + Las zielony w nim po pępki + Banie cerkwi zanurzone + Rozbiliśmy swe namioty + Zaraz obok przy potoku + Rozpaliło się ognisko + Dym zakręcił łezkę w oku + Kilometry już za nami + A przed nami zachód słońca + Echo niesie nad górami + Pieśń radosną pieśń bez końca + + + + A wieczorem z pierwszą gwiazdą + Wystrzeliły z bełtów korki + Kwaśno cierpkim smakiem wina + Przełamaliśmy bariery + Między nami a pewnymi + Dziewczynami co w namiocie + Obok miały swoje leża + I nie były wcale brzydkie + Pierwsze lody już za nami + A przed nami ranek blady + Echo niesie nad górami + Zew miłosnej serenady + + + + Kiedy się obudziliśmy + Było dobrze już południe + Potok toczył za namiotem + Swoje wody porywiste + Gdy mnie dzisiaj ze snu budzi + Dziecka płacz a żona nęka + Podziękować chcę Stachurze + I Krzysiowi Myszkowskiemu + + + La la la la la + La la la la la la la la la la + La la la la la + La la la la la la la la + La la la la la + La la la la la la la la la la + La la la la la + La la la la la la la la + + + + + + + Nie ma rzeczy niemożliwych + Piosenka turystyczna górska + + + + + chords + + + Onufry + + Ja tego nie gram, więc nie jestem pewien akordów. Akordy u Adasia są nieco inne niż na ich stronie, zamieszczam ze strony. + + diff --git a/songs/Piosenka_turystyczna_3.xml b/songs/pl/poezja/Piosenka_turystyczna_3.xml similarity index 93% rename from songs/Piosenka_turystyczna_3.xml rename to songs/pl/poezja/Piosenka_turystyczna_3.xml index d4e22f69..5e0a07b1 100644 --- a/songs/Piosenka_turystyczna_3.xml +++ b/songs/pl/poezja/Piosenka_turystyczna_3.xml @@ -1,5 +1,5 @@ - + @@ -58,10 +58,10 @@ Znowu świt nas zastał Nad butelką której nie możemy już Wypić do dna - Aaa... + Aaa… Wypić do dna - Aaa... - Wypić do dna uuu... + Aaa… + Wypić do dna uuu… diff --git a/songs/pl/poezja/Piosenka_wiosenna.xml b/songs/pl/poezja/Piosenka_wiosenna.xml new file mode 100644 index 00000000..2bf078d5 --- /dev/null +++ b/songs/pl/poezja/Piosenka_wiosenna.xml @@ -0,0 +1,74 @@ + + + + Wojciech Bellon + + Wojciech Jarociński + Wolna Grupa Bukowina + + + + + + + + + Zagram dla ciebie na każdej gitarze świata + Na ulic fletach, na nitkach babiego lata + Wyśpiewam jak potrafię księżyce na rozstajach + I wrześnie i stycznie i maje + I zagubione dźwięki i barwy na płótnach Vlamincka + I słońce wędrujące promienia ścieżynką + + + Graj nam graj pieśni skrzydlata + Wiosna taniec nasz niesie po łąkach + Zatańczymy się w sobie do lata + Zatańczymy się w sobie bez końca + + + + + + + A blask, co oświetla me ręce gdy piszę + Nabrzmiał potrzebą rozerwania ciszy + Przez okno wyciekł pełna go teraz chmara wronia + Dziobi się w dziobów końcach, a w ogonach ogoni + A pieśń moja to niknie, to wraca + I nie wiem co bym zrobił gdybym ją utrac + + + + Graj nam graj pieśni skrzydlata + Wiosna taniec nasz niesie po łąkach + Zatańczymy się w sobie do lata + Zatańczymy się w sobie bez końca + + + + + + + + + + + + Onufry + + + + + + + + + chord positioning + + + + + Bukowina + Poezja śpiewana + diff --git a/songs/Pisze_historyczna_powiesc.xml b/songs/pl/poezja/Pisze_historyczna_powiesc.xml similarity index 67% rename from songs/Pisze_historyczna_powiesc.xml rename to songs/pl/poezja/Pisze_historyczna_powiesc.xml index b0562918..6d5c863b 100644 --- a/songs/Pisze_historyczna_powiesc.xml +++ b/songs/pl/poezja/Pisze_historyczna_powiesc.xml @@ -1,5 +1,5 @@ - + Bułat Okudżawa @@ -9,17 +9,17 @@ Ja piszu istoryczeskij raman - Zdobi mego stołu blat + Zdobi mego stołu blat Szkło po zagranicznym piwie, - W nim czerwony róży kwiat + W nim czerwony róży kwiat Z pąka rodzi się cierpliwie. - Więc pod czujnym okiem tym, + Więc pod czujnym okiem tym, Piszę historyczną powieść, - Lecz nie mogę naprzód iść, + Lecz nie mogę naprzód iść, Myląc prolog z epilogiem. - Nasłuchuję, wypatruję + Nasłuchuję, wypatruję I spisuję to, co czuję, Piszę prozą lub rymuję, @@ -27,31 +27,31 @@ Ale nie chcę schlebiać Wam. Takie są natury prawa, Zmieniać ich nie mamy prawa, - Czemu piszę nie wiem sam. + Czemu piszę nie wiem sam. - Już przede mną kartek sto, + Już przede mną kartek sto, Nieprzebyte śnieżne dale, - Lecz dlaczego i mój los, + Lecz dlaczego i mój los, W wątek się wplątuje stale? - Czemu wciąż się pragnę b + Czemu wciąż się pragnę b Z przeciwnikiem wymyślonym, - Bohaterem nie chcąc b + Bohaterem nie chcąc b W stan spoczynku przeniesionym? - Prawda i w zmyśleniu tkwi, + Prawda i w zmyśleniu tkwi, Ale powieść nie gotowa, - Więc pozwólcie pisać mi + Więc pozwólcie pisać mi Aż do ostatniego słowa. - Pragnę, póki róży kwiat + Pragnę, póki róży kwiat Na mym stole czerwienieje, - Krzyczeć, kiedy milczy świat, + Krzyczeć, kiedy milczy świat, Szeptać, kiedy świat szaleje - Nasłuchuję, wypatruję + Nasłuchuję, wypatruję I spisuję to co czuję. diff --git a/songs/Placz_moja_wodo.xml b/songs/pl/poezja/Placz_moja_wodo.xml similarity index 86% rename from songs/Placz_moja_wodo.xml rename to songs/pl/poezja/Placz_moja_wodo.xml index d84e1123..e84412a5 100644 --- a/songs/Placz_moja_wodo.xml +++ b/songs/pl/poezja/Placz_moja_wodo.xml @@ -1,5 +1,5 @@ - + @@ -10,7 +10,7 @@ Powiedz jak można tak długo wytrzymać - Gdy zima i mrozy i mrozy i zima + Gdy zima i mrozy, i mrozy i zima A ty znowu jesteś za wodą za rzeką I nie wiem znów nie wiem jak bardzo daleko Stoję na brzegu a przepaść jest blisko @@ -19,8 +19,8 @@ I po co też mają kamienie u szyi - Bo kto mnie pożegna gdy tylu nas jest - Płacz moja wodo rzeko łez + Bo kto mnie pożegna, gdy tylu nas jest + Płacz moja wodo rzeką łez Stoi kolejka szeregiem dalekim @@ -33,13 +33,13 @@ I przyszedł i stanął i też był znużony - Więc mu nie wierzył choć tylu nas jest - Płacz moja wodo rzeko łez + Wiec nikt go nie witał, choć tylu nas jest + Płacz moja wodo rzeką łez Wtedy na brzegu pojawił się diabeł Do ciebie nad wodą zbudował przeprawę - Tłumacząc się skromnie przed smutnym ------- + Tłumacząc się skromnie przed smutnym Mesjaszem Że w tej sytuacji nie będzie Judaszem I każdy z nas ruszył przez most ten nad rzeką Lecz ciebie nie było a świat za daleko @@ -47,8 +47,8 @@ I każdy powrócił z kamieniem do domu - Lecz nikt nas nie witał choć tylu nas jest - Płacz moja wodo rzeko łez + Lecz nikt nas nie witał, choć tylu nas jest + Płacz moja wodo rzeką łez diff --git a/songs/Pociag_grudniowy.xml b/songs/pl/poezja/Pociag_grudniowy.xml similarity index 96% rename from songs/Pociag_grudniowy.xml rename to songs/pl/poezja/Pociag_grudniowy.xml index 1eb612b7..6be550ca 100644 --- a/songs/Pociag_grudniowy.xml +++ b/songs/pl/poezja/Pociag_grudniowy.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Pod_jodla.xml b/songs/pl/poezja/Pod_jodla.xml similarity index 98% rename from songs/Pod_jodla.xml rename to songs/pl/poezja/Pod_jodla.xml index 4b761b46..93b65932 100644 --- a/songs/Pod_jodla.xml +++ b/songs/pl/poezja/Pod_jodla.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Poeta_i_pan_Strauss.xml b/songs/pl/poezja/Poeta_i_pan_Strauss.xml similarity index 94% rename from songs/Poeta_i_pan_Strauss.xml rename to songs/pl/poezja/Poeta_i_pan_Strauss.xml index ea78379d..cf636159 100644 --- a/songs/Poeta_i_pan_Strauss.xml +++ b/songs/pl/poezja/Poeta_i_pan_Strauss.xml @@ -1,5 +1,5 @@ - + Krzysztof Daukszewicz @@ -39,7 +39,7 @@ Pomyślał stary Strauss Jak to ciężko być dzisiaj - Lirycznym poetą + lyricznym poetą Orkiestra disco gra I nie przebijesz się wierszem I prozą przez beton @@ -68,7 +68,7 @@ Zezłościł się pan Strauss Który miał nam przypomnieć Swe modre Dunaje - Powiedział -- co za kac + Powiedział — co za kac Wziął pół litra ze stołu I zapłakał nad krajem[?] Mój przedostatni walc @@ -97,7 +97,7 @@ - + Karnawał skończył się @@ -108,13 +108,13 @@ fabrycznych syren Karnawał skończył się Zasypiają po szafach - Sukienki -- motyle + Sukienki — motyle Że nam się jeszcze chce Tańczyć w rytm rozespanych Fabrycznych syren - Na, na, na... + Na, na, na… diff --git a/songs/Polanka_(4).xml b/songs/pl/poezja/Polanka.xml similarity index 88% rename from songs/Polanka_(4).xml rename to songs/pl/poezja/Polanka.xml index 65d2b151..44cf7c41 100644 --- a/songs/Polanka_(4).xml +++ b/songs/pl/poezja/Polanka.xml @@ -1,5 +1,5 @@ - + @@ -15,9 +15,9 @@ Choć nam nie wszystko chce zmieścić się w głowie - To -- zatańcz ze mną na polanie + To — zatańcz ze mną na polanie Ot tak poprostu - To -- zatańcz ze mną na polanie + To — zatańcz ze mną na polanie Choć raz prawdziwie Zatańcz ze mną sobie diff --git a/songs/Poloniny_niebieskie.xml b/songs/pl/poezja/Poloniny_niebieskie.xml similarity index 86% rename from songs/Poloniny_niebieskie.xml rename to songs/pl/poezja/Poloniny_niebieskie.xml index 60a40d65..6ffebc0a 100644 --- a/songs/Poloniny_niebieskie.xml +++ b/songs/pl/poezja/Poloniny_niebieskie.xml @@ -1,5 +1,5 @@ - + Adam Drąg @@ -10,13 +10,13 @@ - + Gdy nie zostanie po mnie nic - Oprócz pożółkłych fotografii - Błękitny mnie przywita świt + Oprócz pożółkłych fotografii + Błękitny mnie przywita świt - + W miejscu co nie ma go na mapie diff --git a/songs/pl/poezja/Powrot.xml b/songs/pl/poezja/Powrot.xml new file mode 100644 index 00000000..4c41ef0f --- /dev/null +++ b/songs/pl/poezja/Powrot.xml @@ -0,0 +1,74 @@ + + + + Maciej Służała + + Maciej Służała + Krążek + + + + + Na twój powrót zgotowałam w beczce kąpiel. + Kilka kwiatów z łąki wplotłam w długie włosy. + Jagód kosz największy uzbierałam w lesie. + Czekam ciebie, spoglądając wzdłuż drogi. + + + Jeszcze noce takie ciepłe i gwiaździste. + Jeszcze w worku trochę chleba pozostało. + Jeszcze świerszcze koncert grają na równinie. + Jeszcze lata tyle w górach, choć tak mało. + + + Żółte liście znaczą Twój szlak. + Zimny wiatr czesze trawy na szczytach. + Tyle razy przemierzałeś ten świat. + Tyle lat się tym światem zachwycasz. + + + Na twój powrót upiekłam świeży bochen. + Ciepły sweter zrobiłam na drutach. + Rozpaliłam na kominku jasny płomień. + Jeszcze dzisiaj powinieneś przecież wrócić. + + + Znowuż wiatr odprowadza mnie w doliny. + Słońce żegna odbijając się w strumienu. + Stare drzewa pochylają swe korony. + Jeszcze chwilę odpocznę na kamieniu. + + + + Na twój powrót cieszę się już od tygodnia. + Pojaśniało z tej radości w całej izbie. + Pachnie kawa, słońce skrzy się w starym lustrze. + Idzie ktoś, serce mocniej bije. + + + Koniec lasu, widać dach starego domu. + Domu, w którym tyle już się wydarzyło. + Wracam tu do ciebie, jak co roku. + Może z wiosną razem wyruszymy. + + + + + + + + + + + + + + + + Onufry + + + + + + diff --git a/songs/pl/poezja/Powroty.xml b/songs/pl/poezja/Powroty.xml new file mode 100644 index 00000000..371786a3 --- /dev/null +++ b/songs/pl/poezja/Powroty.xml @@ -0,0 +1,55 @@ + + + + + Boję się nieba w twoich oczach + Jeszcze drżysz ze zmęczenia i potu + Świat chcesz dzielić na białe i czarne + Miły, boję się twoich powrotów + + + Boję się chmur nad twoim czołem + Kiedy ręce do krwi otarte + Dumnie kładziesz przede mną na stole + Miły, boję się twoich powrotów + + + Drżysz jeszcze, oczy zamglone + Zrobisz wszystko o co poproszę + Muszę wierzyć, przecież mnie kochasz + Krótka chwila i wracasz + Krótka chwila i wracasz + Krótka chwila i wracasz na morze + + + Boję się morza w twoich myślach + Kiedy jesteś do drogi już gotów + Leżysz przy mnie, oczy otwarte + Miły, boję się twoich powrotów + + + + + + + + Onufry + + + + chord positioning + + + + + Powroty II + Krzysztof Jurkiewicz + Krzysztof Jurkiewicz + Smugglers + + + + Nagroda Publiczności + Szanta + Autor to ten sam K. Jurkiewicz od Słodkiego Całusa, acz tu w innym zespole.Piosenka nosi tak naprawdę tytuł "Powroty II", w odróżnieniu od "Powrotów", które K. Jurkiewicz napisał i wykonywał ze Słodkim Całusem, też skądinąd ładną piosenką.U nas Powrotów 1 się nie śpiewa (a szkoda), stąd ta piosenka funkcjonuje po prostu pod nazwą "Powroty" + diff --git a/songs/Pozegnalny_ton.xml b/songs/pl/poezja/Pozegnalny_ton.xml similarity index 58% rename from songs/Pozegnalny_ton.xml rename to songs/pl/poezja/Pozegnalny_ton.xml index adb5b26e..afe7caa8 100644 --- a/songs/Pozegnalny_ton.xml +++ b/songs/pl/poezja/Pozegnalny_ton.xml @@ -1,45 +1,45 @@ - + Altantyda Ja zazwyczaj gram w tonacji D, i lepiej IMHO brzmi, natomiast tu zamieszczam standardowe akordy, można samemu przetransponować. Chyba dobrze wiesz już jaką z dróg - Popłyniesz kiedy serce rośnie ci nadzieją, + Popłyniesz kiedy serce rośnie ci nadzieją, Że jeszcze są schowane gdzi - Nieznane lądy, które życie twe odmienią. + Nieznane lądy, które życie twe odmienią. Chyba dobrze wiesz już jaką z dróg - Wśród fal i białej piany statek twój popłynie, + Wśród fal i białej piany statek twój popłynie, A jeśli tak - spotkamy się - Na jakiejś łajbie, którą szczęście swe odkryjesz. + Na jakiejś łajbie, którą szczęście swe odkryjesz. - Morza i oceany grzmią - Pieśni pożegnalny ton - Jeszcze nieraz zobaczymy się, - Czas stawiać żagle i z portu wyruszyć nam w rejs. + Morza i oceany grzmią + Pieśni pożegnalny ton + Jeszcze nieraz zobaczymy się, + Czas stawiać żagle i z portu wyruszyć nam w rejs. W kolorowych światłach keja lśni - I główki portu sennie mówią "do widzenia", + I główki portu sennie mówią "do widzenia", A jutro, gdy nastanie świt, - W rejs wyruszymy, by odkrywać swe marzenia. + W rejs wyruszymy, by odkrywać swe marzenia. Nim ostatni akord wybrzmi j - Na pustej scenie nieme staną mikrofony, + Na pustej scenie nieme staną mikrofony, Ostatni raz śpiewamy dz - Na pożegnanie wszystkim morzem urzeczonym. + Na pożegnanie wszystkim morzem urzeczonym. - Morza i oceany grzmią - Pieśni pożegnalny ton - Jeszcze nieraz zobaczymy się, - Czas stawiać żagle i z portu wyruszyć nam w rejs. + Morza i oceany grzmią + Pieśni pożegnalny ton + Jeszcze nieraz zobaczymy się, + Czas stawiać żagle i z portu wyruszyć nam w rejs. @@ -54,7 +54,7 @@ chord positioning - Wg niektórych źródeł piosenkę tę stworzyli Mechanicy Szanty. Wedle mojej świadomości piosenka ta:a) Pojawiła się na płycie 'Marco Polo' wydanej przez Atlantydę.b) Jest autorstwa Sławka Klupsia, który figuruje jako członek tejże Atlantydy.Być może, oczywiście, to dwie nazwy tego samego zespołu... + Wg niektórych źródeł piosenkę tę stworzyli Mechanicy Szanty. Wedle mojej świadomości piosenka ta:a) Pojawiła się na płycie 'Marco Polo' wydanej przez Atlantydę.b) Jest autorstwa Sławka Klupsia, który figuruje jako członek tejże Atlantydy.Być może, oczywiście, to dwie nazwy tego samego zespołu… diff --git a/songs/pl/poezja/Pozegnanie.xml b/songs/pl/poezja/Pozegnanie.xml new file mode 100644 index 00000000..0f1b0550 --- /dev/null +++ b/songs/pl/poezja/Pozegnanie.xml @@ -0,0 +1,69 @@ + + + + Maciej Służała + + Maciej Służała + Krążek + + + + + Spójrz przez okno — wiosna śniegi rozgania + Coraz dłuższe dnie, wiatr cieplejszy + Na mnie czas, przyszła pora rozstania, + Worek gotów do drogi w kącie leży + Nie idź jeszcze, jeszcze czas, jeszcze zdążysz + Jeszcze wiosna zbyt krótka, by jej wierzyć + Jeszcze śnieg dość głęboki, jeszcze błoto na drogach, + Jeszcze mróz wieczorami się jeży + + + Daj mi jeszcze kilka dni proszę o to + Pozwól się jeszcze sobą nacieszyć + Ty wyruszysz gnany swoją tęsknotą + Ja zostanę samotna jak księżyc + + + Już jaskółki gniazdo w oknie budują, + Słyszysz? Bocian na łące klekocze, + Dzikie gęsi po obłokach wędrują, + Spałaś już — pierwsza burza była w nocy + Popatrz — wiatr ciemne chmury nawiewa, + Dzisiaj nie idź, posiedź ze mną jeszcze + Tyle miałam Ci do powiedzenia, + Widzisz, pada. Nie zdążysz przed deszczem + + + + Muszę iść, woła mnie chmurna przestrzeń, + W przyszłym roku mogę nie dać już rady, + Przecież wrócę tu z ostatnim deszczem + Przecież wrócę do Ciebie jak zawsze. + Wiem że wrócisz, ale zrozum obawę + Przecież Ciebie nie będzie pół roku + Tyle czasu nie widzieć twej twarzy… + Idź już. Może ten deszcz przejdzie bokiem + + + + + + + + + chords + + + OnufryAlek + + + + My to śpiewamy nieco inaczej niż na kasecie (Baśń - Tak czy Owak), więc nie rozmieszczam akordów. Zresztą, nie za bardzo umiem - kiedyś znakiem bardzo długo się staraliśmy to rozpracować, i nie poszło. — Onufry +Zespół Krążek (http://krazek.art.pl/) uważa swoją drugą nazwę Tak czy Owak za przejściową i nietrafioną, respektujemy to — Alek + + + + + + diff --git a/songs/pl/poezja/Pozegnanie_2.xml b/songs/pl/poezja/Pozegnanie_2.xml new file mode 100644 index 00000000..0c24cb85 --- /dev/null +++ b/songs/pl/poezja/Pozegnanie_2.xml @@ -0,0 +1,63 @@ + + + Piotr Bakal + Krzysztof Myszkowski + Stare Dobre Małżeństwo + + + + La, la, la… + La, la, la… + + + + Może się spotkamy znów po kilku latach + Może właśnie tutaj lub na końcu świata + Będziesz wtedy inna — ja wciąż taki sam + Może nam się uda zacząć jeszcze raz + + + Dzisiaj muszę odejść już mnie nie zatrzymuj + Przez te wszystkie lata nic się nie zmieniło + Rozstawiłaś straże wokół moich snów + Daj mi wreszcie spokój — dosyć mam już słów + + + + + + + Wrócę tu na pewno, gdy nadejdzie pora + Zapamiętaj tylko, co mówiłem wczoraj + Zapamiętaj tylko że się nie zmieniłem + Myślę co myślałem, wierzę w co wierzyłem + + + Wrócę gdy zrozumiesz, już po kilku latach + Może właśnie tutaj będzie koniec świata + Będziesz wtedy inna — ja wciąż taki sam + Może nam się uda zacząć jeszcze raz + + + + La, la, la… + La, la, la… + + + + + + + + Pod wielkim dachem nieba + + + + + chords + + + Adam Foland + + + diff --git a/songs/Przemijanie.xml b/songs/pl/poezja/Przemijanie.xml similarity index 96% rename from songs/Przemijanie.xml rename to songs/pl/poezja/Przemijanie.xml index 4f458735..ba42afc5 100644 --- a/songs/Przemijanie.xml +++ b/songs/pl/poezja/Przemijanie.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Przepasc.xml b/songs/pl/poezja/Przepasc.xml similarity index 96% rename from songs/Przepasc.xml rename to songs/pl/poezja/Przepasc.xml index 31e05487..ce485f93 100644 --- a/songs/Przepasc.xml +++ b/songs/pl/poezja/Przepasc.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Przerwa_w_podrozy.xml b/songs/pl/poezja/Przerwa_w_podrozy.xml similarity index 93% rename from songs/Przerwa_w_podrozy.xml rename to songs/pl/poezja/Przerwa_w_podrozy.xml index 325c284e..c34ba107 100644 --- a/songs/Przerwa_w_podrozy.xml +++ b/songs/pl/poezja/Przerwa_w_podrozy.xml @@ -1,5 +1,5 @@ - + @@ -32,7 +32,7 @@ Wpatrzeni w okno milczeliśmy wszyscy Nikt nie przerywał czekania Nawet gitary zacisnęły zęby - Wiedziały -- już nie będzie grania + Wiedziały — już nie będzie grania Oczy dziewczyny szeptały ,,zostań''! Czas się zatrzyma w Limanowej Oddałem uśmiech przewróciłem kufel diff --git a/songs/pl/poezja/Przyjaciolko.xml b/songs/pl/poezja/Przyjaciolko.xml new file mode 100644 index 00000000..b4a8f44f --- /dev/null +++ b/songs/pl/poezja/Przyjaciolko.xml @@ -0,0 +1,58 @@ + + + + Jakub Onufry Wojtaszczyk + Metrum zmienne w trakcie piosenki - zwrotka na 4, łagodnie, refren na 3, dużo agresywniej. + Jakub Onufry Wojtaszczyk + Znak służby muzyce + + + + + Przyjdź znasz ten dom i drzwi + Materac zmęczony i fotel wysiedziany + Nie musisz dzwonić pukać wejdź + Posiedzimy pomyślimy pogadamy + + + O tym, że miłość nie chce przyjść + O tym, że przyjaźń nie wystarczy + O tym, że ciężko nam bywa i źle + O walkach przegranych i powrotach na tarczy + Też o tym, że my, że Ty i ja + Że łatwiej martwić się we dwoje + O tym, że przyjaźń jednak trwa + Choć świata, choć jutra tak bardzo się boję + + + Wyjdziesz rano zmęczona + Bo trudna jak zawsze ta nasza rozmowa + Za nami zostaną wspólne łzy + A w duszy zostaną nam słowa + + + Że chociaż miłość nie chce przyjść + I przyjaźń czasem nie wystarczy + Że chociaż ciężko nam bywa i źle + Choć zdarza się czasem powrócić na tarczy + To jednak trwamy, Ty i ja + I lepiej zmieniać świat we dwoje + I przyjaźń żyje, rośnie, trwa + I dzięki niej trochę mniej świata się boję + + + + + + + + + + chord positioning + + + Onufry + + Zgodne z oryginałem 100% (z definicji) + + diff --git a/songs/Pytania_syna_poety.xml b/songs/pl/poezja/Pytania_syna_poety.xml similarity index 92% rename from songs/Pytania_syna_poety.xml rename to songs/pl/poezja/Pytania_syna_poety.xml index 8614635d..26831ea0 100644 --- a/songs/Pytania_syna_poety.xml +++ b/songs/pl/poezja/Pytania_syna_poety.xml @@ -1,5 +1,5 @@ - + @@ -10,10 +10,10 @@ - Na na na... - Na na na... - Na na na... - Na na na... + Na na na… + Na na na… + Na na na… + Na na na… diff --git a/songs/pl/poezja/Rapsod_o_krolu_Warnenczyku.xml b/songs/pl/poezja/Rapsod_o_krolu_Warnenczyku.xml new file mode 100644 index 00000000..4e7e5af3 --- /dev/null +++ b/songs/pl/poezja/Rapsod_o_krolu_Warnenczyku.xml @@ -0,0 +1,142 @@ + + + + Andrzej Waligórski + + Aleksander Grotowski + Aleksander Grotowski + + + + + Lśni chorągiew pozłocista + Chrzęści zbroja szmelcowana + Jedzie, jedzie król Władysław + By poskromić bisurmana. + + + Po wąwozach brzmią cykady, + Koń królewski raźnie parska, + Dzielny Węgier, Jan Hunyady + Sprawdza szyki klnąc z madziarska. + + + Nad wzgórzami wstają zorze, + Wojsko w marszu rumor czyni, + - O, już widać Czarne Morze! + Mówi legat Cesarini. + + + Król naprędce je śniadanie, + Jan Hunyady wszedł z łoskotem: + - Nawalili wenecjanie, + Wycofali swoją flotę! + + + Król odstawił kubek z winem, + Blask mu strzelił spod powieki: + - Uderzamy za godzinę + + A Wenecji - wstyd na wieki! + + + Jeszcze Warna w dali drzemie, + Jeszcze nisko stoi słońce, + + A pancerni - strzemię w strzemię, + + A pancerni - koncerz w koncerz, + + + + A pancerni - kopia w kopię + Ku piaszczystym patrzą brzegom… + - No to cześć, daj pyska chłopie! - + Mówi król do Hunyadego. + + + + I błysnęły jednym blaskiem + Setki mieczy wyszarpniętych + + I zgrzytnęły jednym trzaskiem + Setki przyłbic zatrzaśniętych, + + + + I zadrżała ziemia święta + + I huknęły dzwony w mieście, + + I ruszyli - najpierw stępa, + Potem kłusem, cwałem wreszcie, + + + Poszła dzielna polska jazda, + Poszli Węgrzy niczym diabli, + Jak stalowa, ostra drzazga, + Jak błyszczące ostrze szabli, + + + + I widziano jak lecieli + Pędem wielkim i szalonym, + + I widziano, jak tonęli + W morzu Turków niezmierzonym. + + + Po czym z piórem, siadł nad kartą + Mnich uczony, stary skryba: + - Warto było, czy nie warto? + Odwrót byłby lepszy chyba… + + + Chrzanił zacny zjadacz chleba + Czas nad nami wartko goni, + + I tak kiedyś umrzeć trzeba, + To już lepiej tak jak oni. + + + Z resztą - koniec dzieło wieńczy, + Mnich w klasztorze kipnął marnie, + + A szalony król Warneńczyk + Ma grobowiec w pięknej Warnie, + + + + I szanują go Bułgarzy + I nas - dzięki niemu - cenią, + Więc na czarnomorskiej plaży + aniam się królewskim cieniom. + + + + + + + + + + + + + + + + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/poezja/Roza.xml b/songs/pl/poezja/Roza.xml new file mode 100644 index 00000000..1e8212e9 --- /dev/null +++ b/songs/pl/poezja/Roza.xml @@ -0,0 +1,58 @@ + + + + Bolesław Leśmian + + Robert Leonhard + Małżeństwo z Rozsądku + + + + + Czym purpurowe maki + Na ciemną rzucał drogę? + Sen miałem, ale jaki? + Przypomnieć już nie mogę + + + Twojeż to były usta? + Moje to były dłonie? + Głąb sadu mego pusta + We wrotach księżyc płonie + Twojeż to były usta? + A moje były dłonie? + + + Dni się za dniami dłużą + Noce w jeziorach witam + Kiedy Ty kwitniesz różo? + Ja nigdy nie zakwitam + + + + Ja nigdy nie zakwitam + Twójże to głos o różo? + Słowo po słowie chwytam + Dni się za dniami dłużą + + + + + + + + + + + + + + + + Onufry + + + + + + diff --git a/songs/Rozstaje.xml b/songs/pl/poezja/Rozstaje.xml similarity index 93% rename from songs/Rozstaje.xml rename to songs/pl/poezja/Rozstaje.xml index bb283a3f..21aae92d 100644 --- a/songs/Rozstaje.xml +++ b/songs/pl/poezja/Rozstaje.xml @@ -1,5 +1,5 @@ - + @@ -24,7 +24,7 @@ Wychodzę na rozstaje, w oniemieniu trwam Jak trudno znaleźć w sobie kształt tego kim być mam Tak ciężko słuchać siebie, tego kim być chce - Tak głośno strach mi szepce, że mogę zboczyć źle + Tak głośno strach mi szepce, że mogę zboczyć źle diff --git a/songs/Rzeka.xml b/songs/pl/poezja/Rzeka.xml similarity index 72% rename from songs/Rzeka.xml rename to songs/pl/poezja/Rzeka.xml index e8ffad5d..c799947b 100644 --- a/songs/Rzeka.xml +++ b/songs/pl/poezja/Rzeka.xml @@ -1,9 +1,9 @@ - + Wolna Grupa Bukowina - + Wsłuchany w twą cichą piosenkę Wyszedłem na brzeg pierwszy raz @@ -13,9 +13,9 @@ O dobra rzeko, o mądra wodo Wiedziałaś gdzie stopy znużone prowadzić - Gdy sił już było brak. Brak... + Gdy sił już było brak. Brak… - + Wieże miast, łuny świateł Ich oczy zszarzałe nie raz diff --git a/songs/Samotny.xml b/songs/pl/poezja/Samotny.xml similarity index 98% rename from songs/Samotny.xml rename to songs/pl/poezja/Samotny.xml index cdca6f8c..83ccdc17 100644 --- a/songs/Samotny.xml +++ b/songs/pl/poezja/Samotny.xml @@ -1,5 +1,5 @@ - + Leonard Luther diff --git a/songs/Sanctus.xml b/songs/pl/poezja/Sanctus.xml similarity index 83% rename from songs/Sanctus.xml rename to songs/pl/poezja/Sanctus.xml index 37681e8c..1d9ac8f6 100644 --- a/songs/Sanctus.xml +++ b/songs/pl/poezja/Sanctus.xml @@ -1,5 +1,5 @@ - + Edward Stachura @@ -9,14 +9,14 @@ - Święty, święty, święty -- blask kłujący w oczy - Święta, święta, święta -- Ziemia co nas nosi + Święty, święty, święty — blask kłujący w oczy + Święta, święta, święta — Ziemia co nas nosi Święty kurz na drodze, święty kij przy nodze, święte krople potu Święty kamień w polu przysiądź na nim panie Święty płomyk rosy, święte wędrowanie - Święty chleb -- chleba łamanie, święta sól -- solą witanie + Święty chleb — chleba łamanie, święta sól — solą witanie Święta cisza święty śpiew Znojny łomot prawych serc Słupy oczu zapatrzonych @@ -36,7 +36,7 @@ - La, la, la... + La, la, la… diff --git a/songs/pl/poezja/Sielanka_o_domu.xml b/songs/pl/poezja/Sielanka_o_domu.xml new file mode 100644 index 00000000..3ab4fd7b --- /dev/null +++ b/songs/pl/poezja/Sielanka_o_domu.xml @@ -0,0 +1,92 @@ + + + + Wojciech Bellon + + Wacław Juszczyn + + + + + + A jeśli dom będę miał + To będzie bukowy koniecznie + Pachnący i słoneczny + Wieczorem usiądę, wiatr gra + A zegar na ścianie gwarzy + Dobrze się idzie, panie zegarze + Tik tak, tik tak, tik tak + Świeca skwierczy i mruga przewrotnie + Więc puszczam oko do niej + Dobry humor dziś pani ma + Dobry humor dziś pani ma + + + Szukam, szukania mi trzeba + Domu gitarą i piórem + A góry nade mną jak niebo + A niebo nade mną jak góry + + + Gdy głosy usłyszę u drzwi + Czyjekolwiek, wejdźcie — poproszę + Jestem zbieraczem głosów + A dom mój bardzo lubi gdy + Śmiech ściany mu rozjaśnia + I gędźby lubi i pieśni + Wpadnijcie na parę chwil + Kiedy los was zawiedzie w te strony + Bo dom mój otworem stoi + Dla takich jak my + Dla takich jak wy + + + + Zaproszę dzień i noc + Zaproszę cztery wiatry + Dla wszystkich drzwi otwarte + Ktoś poda pierwszy ton + Zagramy na góry koncert + Buków porą pachnącą + Nasiąkną ściany grą + A zmęczonym wędrownikom + Odpocząć pozwolą muzyką + Bo taki będzie mój dom + Bo taki będzie mój dom + Bo taki będzie mój dom + + + + + + + + + + + + + + + + + + Jan Inowolski + + + + + + + + + + + + + + + + + + diff --git a/songs/Sierpien.xml b/songs/pl/poezja/Sierpien.xml similarity index 63% rename from songs/Sierpien.xml rename to songs/pl/poezja/Sierpien.xml index b055da7a..e12e73db 100644 --- a/songs/Sierpien.xml +++ b/songs/pl/poezja/Sierpien.xml @@ -1,5 +1,5 @@ - + O sierpniu, Łzy co nam z oczu zlecą Konstanty Ildefons Gałczyński Refren 2x szybciej. @@ -11,25 +11,25 @@ Wiersz Gałczyńskiego nosi tytuł ,,O sierpniu'', zaś piosenka Wierzbickiego j Stanęły pod mym oknem jak wiejscy muzykanci - Gwiazdy zielonooki sierpień po sadzie tańczył + Gwiazdy zielonooki sierpień po sadzie tańczył Księżycem całowany sad się rozrzewnił - Lekki i cygański był taniec sierpnia + Lekki i cygański był taniec sierpnia - Łzy co nam z oczu zlecą - Ziemi o nas powiedzą - Chodźmy w drogę łzy w drodze obeschną - Łzy nie przynoszą ujmy - A my w tę noc wędrujmy - Roziskrzoną rozśpiewaną bezkresną + Łzy co nam z oczu zlecą + Ziemi o nas powiedzą + Chodźmy w drogę łzy w drodze obeschną + Łzy nie przynoszą ujmy + A my w tę noc wędrujmy + Roziskrzoną rozśpiewaną bezkresną Stanęły pod mym oknem jak wiejscy muzykanci - Gwiazdy zielonooki sierpień po sadzie tańczył + Gwiazdy zielonooki sierpień po sadzie tańczył Raz złocistość w korze drzew drżała to sen ją płoszył - Ludzie mrużyli noc otwierała oczy + Ludzie mrużyli noc otwierała oczy diff --git a/songs/pl/poezja/Slynny_niebieski_prochowiec.xml b/songs/pl/poezja/Slynny_niebieski_prochowiec.xml new file mode 100644 index 00000000..eef55b34 --- /dev/null +++ b/songs/pl/poezja/Slynny_niebieski_prochowiec.xml @@ -0,0 +1,125 @@ + + + + Leonard Cohen + + Leonard Cohen + Maciej Zembaty + Maciej Zembaty + Famous Blue Raincoat + + + Jest czwarta nad ranem + Już kończy się grudzień + List piszę do Ciebie + Czy dobrze się czujesz + W New Yorku jest zimno + Poza tym w porządku + Muzyka na Clinton street + Gra na okrągło + + + Podobno budujesz + Swój własny dom + W głębi pustyni + Od życia nie chcesz już nic + Lecz musiałeś zachować wspomnienia + + + A Jane do dziś + Kosmyk włosów ma Twych + Wiem gdy dawałeś go jej + Myślałeś już o tym by zwi + Lecz niełatwo jest zwi + + + Gdy tu byłeś ostatnio + Wyglądałeś jak starzec + Podniszczyłeś swój słynny + Niebieski prochowiec + Do każdego pociągu + Wychodziłeś na dworzec + Bez swej Lili Marlene + Pojechałeś do domu + + + Dałeś mojej kobiecie + Z Twego życia zaledwie strzęp + Nie jest już moją żoną + Lecz twoją też nie + + + Wciąż widzę Cię + Z różą w zębach choć wiem + Że to tani był greps + Lecz spodobał się Jane + Jane pozdrawia cię t + + + + + + + + + + + Cóż mam ci powiedzieć + Mój bracie mój kacie + Sam nie wiem czy pisać + Czy nie + Brakuje mi ciebie + Przebaczam od siebie + To dobrze żeś w drogę + Mi wszedł + + + A może byś tak tutaj wpadł + Do mnie lub do Jane + Pomyśl Twój wróg sypia twardo + A jego żona nudzi się + + + Więc dziękuję ci że + Wypędziłeś jej z oczu ten żal + Ja myślałem, że musi być tak + Nie starałem się więc + + + A Jane do dziś + Kosmyk włosów ma twych + Wiem że gdy dawałeś go jej + Myślałeś już o tym by zwi + + + + + + + + + + + + Z poważaniem + Leonard Cohen + + + + + + + 35 x Leonard Coheb + Poezja śpiewana + + + + + chord positioning + + + Onufry + + Układ chwytów wg płyty. + + diff --git a/songs/Sprzysiezeni.xml b/songs/pl/poezja/Sprzysiezeni.xml similarity index 98% rename from songs/Sprzysiezeni.xml rename to songs/pl/poezja/Sprzysiezeni.xml index f18449c0..dd0cf84c 100644 --- a/songs/Sprzysiezeni.xml +++ b/songs/pl/poezja/Sprzysiezeni.xml @@ -1,5 +1,5 @@ - + Wojciech Bellon diff --git a/songs/Stary_cowboy.xml b/songs/pl/poezja/Stary_cowboy.xml similarity index 97% rename from songs/Stary_cowboy.xml rename to songs/pl/poezja/Stary_cowboy.xml index 5414dbbd..73ec81ec 100644 --- a/songs/Stary_cowboy.xml +++ b/songs/pl/poezja/Stary_cowboy.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Swiadkowie_lata.xml b/songs/pl/poezja/Swiadkowie_lata.xml similarity index 95% rename from songs/Swiadkowie_lata.xml rename to songs/pl/poezja/Swiadkowie_lata.xml index bf346d33..76ab83db 100644 --- a/songs/Swiadkowie_lata.xml +++ b/songs/pl/poezja/Swiadkowie_lata.xml @@ -1,5 +1,5 @@ - + Arkadiusz Kobus diff --git a/songs/Swierszcz.xml b/songs/pl/poezja/Swierszcz.xml similarity index 95% rename from songs/Swierszcz.xml rename to songs/pl/poezja/Swierszcz.xml index 0da4ed94..caf85ad5 100644 --- a/songs/Swierszcz.xml +++ b/songs/pl/poezja/Swierszcz.xml @@ -1,5 +1,5 @@ - + Piosenka zasłyszana gdzieś przez Martynę - poszukuję informacji o wykonawcy i autorach. diff --git a/songs/Szara_ballada_(3).xml b/songs/pl/poezja/Szara_ballada.xml similarity index 97% rename from songs/Szara_ballada_(3).xml rename to songs/pl/poezja/Szara_ballada.xml index 20a6b59e..72c1ff08 100644 --- a/songs/Szara_ballada_(3).xml +++ b/songs/pl/poezja/Szara_ballada.xml @@ -1,5 +1,5 @@ - + Józef Baran diff --git a/songs/Szczescie.xml b/songs/pl/poezja/Szczescie.xml similarity index 85% rename from songs/Szczescie.xml rename to songs/pl/poezja/Szczescie.xml index 8846da41..21b2f3fa 100644 --- a/songs/Szczescie.xml +++ b/songs/pl/poezja/Szczescie.xml @@ -1,5 +1,5 @@ - + Bolesław Leśmian @@ -12,27 +12,27 @@ - + - + - + - + - + - + - + - + Coś srebrnego dzieje się w chmur dali @@ -50,27 +50,27 @@ - + - + - + - + - + - + - + - + Czemóż ono w mroku szuka treści @@ -82,27 +82,27 @@ - + - + - + - + - + - + - + - + diff --git a/songs/Szkic_do_portretu.xml b/songs/pl/poezja/Szkic_do_portretu.xml similarity index 97% rename from songs/Szkic_do_portretu.xml rename to songs/pl/poezja/Szkic_do_portretu.xml index ececacac..2c100ce4 100644 --- a/songs/Szkic_do_portretu.xml +++ b/songs/pl/poezja/Szkic_do_portretu.xml @@ -1,5 +1,5 @@ - + Mariusz Zadura diff --git a/songs/pl/poezja/Tango_na_glos_orkiestre_i_jeszcze_jeden_glos.xml b/songs/pl/poezja/Tango_na_glos_orkiestre_i_jeszcze_jeden_glos.xml new file mode 100644 index 00000000..ef589d01 --- /dev/null +++ b/songs/pl/poezja/Tango_na_glos_orkiestre_i_jeszcze_jeden_glos.xml @@ -0,0 +1,94 @@ + + + Grzegorz Tomczak + Metrum się zmienia - zwrotki są na 4 w rytmie tanga (chyba), refreny na 3. + Grzegorz Tomczak + Grzegorz Tomczak + + + Było ciemno, więc niewiele sam widziałem + i pamiętam też niewiele + Było ciemno, wiem, że z pochyloną głową stałem + tak, jak stoi się w kościele + A więc: stałem, nie widziałem, było ciemno, + lecz słyszałem wciąż + Ten głos, ten głos, ten głos + + + Podejdź bliżej, więc podszedłem jak skruszony obywatel + do przedstawiciela władzy + Podejdź bliżej, już wiedziałem że ucieczka błyskawiczna + tu niczemu nie zaradzi + Więc poszedłem, posłuchałem, było ciemno, + wciąż myślałem czyj + Ten głos, ten głos, ten głos + + + To nie wróg był, bo głos cichy i subtelny + ale polski i nieskazitelny + To nie Bóg był, ten by zaraz mnie zapytał + czy mój światopogląd celny + Więc to nie był wróg na pewno, bo nad głową + tuż nade mną usłyszałem + Ten głos, ten głos, ten głos + + + Ty to masz szczęście, że w tym momencie + Żyć ci przyszło w kraju nad Wisłą + Ty to masz szczęście + Twój kraj szczęśliwy, piękny, prawdziwy + Ludzie uczynni, w sercach niewinni + Twój kraj szczęśliwy + + + Było ciemno, więc nie mogłem stwierdzić komu + pomyliły się epoki lub stulecia + Było ciemno, może to Mickiewicz jaki + bo tak zgrabnie romantyczną wiarę krzesał + Trochę niezorientowany, bo w tym kraju tak kochanym + dawno nie był już widziany + + + Może Norwid, bo coś plótł, że łza gdzieś znad planety spada + i groby przecieka + Ale skąd by, skąd by wiedział, że na jego słowa + ktoś tu jeszcze może czekać + Teraz w m odzie nie Norwidy, filozofy, okryjbidy, + więc czyj + Ten głos, ten głos, ten głos + + + Było ciemno, więc sam nie wiem, jak do domu + wprost doszedłem i do siebie + Było ciemno, a ja czułem się jak w niebie, + choć dlaczego nie wiem, nie wiem + Z pochyloną głową stałem, wierzcie: ja nie zwariowałem, + lecz jak dziecko powtarzałem + Na głos, na głos, na głos + + + Ja to mam szczęście, że w tym momencie + Żyć mi przyszło w kraju nad Wisłą + Ja to mam szczęście + Mój kraj szczęśliwy, piękny, prawdziwy + Ludzie uczynni, w sercach niewinni + Mój kraj szczęśliwy + + + + + + + + + + + chord positioning + + + Onufry + Krzysiek Cz. + + Nie wiem, jak w takiej sytuacji zapisać bicie. I nie w pełni odpowiadam za rozmieszczenie akordów. + + diff --git a/songs/Tesknota.xml b/songs/pl/poezja/Tesknota.xml similarity index 95% rename from songs/Tesknota.xml rename to songs/pl/poezja/Tesknota.xml index a90a317f..81e7836c 100644 --- a/songs/Tesknota.xml +++ b/songs/pl/poezja/Tesknota.xml @@ -1,5 +1,5 @@ - + Leopold Staff diff --git a/songs/Testament.xml b/songs/pl/poezja/Testament.xml similarity index 95% rename from songs/Testament.xml rename to songs/pl/poezja/Testament.xml index 17aa4f05..c0db225c 100644 --- a/songs/Testament.xml +++ b/songs/pl/poezja/Testament.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/To_co_bylo_minelo.xml b/songs/pl/poezja/To_co_bylo_minelo.xml similarity index 97% rename from songs/To_co_bylo_minelo.xml rename to songs/pl/poezja/To_co_bylo_minelo.xml index d13ee790..7f1464d1 100644 --- a/songs/To_co_bylo_minelo.xml +++ b/songs/pl/poezja/To_co_bylo_minelo.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Tobie_albo_zawieja_w_Michigan.xml b/songs/pl/poezja/Tobie_albo_zawieja_w_Michigan.xml similarity index 83% rename from songs/Tobie_albo_zawieja_w_Michigan.xml rename to songs/pl/poezja/Tobie_albo_zawieja_w_Michigan.xml index 769cc71c..1ac036df 100644 --- a/songs/Tobie_albo_zawieja_w_Michigan.xml +++ b/songs/pl/poezja/Tobie_albo_zawieja_w_Michigan.xml @@ -1,5 +1,5 @@ - + Edward Stachura @@ -12,21 +12,21 @@ - + - + - + - + - + - + Zawieja w Michigan @@ -38,7 +38,7 @@ Pustkowie hen i hen Zawieja mróz i biel Zawyłem aż po kres - Czy spodziewać się, że... + Czy spodziewać się, że… A wicher w trąbki dmie Nie nie nie nie nie @@ -46,21 +46,21 @@ - + - + - + - + - + - + Miłości nasze tam @@ -74,26 +74,26 @@ - + - + - + - + - + - + - + - + diff --git a/songs/Trzej_wodzowie.xml b/songs/pl/poezja/Trzej_wodzowie.xml similarity index 98% rename from songs/Trzej_wodzowie.xml rename to songs/pl/poezja/Trzej_wodzowie.xml index 9ce16654..fe6cdbe4 100644 --- a/songs/Trzej_wodzowie.xml +++ b/songs/pl/poezja/Trzej_wodzowie.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/poezja/Tyle_mi_zostalo_co_mi_nakapalo.xml b/songs/pl/poezja/Tyle_mi_zostalo_co_mi_nakapalo.xml new file mode 100644 index 00000000..d42b9e2d --- /dev/null +++ b/songs/pl/poezja/Tyle_mi_zostalo_co_mi_nakapalo.xml @@ -0,0 +1,86 @@ + + + Krzysztof Daukszewicz + Krzysztof Daukszewicz + Krzysztof Daukszewicz + + + Siedzę w swoim domu w kącie + W przytulnych walonkach + Jeszcze wczoraj było ciepło + Grzało choć od słońca + Dzisiaj coś mi nawaliło + I się prąd wyłączył + Tylko zacier jest na chodzie + I z rurki się sączy + + + Tyle mi zastało + Co mi nakapało + Jak przyjdzie milicja + Będzie prohibicja + + + Wody wczoraj mi naciekło + Prawie pół miednicy + Dzisiał łup! i wywaliło + Rury w kamienicy + Tych żeberek co pod oknem + Ogrzać już nie sposób + Gdyby one były z mięsa + Miałbym chociaż rosół + + + + Teraz z kranów mi nie leci + W łazience mi cuchnie + Gaz bezwonny to nie włączam + Bo a nuż wybuchnie + W kuchni mrozi się lodówka + Ale teraz zewnętrznie + Pralka tylko wtedy chodzi + Kiedy piorę ręcznie + + + + Telewizor wyłączyłem + Świecił na niebiesko + Bo samogon gdy wypędzę + To chowam w kineskop + Zresztą może bym i włączył + Ale nie ma prądu + Tylko zacier jest na chodzie + I dowód do wglądu + + + + I tak jest każdego roku + Kiedy przyjdzie zima + Myślę przyjdzie jeszcze jedna + I blok nie wytrzyma + Póki co by ta następna + Nie dała we znaki + Kupię drugi telewizor + By mieć dwa baniaki + + + + + + + + + + + Bimber + Samogon + + Stare and Nowe + Piosenka kabaretowa + + + + + + + diff --git a/songs/pl/poezja/Tylko_chciec.xml b/songs/pl/poezja/Tylko_chciec.xml new file mode 100644 index 00000000..12cf069f --- /dev/null +++ b/songs/pl/poezja/Tylko_chciec.xml @@ -0,0 +1,68 @@ + + + + J.Fiwek + + Z. Piasecki + + + + + + Że spadnie z nieba to co chcesz, + Mylisz się bracie i na pewno — + Nie czekaj cudów, przecież wiesz: + Życie upływa, a masz jedno. + + + Tylko chcieć, będziesz miał słońce co dnia, + Tylko chcieć, rozjaśnisz każdy mrok, + Tylko chcieć, Twój cały będzie zodiak, + Tylko chcieć, a szczęście masz o krok. + Kolory tęczy i złoto zbóż, + Srebro księżyca i zapach róż… + Dla ciebie wszystko! + + + Nie pójdziesz dalej nawet krok, + Gdy stoisz w miejscu — to na pewno. + Nie czekaj cudów, przecież wiesz: + Życie upływa, a masz jedno. + + + + Nie czekaj jutra, dzisiaj j + Obudź się bracie, kwiaty więdną. + I już bez cudów, przecież wiesz: + Życie upływa, a masz jedno. + + + + + + + + + + + + + + Poezja śpiewana + + + + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/U_zrodel_tesknot.xml b/songs/pl/poezja/U_zrodel_tesknot.xml similarity index 95% rename from songs/U_zrodel_tesknot.xml rename to songs/pl/poezja/U_zrodel_tesknot.xml index d30d755c..20fc497f 100644 --- a/songs/U_zrodel_tesknot.xml +++ b/songs/pl/poezja/U_zrodel_tesknot.xml @@ -1,5 +1,5 @@ - + Arkadiusz Kobus diff --git a/songs/Ulice_Londyny.xml b/songs/pl/poezja/Ulice_Londynu.xml similarity index 60% rename from songs/Ulice_Londyny.xml rename to songs/pl/poezja/Ulice_Londynu.xml index 5000863a..5604e3eb 100644 --- a/songs/Ulice_Londyny.xml +++ b/songs/pl/poezja/Ulice_Londynu.xml @@ -1,5 +1,5 @@ - + @@ -20,33 +20,33 @@ - Więc jak możesz mówić, że jesteś sam, + Więc jak możesz mówić, że jesteś sam, - Że dla ciebie słońce nie świeci już. + Że dla ciebie słońce nie świeci już. - Daj mi swą dłoń, a pokażę ci Londyn + Daj mi swą dłoń, a pokażę ci Londyn I może wtedy zmienisz swoje zdanie. - Czy pamiętasz kobietę, która błąka się po mieście, - W jej pięknej niegdyś sukni nie zliczyłbyś dziś łat, - Już nic nie mówi, wzrok ją niesie przed siebie, - W dwóch starych torbach cały dom swój ma. + Czy pamiętasz kobietę, która błąka się po mieście, + W jej pięknej niegdyś sukni nie zliczyłbyś dziś łat, + Już nic nie mówi, wzrok ją niesie przed siebie, + W dwóch starych torbach cały dom swój ma. - Czy pamiętasz starego pijaka z dzielnicy slumsów, - Jestcieniem swego życia, ulica to jego dom, - Ciepłem darmowej zupy ogrzał dłonie swe. - Pomyśl, jeśli umrze dziś, czy ktoś uroni łzę? + Czy pamiętasz starego pijaka z dzielnicy slumsów, + Jestcieniem swego życia, ulica to jego dom, + Ciepłem darmowej zupy ogrzał dłonie swe. + Pomyśl, jeśli umrze dziś, czy ktoś uroni łzę? - Przed przytułkiem dla biednych żołnierzy stary człowiek siadł, - Blask jego medali czas już dawno skradł - I tylko o litość prosi w swej pieśni zimowy wiatr - Dla bohaterów, o których zapomniał bezduszny świat. + Przed przytułkiem dla biednych żołnierzy stary człowiek siadł, + Blask jego medali czas już dawno skradł + I tylko o litość prosi w swej pieśni zimowy wiatr + Dla bohaterów, o których zapomniał bezduszny świat. diff --git a/songs/W_lesie_listopadowym.xml b/songs/pl/poezja/W_lesie_listopadowym.xml similarity index 94% rename from songs/W_lesie_listopadowym.xml rename to songs/pl/poezja/W_lesie_listopadowym.xml index 0ac308db..435e583b 100644 --- a/songs/W_lesie_listopadowym.xml +++ b/songs/pl/poezja/W_lesie_listopadowym.xml @@ -1,5 +1,5 @@ - + @@ -15,7 +15,7 @@ Niż śpiewak płatny na chórach Wokół lasy, lasy i wiatr I całe życie w wiatru świstach - Wszyscy, których kocham -- wita Was + Wszyscy, których kocham — wita Was Modrzewia ikona złocista diff --git a/songs/W_malinowym_chrusniaku.xml b/songs/pl/poezja/W_malinowym_chrusniaku.xml similarity index 95% rename from songs/W_malinowym_chrusniaku.xml rename to songs/pl/poezja/W_malinowym_chrusniaku.xml index 32009d3e..b5191a0c 100644 --- a/songs/W_malinowym_chrusniaku.xml +++ b/songs/pl/poezja/W_malinowym_chrusniaku.xml @@ -1,5 +1,5 @@ - + Bolesław Leśmian @@ -26,7 +26,7 @@ - + W malinowym chruśniaku, przed ciekawym wzrokiem @@ -70,12 +70,12 @@ - + I nie wiem jak się stało, w którym okamgnieniu, Żeś dotknęła mi wargą spoconego czoła, - Porwałem twoje dłonie -- oddałaś w skupieniu, + Porwałem twoje dłonie — oddałaś w skupieniu, A chruśniał malinowy trwał wciąż dookoła. diff --git a/songs/pl/poezja/W_taka_cisze.xml b/songs/pl/poezja/W_taka_cisze.xml new file mode 100644 index 00000000..a516e162 --- /dev/null +++ b/songs/pl/poezja/W_taka_cisze.xml @@ -0,0 +1,64 @@ + + + + + Nie ma kategorii disco?! Ale przynajmniej ma znośny refren. + + + + + + + Nie o uśmiech mi chodzi, choć się śmiałaś nie raz, + Ale o to, co kiedyś pojawiło się w nas, + Coś, co przyszło tak nagle i przeszło jak wiatr, + Czego właśnie najbardziej mi brak. + + + Przychodziłem co wieczór, by posłuchać Twych płyt, + O miłości w ogóle nie mówiliśmy nic. + Wyjechałaś tak nagle i cichutko jak mysz, + Zostawiłaś swój adres i list. + + + + W taką, w taką ciszę + Wszystkie gwiazdy na niebie policzę, + Ciebie, Ciebie wołam, + Chociaż cisza i pustka dookoła. + + + + Jesteś moim aniołem i miłością bez dna, + Jesteś moją boginią, którą widzę co dnia, + Jakże długo mam czekać, jak prosić Cię mam, + Każesz trwać w niepewności, więc trwam. + + + + Choć dostaję twe listy, zdjęć parę mam, + Żyję jak grzeszny anioł w tłumie ludzi, lecz sam. + Jeszcze tli się nadzieja, że spotkamy się znów, + Do księżyca się śmiejąc, przywołuję Cię wróć. + + + + + + + + + + Inna + + + + chord positioning + + + Michał Korch + + Nie znalazłem autorów… Może się nie przyznają… + + + diff --git a/songs/pl/poezja/Wanka_Morozow.xml b/songs/pl/poezja/Wanka_Morozow.xml new file mode 100644 index 00000000..f9e7c289 --- /dev/null +++ b/songs/pl/poezja/Wanka_Morozow.xml @@ -0,0 +1,68 @@ + + + + Bułat Okudżawa + + Bułat Okudżawa + Bułat Okudżawa + Wojciech Młynarski + Wańka Marozaw + + + I czegóż chcieć od tego Wani? + Wszak jego winy nie ma w tym. + Wszystkiemu winna tamta pani, + Że poszedł za nią tak jak w dym. + + + A pasowałoby mu wszystko, + Juz lepiej wszystko niż ten traf, + Że z cyrku złapie go artystka, + Na linie tańcząc pośród braw. + + + Gdy w pierwszym geście powitania + Nad głową wzniosła białą dłoń, + Wciągnęło Wanię pożądanie + Bez reszty w swą przepastną toń. + + + Marusię swą porzucił najpierw, + A potem co noc aż do dnia + Z artystką szalał w chińskiej knajpie, + A tam Marusia z żalu schła. + + + A Wania tamtej na stół ciska + Meduzy i w trzech smakach drób, + Nie wiedząc nic, że ta artystka + Wciąż wodę z mózgu robi mu. + + + Bo nie wierzymy w czas kochania, + Że miłość biedy przyda nam, + Ech, Wania, Wania, biedny Wania, + Ot spójrz - po linie idziesz sam. + + + + + + + Nadziei amatorski zespół (Nadieżdy maleńkij orkiestrik)) + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + + + diff --git a/songs/Wczoraj_wieczorem.xml b/songs/pl/poezja/Wczoraj_wieczorem.xml similarity index 93% rename from songs/Wczoraj_wieczorem.xml rename to songs/pl/poezja/Wczoraj_wieczorem.xml index 54683f4f..1cce3a4e 100644 --- a/songs/Wczoraj_wieczorem.xml +++ b/songs/pl/poezja/Wczoraj_wieczorem.xml @@ -1,5 +1,5 @@ - + @@ -14,7 +14,7 @@ Rzuciła mnie robota ot i cały kram W kieszeni $ $ może dwa W kieszeni $ $ może dwa - Wypije ze mną i drinka bieda -- siostra zła + Wypije ze mną i drinka bieda — siostra zła Na łbie siwe kłaki i niepewny los Na łbie siwe kłaki i niepewny los Jak sznur stary dzień kiedy pusty trzos diff --git a/songs/We_wtorek_po_sezonie.xml b/songs/pl/poezja/We_wtorek_w_schronisku_po_sezonie.xml similarity index 96% rename from songs/We_wtorek_po_sezonie.xml rename to songs/pl/poezja/We_wtorek_w_schronisku_po_sezonie.xml index 257ccf2e..b8e82292 100644 --- a/songs/We_wtorek_po_sezonie.xml +++ b/songs/pl/poezja/We_wtorek_w_schronisku_po_sezonie.xml @@ -1,5 +1,5 @@ - + Wiesław Buchcic @@ -69,7 +69,7 @@ Alek - Zgodne z nagraniem -- Alek + Zgodne z nagraniem — Alek diff --git a/songs/Wedrowanie.xml b/songs/pl/poezja/Wedrowanie.xml similarity index 95% rename from songs/Wedrowanie.xml rename to songs/pl/poezja/Wedrowanie.xml index c0973dd3..980cf414 100644 --- a/songs/Wedrowanie.xml +++ b/songs/pl/poezja/Wedrowanie.xml @@ -1,5 +1,5 @@ - + Andrzej Starzec @@ -30,7 +30,7 @@ Przemierzamy drożyny jak wędrowne ptaki Co na niebie kluczem wyznaczają szlaki Dokąd dokąd tak pędzisz uskrzydlony bracie - Pędzisz nie bez celu -- już we krwi to macie + Pędzisz nie bez celu — już we krwi to macie diff --git a/songs/Wedrowiec.xml b/songs/pl/poezja/Wedrowiec.xml similarity index 96% rename from songs/Wedrowiec.xml rename to songs/pl/poezja/Wedrowiec.xml index 732cadbd..3a177c6c 100644 --- a/songs/Wedrowiec.xml +++ b/songs/pl/poezja/Wedrowiec.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Wedrowka_zycie_jest_czlowieka.xml b/songs/pl/poezja/Wedrowka_zycie_jest_czlowieka.xml similarity index 93% rename from songs/Wedrowka_zycie_jest_czlowieka.xml rename to songs/pl/poezja/Wedrowka_zycie_jest_czlowieka.xml index a81d293d..0ba7a78e 100644 --- a/songs/Wedrowka_zycie_jest_czlowieka.xml +++ b/songs/pl/poezja/Wedrowka_zycie_jest_czlowieka.xml @@ -1,5 +1,5 @@ - + Edward Stachura @@ -12,9 +12,9 @@ - + - A, a, a... + A, a, a… Wędrówką jedną życie jest człowieka Idzie wciąż dalej wciąż @@ -48,7 +48,7 @@ - A, a, a... + A, a, a… diff --git a/songs/Wiatr_i_strzyga.xml b/songs/pl/poezja/Wiatr_i_strzyga.xml similarity index 75% rename from songs/Wiatr_i_strzyga.xml rename to songs/pl/poezja/Wiatr_i_strzyga.xml index 51a27a96..259d7519 100644 --- a/songs/Wiatr_i_strzyga.xml +++ b/songs/pl/poezja/Wiatr_i_strzyga.xml @@ -1,5 +1,5 @@ - + Maciej Służała Piosenka przyspiesza w miarę wykonywania @@ -10,15 +10,15 @@ Podkradnę się, w twoich włosach zanurzę dłoń, - Pobiegnę dalej, zniknę, wsiąknę w trawę, - Podejdę chyłkiem, szarpnę za sukni skraj, - Zanim obejrzysz się już mnie nie będzie wcale. + Pobiegnę dalej, zniknę, wsiąknę w trawę, + Podejdę chyłkiem, szarpnę za sukni skraj, + Zanim obejrzysz się już mnie nie będzie wcale. - Psotniku -- wietrze, gdzie znów ukryłeś się? - Poczekaj chwilę -- pstro masz tylko w głowie. + Psotniku — wietrze, gdzie znów ukryłeś się? + Poczekaj chwilę — pstro masz tylko w głowie. Wciąż dokądś pędzisz, o nic nie martwisz się. - Przysiądź na chwilę tu -- smutno mi przecież samej. + Przysiądź na chwilę tu — smutno mi przecież samej. Zakręcę w głowie, obsypię liśćmi twarz, @@ -28,7 +28,7 @@ Szaleńcze, zwolnij, proszę, bo tchu mi brak! - Mój panie, hola -- ręce precz ode mnie! + Mój panie, hola — ręce precz ode mnie! Twych palców dotyk rozpala moją twarz, Po plecach biegnie dreszcz, cała już się rumienię. @@ -40,15 +40,15 @@ Za brodę złapię, tupnę, ugryzę w nos! - Dotrzymam w tańcu kroku -- aż się zdziwisz! + Dotrzymam w tańcu kroku — aż się zdziwisz! Nakręcę uszu, przytrzymam cię za wąs. Zwiodę, uwiodę w las, wplączę cię w pajęczynę. Splątani w jedno czmychniemy w leśny gąszcz, - Wszak życie nasze -- jeno oka mgnienie. + Wszak życie nasze — jeno oka mgnienie. W strumieniu, w trawie nasz zwariowany pląs, - W krzaku dzikiego bzu cisza -- już po spełnieniu... + W krzaku dzikiego bzu cisza — już po spełnieniu… @@ -63,8 +63,8 @@ Onufry - Tekst wg kasety "Baśń". Na razie za słabo to gram, żeby rozmieszczać akordy. -- Onufry -Zespół Krążek (http://krazek.art.pl/) uważa swoją drugą nazwę Tak czy Owak za przejściową i nietrafioną, respektujemy to -- Alek + Tekst wg kasety "Baśń". Na razie za słabo to gram, żeby rozmieszczać akordy. — Onufry +Zespół Krążek (http://krazek.art.pl/) uważa swoją drugą nazwę Tak czy Owak za przejściową i nietrafioną, respektujemy to — Alek diff --git a/songs/Wiatr,_wiosenny_gitarzysta.xml b/songs/pl/poezja/Wiatr_wiosenny_gitarzysta.xml similarity index 96% rename from songs/Wiatr,_wiosenny_gitarzysta.xml rename to songs/pl/poezja/Wiatr_wiosenny_gitarzysta.xml index 3794b157..baac57af 100644 --- a/songs/Wiatr,_wiosenny_gitarzysta.xml +++ b/songs/pl/poezja/Wiatr_wiosenny_gitarzysta.xml @@ -1,5 +1,5 @@ - + @@ -41,7 +41,7 @@ Wietrze wiosenny piosenkarzu Jak długo będę twoja marząc - Aż wróci wiatr -- zimowy wicher + Aż wróci wiatr — zimowy wicher diff --git a/songs/pl/poezja/Wieczor.xml b/songs/pl/poezja/Wieczor.xml new file mode 100644 index 00000000..a0118a34 --- /dev/null +++ b/songs/pl/poezja/Wieczor.xml @@ -0,0 +1,70 @@ + + + + Jerzy Reiser + + Jerzy Reiser + Browar Żywiec + + + + + Spójrz, odchodzi noc, + Odchodzi tam gdzie rosną maki. + Maków łan i bławatków modry wzór, + Modry wzór na czerwonym dywanie. + Posłuchaj, gdzieś daleko ktoś gra, + Zmienia wciąż rytm na przekór. + A jutro pójdziesz ze mną, + Odmieniona przez świt, + Uśmiechnięta, rozmarzona, + Zawstydzona jak nikt. + + + I zagrają nam muzyki wszystkich dni, + Wszystkich nocy otulonych w dobry sen, + Gdy do tańca razem znów będziemy szli, + A najdłuższy z tańców to jest właśnie ten, + Kiedy grają nam muzyki wszystkich dni, + Wszystkich nocy otulonych w dobry sen. + + + Szept, najcichszy szept, + Oddać ma najgłębszą ciszę. + Możesz nic nie mówić i tak wiem, + Co się w myślach mych zapisze. + Świeć, świeć mi gwiazdo w tę noc, + Nie chcę sama wchodzić w przyszłość. + A jutro, kiedy będę + Odmieniona przez świt, + Uśmiechnięta, rozmarzona, + Zawstydzona jak nikt. + + + Oczarują nas pejzaże wszystkich zim, + Wszystkich wiosen, w których wieczne lato trwa, + Aż zmęczeni mocno malowaniem tym, + Rozbijemy o podłogę trochę szkła + I zachwycą nas pejzaże wszystkich zim, + Wszystkich wiosen, w których wieczne lato trwa. + + + + + + + + Michał Korch + + + + + + chord positioning + + + + + + + diff --git a/songs/Wielki_Woz.xml b/songs/pl/poezja/Wielki_Woz.xml similarity index 98% rename from songs/Wielki_Woz.xml rename to songs/pl/poezja/Wielki_Woz.xml index 84a6ed65..eec34096 100644 --- a/songs/Wielki_Woz.xml +++ b/songs/pl/poezja/Wielki_Woz.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Wizyta_u_malarki.xml b/songs/pl/poezja/Wizyta_u_malarki.xml similarity index 98% rename from songs/Wizyta_u_malarki.xml rename to songs/pl/poezja/Wizyta_u_malarki.xml index 0e7eae7e..ee0196f9 100644 --- a/songs/Wizyta_u_malarki.xml +++ b/songs/pl/poezja/Wizyta_u_malarki.xml @@ -1,5 +1,5 @@ - + Andrzej Sikorowski diff --git a/songs/Wloz_plecak.xml b/songs/pl/poezja/Wloz_plecak.xml similarity index 97% rename from songs/Wloz_plecak.xml rename to songs/pl/poezja/Wloz_plecak.xml index 112ce1ef..540eae29 100644 --- a/songs/Wloz_plecak.xml +++ b/songs/pl/poezja/Wloz_plecak.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/poezja/Wodka_tylko_wodka.xml b/songs/pl/poezja/Wodka_tylko_wodka.xml new file mode 100644 index 00000000..5d030175 --- /dev/null +++ b/songs/pl/poezja/Wodka_tylko_wodka.xml @@ -0,0 +1,88 @@ + + + Raport z izby otrzeźwień + Krzysztof Daukszewicz + Krzysztof Daukszewicz + + + Wchodzi pierwszy zalany, drzwi się zamykają + Widać film ma urwany, kica w kąt jak zając + I w bełkocie: ,,wylali'', bez motywowacji + Pije bo kac jest lepszy, od stanów frustracji + Tylko kto mnie mać tak skurczył do rozmiarów liliputka + + + Przez judasza głos doszedł: + - Wódka tylko wódka ! + + + Wchodzi facet ubrany, równo jak pod sznurek + Mówi ,,Bardzo przepraszam'', widać zna kulturę + I się chłopcom przedstawił ,,Macie tu aktora'' + ,,Który, żeby zarobić zgrywa amatora'' + ,,Ktoś mi kurza twarz podmienił Hamleta na krasnoludka'' + + + + Po aktorze, małolat jeszcze ma trądziki + ,,W domu rozłam'' powiada, w budzie narkotyki + Jeszcze doszły do tego z wychowania dwóje + ,,Synu'' rzekł mu artysta ,,ja cię adoptuję'' + Kto urządził tak małego? Jaka na to odtrutka? + + + + Teraz znany dziennikarz, każdy się przymyka + Nie wiadomo czy węszy, czy się też nałykał + Nagle głos małolata przerwał jego ciszę + Pewnie pije, bo trzeźwy tego nie napisze + Co się stało z redaktorem, że się chwieje jak łódka + + + + Teraz na strasznej bani elegancka pani + Nagle wszyscy dookoła chłopcy malowani + Teraz wiem — rzecze dama — czemu kraj zaniemógł + Bowiem tutaj się skryły resztki gentelmanów + Ktoś was chłopcy najmilejsi znów wystrychnął na dudka + + + + Po niej wielki uczony też ubzdryngolony + Ale mądrość w nim taka, że aż bić pokłony + Póki talent mój — rzecze — w rękach decydentów + Ni do pracy powrotu, ni do abstynętów + Kto mnie jeszcze raz przekona, że przyczyny tkwią w skutkach + + + + Na to powstał socjolog, co spał od południa + Który z braku etatu, w szklarni się zatrudniał + Rzekł: pisałem doktorat, że nie problem w ,,czystej'' + I dlatego panowie jestem wciąż magistrem + Tylko praca jest odtrutką na taplanie się w smutkach + + + + I wsunęli się wszyscy pod świeżutkie kołdry + Wszyscy, których zjednało, zalewanie mordy + Tylko biedny artysta ciągnął wciąż do ludzi + I z pijackim uporem — śpiących chciał rozbudzić + Co nam szkodzi w tym życiu niech mi z was ktoś odpowie! + + + Przez judasza głos doszedł: + - Picie kolorowej ! + + + + + + + + + + Poprawiłem na bazie: +https://www.youtube.com/watch?v=WEaTe29oIdA&t=6s + + diff --git a/songs/Wojtka_Bellona_ostatnia_ziemska_podroz_do_Wlodawy.xml b/songs/pl/poezja/Wojtka_Bellona_ostatnia_ziemska_podroz_do_Wlodawy.xml similarity index 98% rename from songs/Wojtka_Bellona_ostatnia_ziemska_podroz_do_Wlodawy.xml rename to songs/pl/poezja/Wojtka_Bellona_ostatnia_ziemska_podroz_do_Wlodawy.xml index e3d2b43c..cf109605 100644 --- a/songs/Wojtka_Bellona_ostatnia_ziemska_podroz_do_Wlodawy.xml +++ b/songs/pl/poezja/Wojtka_Bellona_ostatnia_ziemska_podroz_do_Wlodawy.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Wrozba.xml b/songs/pl/poezja/Wrozba.xml similarity index 53% rename from songs/Wrozba.xml rename to songs/pl/poezja/Wrozba.xml index 94df9b15..c20c848b 100644 --- a/songs/Wrozba.xml +++ b/songs/pl/poezja/Wrozba.xml @@ -1,5 +1,5 @@ - + Bułat Okudżawa @@ -9,46 +9,46 @@ Primieta - Jeśli w niebie krąży kruk, - Wojnę nam wypowie wróg. + Jeśli w niebie krąży kruk, + Wojnę nam wypowie wróg. - Zabić kruka — prosta rzecz, + Zabić kruka — prosta rzecz, - To i wróg odejdzie precz. + To i wróg odejdzie precz. - Zabić kruka — prosta rzecz, - To i wróg odejdzie precz. + Zabić kruka — prosta rzecz, + To i wróg odejdzie precz. - A kto chciałby strzelić doń, + A kto chciałby strzelić doń, - Musi załadować broń. + Musi załadować broń. A jak trafi broń do rąk, - Rychło przyjdzie dalszy ciąg: + Rychło przyjdzie dalszy ciąg: - Dość wypalić, bracie mój, + Dość wypalić, bracie mój, - Żeby kul zaświstał rój. + Żeby kul zaświstał rój. A tym kulom nie żal nas, - Więc trafiają co i raz, + Więc trafiają co i raz, - Czy to w głowę, czy to w brzuch, + Czy to w głowę, czy to w brzuch, - Wszystko jedno — wróg, czy druh. + Wszystko jedno — wróg, czy druh. - Wszystko jedno — wróg czy druh, - Wszystko rozniesione w puch, + Wszystko jedno — wróg czy druh, + Wszystko rozniesione w puch, - Krąży kruk w czerwonej mgle, + Krąży kruk w czerwonej mgle, - Nie ma kto mu strzelić w łeb. + Nie ma kto mu strzelić w łeb. diff --git a/songs/Wrzosowisko.xml b/songs/pl/poezja/Wrzosowisko.xml similarity index 78% rename from songs/Wrzosowisko.xml rename to songs/pl/poezja/Wrzosowisko.xml index 17c9beb2..f9e46bc0 100644 --- a/songs/Wrzosowisko.xml +++ b/songs/pl/poezja/Wrzosowisko.xml @@ -1,5 +1,5 @@ - + Edward Stachura @@ -9,7 +9,7 @@ - + Zrozum to co powiem, spróbuj to zrozumieć dobrze @@ -21,7 +21,7 @@ Z nim będziesz szczęśliwsza Dużo szczęśliwsza będziesz z nim - Ja cóż -- włóczęga, niespokojny duch + Ja cóż — włóczęga, niespokojny duch Ze mną można tylko pójść na wrzosowisko I zapomnieć wszystko Jaka epoka, jaki wiek, jaki rok, jaki miesiąc, jaki dzień @@ -29,7 +29,7 @@ - + Nie myśl, że nie kocham lub, że tylko trochę diff --git a/songs/pl/poezja/Wspomnienia.xml b/songs/pl/poezja/Wspomnienia.xml new file mode 100644 index 00000000..bbb68dab --- /dev/null +++ b/songs/pl/poezja/Wspomnienia.xml @@ -0,0 +1,65 @@ + + + Kanada + Phil Spector, Leonard Cohen + Do sprawdzenia akordy i ustawienie nad tekstem + Phil Spector + Maciej Zębaty + Maciej Karpiński, Maciej Zembaty + Memories + + + Lata 50-te, Kanada. Brudna przepocona sala gimnastyczna w jakiejś + kanadyjskiej szkole. Dziewczęta tańczą ze sobą, chłopcy trochę pijani + podpierają drabinki gimnastyczne. W kieszeniach butelki taniego, + botwinowego wina po 21 centów, a może nawet po 19 centów + + + Frankie Lane właśnie śpiewał "Jesabel" + Przypiąłem więc Żelazny Krzyż do piersi swej + Podszedłem do najwyższej z dziewczyn i najbardziej blond + Powiedziałem: Jeszcze nie znasz mnie i to twój wielki błąd + Więc czy pokażesz mi + Powiedz, czy pokażesz mi + Gadaj, czy pokażesz mi + Swe nagie ciało? + + + A ja skoncentruję się przed czekającym mnie + w następnej zwrotce niełatwym zadaniu aktorskim + Z tekstu wynika, że będę musiał wcielić się w postać + Niewinnej, jasnowłosej, kanadyjskiej nastolatki + + + Chodź odtańczymy w najciemniejszy kąt + Tam może nie odepchnę twoich rąk + Wyraźnie słyszę w twoim głosie wielki głód + Wszystkiego dotknąć, czego zechcesz będziesz mógł + Lecz nie pokażę ci + Nigdy nie pokażę ci + W życiu nie pokażę ci + Nagiego ciała! + + + Tańczymy blisko, zespół zagrał ,,Star dust'' + Konfetti, serpentyny lecą prosto w nas + Szepnęła: Masz minutę, by zakochać się + W tak uroczystej chwili muszę wierzyć że + Pokażesz jednak mi + Że pokażesz w końcu mi + Że pokażesz dzisiaj mi + Swe nagie ciało! + + + + + + + + + + Tekst: KT + + Akordy + + diff --git a/songs/Zabierz_mnie_na_stacje.xml b/songs/pl/poezja/Zabierz_mnie_na_stacje.xml similarity index 52% rename from songs/Zabierz_mnie_na_stacje.xml rename to songs/pl/poezja/Zabierz_mnie_na_stacje.xml index 9a0c5af6..76386556 100644 --- a/songs/Zabierz_mnie_na_stacje.xml +++ b/songs/pl/poezja/Zabierz_mnie_na_stacje.xml @@ -1,5 +1,5 @@ - + Wojciech Bellon @@ -9,43 +9,43 @@ - Zabierz mnie na stację - Daj mi bilet w garść - Czas na medytację nadszedł - Bo nie mam już żadnych szans + Zabierz mnie na stację + Daj mi bilet w garść + Czas na medytację nadszedł + Bo nie mam już żadnych szans - Miałem kiedyś wszystko - Mogłem krzyczeć mam - Dziś jak bańka sen mój prysnął + Miałem kiedyś wszystko + Mogłem krzyczeć mam + Dziś jak bańka sen mój prysnął I jestem sam, całkiem sam - Miałem stu przyjaciół - I otwarte wszędzie drzwi - Dzisiaj nie wiem czy majaczę - Czy życie moje mi się śni + Miałem stu przyjaciół + I otwarte wszędzie drzwi + Dzisiaj nie wiem czy majaczę + Czy życie moje mi się śni - Miałem kiedyś ciebie - Miasta zgiełk i blask - Dziś na moim niebie nie ma - Nie, nie ma nawet gwiazd + Miałem kiedyś ciebie + Miasta zgiełk i blask + Dziś na moim niebie nie ma + Nie, nie ma nawet gwiazd - Zabierz mnie na stację - Daj mi bilet w garść - Czas na medytację nadszedł - Bo jestem sam i nie mam żadnych szans + Zabierz mnie na stację + Daj mi bilet w garść + Czas na medytację nadszedł + Bo jestem sam i nie mam żadnych szans diff --git a/songs/pl/poezja/Zal_za_Bulatem_O.xml b/songs/pl/poezja/Zal_za_Bulatem_O.xml new file mode 100644 index 00000000..acd21250 --- /dev/null +++ b/songs/pl/poezja/Zal_za_Bulatem_O.xml @@ -0,0 +1,66 @@ + + + + Andrzej Sikorowski + + Andrzej Sikorowski + Pod Budą + + + + + + + + Zawsze śpiewał po cichu bez złości + chociaż czasy leciutkie nie były + bo w balladzie im więcej miłości więcej sy + Zawsze śpiewał po cichu bez złości + chociaż statek już walił o dno + i dlatego na zawsze zagościł w moim domu Pan Bułat 0. + + + To jest żal za Panem Bułatem czyli żal za minioną młodością + kiedy jego marzenia skrzydlate pozwalały się łudzić wolnością + To jest żal za Bułatem 0., pierwszą wódką i pierwszą kobietą + kiedy z trudem do przodu się szło ale czasem wierzono poetom + + + + Dziś podoba się inna piosenka + dzisiaj inne potrzeby są w tłumach + i dlatego fałszuje panienka o koniku hop siup na biegunach + A ja zawsze już będę się spierał + z wielkim Panem co twarzy ma sto + że nam kogoś takiego zabiera jak Pan Bułat "gospodin O" + + + + To jest żal za Bułatem 0. pierwszą wódką i pierwszą kobietą + kiedy z trudem do przodu się szło ale czasem wierzono poetom + + + + + + + + + + + + żal za + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/Zaledwo_wiem.xml b/songs/pl/poezja/Zaledwo_wiem.xml similarity index 93% rename from songs/Zaledwo_wiem.xml rename to songs/pl/poezja/Zaledwo_wiem.xml index f24df82c..811e5583 100644 --- a/songs/Zaledwo_wiem.xml +++ b/songs/pl/poezja/Zaledwo_wiem.xml @@ -1,5 +1,5 @@ - + Leopold Staff @@ -18,7 +18,7 @@ Słuchałem fal płynących w dal I czułem jak łzy w sobie Padło mi iść przez zwiędły liść - I szedłem jak po grobie ... + I szedłem jak po grobie … Kto szczęścia zna przyczynę? diff --git a/songs/Zamieszkamy_pod_wspolnym_dachem.xml b/songs/pl/poezja/Zamieszkamy_pod_wspolnym_dachem.xml similarity index 95% rename from songs/Zamieszkamy_pod_wspolnym_dachem.xml rename to songs/pl/poezja/Zamieszkamy_pod_wspolnym_dachem.xml index 3a837709..4722e8c9 100644 --- a/songs/Zamieszkamy_pod_wspolnym_dachem.xml +++ b/songs/pl/poezja/Zamieszkamy_pod_wspolnym_dachem.xml @@ -1,5 +1,5 @@ - + Andrzej Sikorowski @@ -14,7 +14,7 @@ - + Zamieszkamy pod wspólnym dachem @@ -41,13 +41,13 @@ - + - + - + diff --git a/songs/Zamknij_dom.xml b/songs/pl/poezja/Zamknij_dom.xml similarity index 95% rename from songs/Zamknij_dom.xml rename to songs/pl/poezja/Zamknij_dom.xml index 2fd80d1a..96101bce 100644 --- a/songs/Zamknij_dom.xml +++ b/songs/pl/poezja/Zamknij_dom.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Zapada_zmrok.xml b/songs/pl/poezja/Zapada_zmrok.xml similarity index 97% rename from songs/Zapada_zmrok.xml rename to songs/pl/poezja/Zapada_zmrok.xml index b4fcc40d..8db33929 100644 --- a/songs/Zapada_zmrok.xml +++ b/songs/pl/poezja/Zapada_zmrok.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Zapisze_sniegiem_w_kominie.xml b/songs/pl/poezja/Zapisze_sniegiem_w_kominie.xml similarity index 93% rename from songs/Zapisze_sniegiem_w_kominie.xml rename to songs/pl/poezja/Zapisze_sniegiem_w_kominie.xml index 26c937a2..4a65e3d3 100644 --- a/songs/Zapisze_sniegiem_w_kominie.xml +++ b/songs/pl/poezja/Zapisze_sniegiem_w_kominie.xml @@ -1,5 +1,5 @@ - + Robert Kasprzycki @@ -15,7 +15,7 @@ Zapiszę śniegiem w kominie Zaplotę z dymu warkoczyk I zanim zima z gór spłynie - wrócę - I będę z powrotem... + I będę z powrotem… A jeśli nie znajdę w swej głowie rozumu diff --git a/songs/Zegarmistrz_swiatla.xml b/songs/pl/poezja/Zegarmistrz_swiatla.xml similarity index 96% rename from songs/Zegarmistrz_swiatla.xml rename to songs/pl/poezja/Zegarmistrz_swiatla.xml index 193894c5..a423b2c2 100644 --- a/songs/Zegarmistrz_swiatla.xml +++ b/songs/pl/poezja/Zegarmistrz_swiatla.xml @@ -1,5 +1,5 @@ - + Tadeusz Woźniak Tekst powtarza się cztery razy. Za pierwszym z rytmicznym szarpaniem strun, łagodnie, za drugim z mocnym biciem, ostrzej, za trzecim z tym samym biciem, ale wyżej - chwyty bez zmian, ale łapane barre, melodia podchodzi, za czwartym pierwsza część spowrotem nisko, biciem, potem w drugiej to samo szarpanie co na początku (wg nagrania z pierwszej kasety Krainy Łagodności) diff --git a/songs/pl/poezja/Zielona_dolina.xml b/songs/pl/poezja/Zielona_dolina.xml new file mode 100644 index 00000000..f8fae250 --- /dev/null +++ b/songs/pl/poezja/Zielona_dolina.xml @@ -0,0 +1,61 @@ + + + + Janusz Kubicki + + Trzy Dni Tyłem + Trzy Dni Tyłem + + + + + Chcę dzień nowy zawsze witać + Gdzieś daleko razem z tobą + Zapach siana w stajni wdychać + Kurz przebytej drogi + Chcę mieć z tobą piec kaflowy + Dwoje dzieci i podróże + Trochę słońca, a gdy trzeba + Z piorunami burze + + + Czeka nas w dolinie + Gdzieś na końcu świata + Zima sroga, a daleka + I jesienna chlapa + Czeka nas w dolinie drewniane poddasze + Dzikie wino na murze + I senny bieg zdarzeń + Czeka nas w dolinie urwana rozmowa + I kołyska pod ścianą + Buk, klon i brzoza + + + Chcę dla Ciebie słów i ciszy + Niepokojów, które łamią + Wierszy, które ukołyszą + I nie będą kłamać + Chcę dla Ciebie wrarzeń myśli + Tych nie dokończonch + Nocy, które ukołyszą + Miłość twą szaloną + + + + + + + + Taboret + + + Na podstawie informacji od p. Krzysztofa Mazurkiewicza + + + + + + + + Piosenka turystyczna + diff --git a/songs/pl/poezja/Zielone_szkielko.xml b/songs/pl/poezja/Zielone_szkielko.xml new file mode 100644 index 00000000..ab36be4f --- /dev/null +++ b/songs/pl/poezja/Zielone_szkielko.xml @@ -0,0 +1,67 @@ + + + + Robert Kasprzycki + + Robert Kasprzycki + Robert Kasprzycki + + + + + Stoję na słońcu, łapię w palce czas + Nitki babiego lata + Patrzę na świat przez szkło bez krat + Przez dno butelki + + + Włosy rozwiane głaszczą mi twarz + Świat jest bez końca zielony + Człowiek na słońcu to właśnie ja + A może, a może nie człowiek + + + Leżę na ziemi, wdycham zapach traw + Obłoki skłębione + Zielone szkiełko całą prawdę zna + Wie dokąd idę schylony + + + Palce mi ziębną gdy przyjdzie świt + Nie wiem od rosy czy wstydu + Człowiek na ziemi to właśnie ja + A może człowieka widmo + + + Lecę gdzieś w przepaść, widzę czarne dno + Słyszę jak krew stęchnie w żyłach + Spływa po twarzy powietrza prąd + To cel mnie znalazł i wybrał + + + Znalazłem drogę, którą chcę + Przejść aż na drugą snu stronę + Zielone szkiełko przecina dłoń + + Spadam na ziemię, spadam na ziemię + + Jak promień + + + + + + + + + + + + + Onufry + + + + + + diff --git a/songs/pl/poezja/Zielony_plomien.xml b/songs/pl/poezja/Zielony_plomien.xml new file mode 100644 index 00000000..8876db32 --- /dev/null +++ b/songs/pl/poezja/Zielony_plomien.xml @@ -0,0 +1,65 @@ + + + Marek Dagnan; Bogusław Choiński + Andrzej Kurylewicz + + + W dąbrowy gęstym listowiu + yska zielona skra + Trzepoce z wiatrem jak płomi + Mundur harcerski nasz + Czapka troszeczkę na bakier + Dusza rogata w niej + Wiatr polny w uszach i kwiaty + W pachnących włosach drzew + + + Tam gdzie się kończy horyzont + Leży nieznany ląd + Ziemia jest trochę garbata + Więc go nie widać stąd + Kreską przebiega błękitną + Strzępioną pasmem gór + Żeglują ku tej granicy + Białe okręty chmur + + + Gdzie niskie niebo usypia + Na rosochatych pniach + Gdziekolwiek namiot rozpinam + Będzie kraina ta + Zieleń o zmroku wilgotna + Z niebieską plamką dnia + Cisza jak gwiazda ogromna + W grzywie złocistych traw + + + W dąbrowy gęstym listowiu + yska zielona skra + Trzepoce płomień zielony + Mundur harcerski nasz + Czapka troszeczkę na bakier + Lecz nie poprawiaj jej + Polny za uchem masz kwiatek + + Duszy rogatej lżej + + + + + + + + Piosenka harcerska + + + + + chord positioning + + + Onufry + + Nie jestem pewien autorów, to wynik google testu. Tak samo czy "namiot rozpinam" czy "namiot rozpinasz" rozstrzygnąłem google testem z wynikiem 34:13 + + diff --git a/songs/pl/poezja/Zima.xml b/songs/pl/poezja/Zima.xml new file mode 100644 index 00000000..f0d7fd6f --- /dev/null +++ b/songs/pl/poezja/Zima.xml @@ -0,0 +1,53 @@ + + + Robert Leonhard + Robert Leonhard + Małżeństwo z Rozsądku + + + Zima znów się zaczyna + Tak samo wtedy padał śnieg + Zima dziś przypomina + Jak pierwszy raz spotkali się + + + Jak strumień płynął śpiew + I jej niewinny śmiech + A ich oczy po niebie + Szukając wciąż siebie + Błądziły jak gwiazdy we śnie + + + Zima już przyszła zima + Za szybą zimny wicher dmie + Zima znów mrozi klimat + A w sercach ogień pali się + + + Jak strumień płynie śpiew + I jej niewinny śmiech + A ich oczy po niebie + Szukając wciąż siebie + Dziś błądzą jak gwiazdy we śnie + + + Zima już wiedzie prymat + Wokół niej wszystko kręci się + Zima ta sama zima + Wyłoni z chłodu chwile te + + + Jak strumień płynął śpiew + I jej niewinny śmiech + A ich oczy po niebie + Szukając wciąż siebie + + + + + + + Onufry + + + diff --git a/songs/pl/poezja/Znow_wedrujemy.xml b/songs/pl/poezja/Znow_wedrujemy.xml new file mode 100644 index 00000000..6c53282c --- /dev/null +++ b/songs/pl/poezja/Znow_wedrujemy.xml @@ -0,0 +1,72 @@ + + + + Krzysztof Kamil Baczyński + + Grzegorz Turnau + Grzegorz Turnau + + + + + Znów wędrujemy ciepłym krajem + Malachitową łąką morza + Ptaki powrotne umierają + Wśród pomarańczy na rozdrożach + Na fioletowoszarych łąkach + Niebo rozpina płynność arkad + Pejzaż w powieki miękko wsiąka + Zakrz epła sól na nagich wargach + + + A wiczorami w prądach zatok + Noc liże morze słodką grzywą + Jak miękkie gruszki brzmieje lato + Wiatrem sparzone jak pokrzywą + Przed fontannami perłowymi + Noc winogrona gwiazd rozdaje + Znów wędrujemy ciepłą ziemią + Znów wędrujemy ciepłym + Krajem + Malachitową łąką morza + Ptaki powrotne umierają + Wśród pomarańczy na rozdrożach + + + + Znów wędrujemy ciepłym krajem + Malachitową łąką morza + Ptaki powrotne umierają + Wśród pomarańczy na rozdrożach + Przed fontannami perłowymi + Noc winogrona gwiazd rozdaje + Znów wędrujemy ciepłą ziemią + Znów wędrujemy ciepłym + Krajem + Malachitową łąką morza + + + + + + + + + + + + + + + + + + + chord positioning + + + Kuba + + + + diff --git a/songs/ZwawaPiosenkaOZuczku.xml b/songs/pl/poezja/Zwawa_piosenka_o_zuczku.xml similarity index 61% rename from songs/ZwawaPiosenkaOZuczku.xml rename to songs/pl/poezja/Zwawa_piosenka_o_zuczku.xml index aaa97b88..fc5d6bc4 100644 --- a/songs/ZwawaPiosenkaOZuczku.xml +++ b/songs/pl/poezja/Zwawa_piosenka_o_zuczku.xml @@ -1,5 +1,5 @@ - + @@ -9,19 +9,19 @@ - Gdy żre mnie nostalgia i chandra mnie tłucze - I nuda się czai przy ścianie sowacza, sowacza + Gdy żre mnie nostalgia i chandra mnie tłucze + I nuda się czai przy ścianie sowacza, sowacza - Pojawia się skądyś na stole mym żuczek - I nóżki swe drobne rozkracza rozkracza, rozkracza + Pojawia się skądyś na stole mym żuczek + I nóżki swe drobne rozkracza rozkracza, rozkracza - I chodzi po gładkiej powierzchni czerniawy - Tu kropkę zostawi, a tam drobny szlaczek, -bny szlaczek + I chodzi po gładkiej powierzchni czerniawy + Tu kropkę zostawi, a tam drobny szlaczek, -bny szlaczek - I co raz to w nóżkę podrapie się prawą - Lub wyrwie spod paszki swej kłaczek, swej kłaczek, swej kłaczek + I co raz to w nóżkę podrapie się prawą + Lub wyrwie spod paszki swej kłaczek, swej kłaczek, swej kłaczek diff --git a/songs/Zwiewnosc.xml b/songs/pl/poezja/Zwiewnosc.xml similarity index 81% rename from songs/Zwiewnosc.xml rename to songs/pl/poezja/Zwiewnosc.xml index dd939ec3..d6d11e0a 100644 --- a/songs/Zwiewnosc.xml +++ b/songs/pl/poezja/Zwiewnosc.xml @@ -1,5 +1,5 @@ - + Bolesław Leśmian @@ -18,27 +18,27 @@ - + Brzęk muchy w pustym dzbanie, co stoi na półce Smuga w oczach po znikłej za oknem jaskółce - Cień ręki -- na murawie... A wszystko -- niczyje, - Ledwo się zazieleni -- już ufa, że żyje. + Cień ręki — na murawie… A wszystko — niczyje, + Ledwo się zazieleni — już ufa, że żyje. A jak dumnie się modrzy u ciszy podnóża! Jak buńczucznie do boju z mgłą się napurpurza! - A jest go tak niewiele, że mniej niż niebiesko... + A jest go tak niewiele, że mniej niż niebiesko… Nic, prócz tła. Biały obłok z liliową przekreską Dal światła w ślepiach wróbla. Spotkanie trwa z ciałem - Szmer w studni. Ja -- w lesie. Mgłą byłeś? -- Bywałem! - Usta twoje -- w alei. Świt pod groblą w młynie - Niebo -- w bramie na oścież... Zgon pszczół w koniczynie + Szmer w studni. Ja — w lesie. Mgłą byłeś? — Bywałem! + Usta twoje — w alei. Świt pod groblą w młynie + Niebo — w bramie na oścież… Zgon pszczół w koniczynie @@ -51,7 +51,7 @@ - + Chód po ziemi człowieka, co na widnokresie, diff --git a/songs/Zycie_to_nie_teatr.xml b/songs/pl/poezja/Zycie_to_nie_teatr.xml similarity index 54% rename from songs/Zycie_to_nie_teatr.xml rename to songs/pl/poezja/Zycie_to_nie_teatr.xml index b91a75dd..87b11203 100644 --- a/songs/Zycie_to_nie_teatr.xml +++ b/songs/pl/poezja/Zycie_to_nie_teatr.xml @@ -1,18 +1,12 @@ - - - Edward Stachura - - - - - + + Edward Stachura Życie to jest teatr, mówisz ciągle, opowiadasz; Maski coraz inne, coraz mylne się zakłada; - Wszystko to zabawaWszystko to jest jedna gra - Przy otwartych i zamkniętychdrzwiach. + Wszystko to zabawa. Wszystko to jest jedna gra + Przy otwartych i zamkniętych drzwiach. To jest gra! @@ -22,20 +16,20 @@ Wszystko przy nim blednie, blednie nawet sama śmierć! - Ty i ja teatry to są dwa! Ty i ja! - Ty - ty prawdziwej nie uronisz łzy. - Ty najwyżej w górę wznosisz brwi. - Nawet kiedy źle Ci jest, to nie jest źle. - Ja - duszę na ramieniu ciągle mam. - Cały zbudowany jestem z ran. - Lecz kaleka nie ja jestem, tylko ty! + Ty i ja teatry to są dwa! Ty i ja! + Ty - ty prawdziwej nie uronisz łzy. + Ty najwyżej w górę wznosisz brwi. + Nawet kiedy źle Ci jest, to nie jest źle. + Ja - duszę na ramieniu ciągle mam. + Cały zbudowany jestem z ran. + Lecz kaleka nie ja jestem, tylko ty! - Dzisiaj bankiet u artystów, Ty się tam wybierasz; - Gości będzie dużo, niedostępna tylariera; - Tańce alkohole, pewnie flirty będą też, - Drzwi otwarte zamkną, potem się. - No i cześć! + Dzisiaj bankiet u artystów, Ty się tam wybierasz; + Gości będzie dużo, niedostępna tylariera; + Tańce alkohole, pewnie flirty będą też, + Drzwi otwarte zamkną, potem się. + No i cześć! Wpadnę tam na chwilę, zanim spuchnie atmosfera; @@ -44,21 +38,22 @@ Wyjdę na przestworza, przecudowny stworzę wiersz. - Ty i ja - teatry to są dwa. Ty i ja! - Ty - ty prawdziwej nie uronisz łzy. - Ty - najwyżej w górę wznosisz brwi. - Lecz nie zaraźliwy jest twój śmiech. - Bo ty grasz! - - - Inny refren :P + Ty i ja - teatry to są dwa. Ty i ja! + Ty - ty prawdziwej nie uronisz łzy. + Ty - najwyżej w górę wznosisz brwi. + Lecz nie zaraźliwy jest twój śmiech. + Bo ty grasz! + Ja - duszę na ramieniu wiecznie mam. + Cały jestem zbudowany z ran. + Lecz gdy śmieje się, to wkrąg się śmieje świat! - + + + - diff --git a/songs/pl/poezja/absztyfikanci_grubej_berty.xml b/songs/pl/poezja/absztyfikanci_grubej_berty.xml new file mode 100644 index 00000000..6f50ebd7 --- /dev/null +++ b/songs/pl/poezja/absztyfikanci_grubej_berty.xml @@ -0,0 +1,105 @@ + + + Julian Tuwim + + Zbigniew Stefański; Jarosław Chrząstek + Bez Jacka + + + Absztyfikanci grubej Berty + i katowickie węglokopy + i borysławskie naftowierty, + i lodzermensche, bycze chłopy, + warszawskie bubki, żygolaki + z bandą wytwornych pind na kupę, + rębajły, franty, zabijaki, + całujcie wy mnie wszyscy w dupę. + + + Socjały nudne i ponure, + pedeki, neokatoliki, + podskakiwacze pod kulturę, + czciciele radia i fizyki, + uczone małpy, ścisłowiedzy, + co oglądacie świat przez lupę + i wszystko wiecie: co, jak, kiedy, + całujcie mnie wszyscy w dupę. + + + I ty, fortuny skurwysynu, + gówniarzu uperfumowany, + co splendor oraz spleen Londynu + nosisz na mordzie zakazanej, + i ty co mieszkasz dziś w pałacu, + a srać chodziłeś za chałupę, + ty wypasiony na Ikacu, + całujcie mnie wszyscy w dupę. + + + I tem ów belfer szkoły żeńskiej, + co dużo chciałby, a nie może, + i tem profesor Cy… wileński + / Pan wie już za co, profesorze! / + I ty za młodu nie dorżnięta + Megiero, co masz taki tupet, + że szczujesz na mnie swe szczenięta; + całujcie mnie wszyscy w dupę. + + + I tem Syjontki palestyńskie, + Hulace, co lejecie tkliwe + starozakonne łzy kretyńskie, + że „szumią jodły w Tel - Avivie”, + i wszechsłowiańscy marzyciele, + zebrani w malowniczą trupę + z byle mistycznym kpem na czele, + całujcie mnie wszyscy w dupę. + + + I tem aryjskie rzeczoznawce, + wypierdy germańskiego ducha + / gdy swoją krew i waszą sprawdzę, + wierzcie mi, jedna będzie jucha /, + Karne pętaki i szturmowcy, + zuchy z Makabi czy Owupe, + i rekordziści i sportowcy, + całujcie mnie wszyscy w dupę. + + + Izraeliccy doktorkowie, + Widnia, żydowskiej Mekki, flance, + co w Bochni, Stryju i Krakowie + szerzycie kulturalną francę! + którzy chlipiecie z „Naje Fraje” + swą intelektualną zupę, + mądrale, oczytane faje, + całujcie mnie wszyscy w dupę. + + + I tem ględziarze i bajdury, + ciągnący z nieba grubą rentę, + o, łapiduchy z Jasnej Góry, + z Góry Kalwarii parchy święte, + i ty księżuniu, co kutasa + zawiązanego masz na supeł, + żeby ci czasem nie pohasał, + całujcie mnie wszyscy w dupę. + + + I wy, o których zapomniałem, + lub pominąłem was przez litość, + albo dlatego, że się bałem, + albo, że taka was obfitość, + i ty cenzorze, co za wiersz ten + zapewne skażesz mnie na ciupę, + I żem się stał świntuchów hersztem, + Całujcie mnie wszyscy w dupę! + + + + Poezja śpiewana + + + + + diff --git a/songs/pl/poezja/alpuhara.xml b/songs/pl/poezja/alpuhara.xml new file mode 100644 index 00000000..4f08212f --- /dev/null +++ b/songs/pl/poezja/alpuhara.xml @@ -0,0 +1,126 @@ + + + Adam Mickiewicz + + + Już w gruzach leżą Maurów posady, + Naród ich dźwiga żelaza, + Bronią się jeszcze twierdze Grenady, + Ale w Grenadzie zaraza. + + + Broni się jeszcze z wierz Alpuhary + Almanzor z garstką rycerzy, + Hiszpan pod miastem zatknął sztandary, + Jutro do szturmu uderzy. + + + O wschodzi słońca ryknęły spiże, + Rwą się okopy, mur wali, + Już z minaretów błysnęły krzyże, + Hiszpanie zamku dostali. + + + Jeden Almanzor widząc swe roty + Zbite w upornej obronie, + Przerżnął się między szable i groty, + Uciekł i zmylił pogonie. + + + Hiszpan na świeżej zamku ruinie, + Pomiędzy gruzy i trupy, + Zastawia ucztę, kąpie się w winie, + Rozdziela brańce i łupy. + + + Wtem straż oddźwierna wodzom donosi, + Że rycerz z obcej krainy + O posłuchanie co rychlej prosi, + Ważne przynosząc nowiny. + + + Był to Almazor, król muzułmanów, + Rzucił bezpieczne ukrycie, + Sam się oddaje w ręce Hiszpanów + I tylko błaga o życie. + + + Hiszpanie — woła — na waszym progu, + Przychodzę czołem uderzyć, + Przychodzę służyć waszemu Bogu, + Waszym prorokom uwierzyć. + + + Niechaj rozgłosi sława przed światem, + Że Arab, król zwalczony, + Swoich zwyciężców chce zostać bratem, + Wasalem obcej korony. + + + Hiszpanie męstwo cenić umieją; + Gdy Alamnzora poznali, + Wódz go uścisnął, inni koleją + Jak towarzysza witali. + + + Almanzor wszystkich wzajemnie witał, + Wodza najczulej uścisnął, + Objął za szyję, za ręce chwytał, + Na ustach jego zawisnął. + + + A wtem osłabnął, padł na kolana, + Ale rękami drżącemi + Wiążąc swój zawój do nóg Hiszpana + Ciągnął się za nim po ziemi. + + + Spojrzał dokoła, wszystkich zadziwił, + Zbladłe, zsiniałe miał lice, + Śmiechem okropnym usta wykrzywił, + Krwią mu nabiegły źrenice. + + + Patrzcie, o giaury! jam siny, blady, + Zgadnijcie czyim ja posłem? + Jam was oszukał, wracam z Grenady, + Ja wam zarazę przyniosłem. + + + Pocałowniem wszczepiłem w duszę + Jad, co was będzie pożerał, + Pójdźcie i patrzcie na me katusze: + Wy tak musicie umierać! + + + Rzuca się, krzyczy, ściąga ramiona, + Chciałby uściśnieniem wiecznym + Wszystkich Hiszpanów przykuć do łona; + Śmieje się śmiechem serdecznym. + + + Śmiał się — już skonał — jeszcze powieki, + Jeszcze się usta nie zwarły. + I śmiech piekielny został na wieki + Do zimnych liców przywarły. + + + Hiszpanie trwożni z miasta uciekli, + Dżuma za nimi w ślad biegła; + Z gór Alpuhary nim się wywleki, + Reszta ich wojska poległa. + + + + + + + + + chords + + + Michał Korch + + + diff --git a/songs/pl/poezja/czarny_kot.xml b/songs/pl/poezja/czarny_kot.xml new file mode 100644 index 00000000..1ab10192 --- /dev/null +++ b/songs/pl/poezja/czarny_kot.xml @@ -0,0 +1,67 @@ + + + + Bułat Okudżawa + + Bułat Okudżawa + Bułat Okudżawa + Witold Dąbrowski + Czornyj kot + + + Na podwórku, tuż za bramą, + Czarnej sieni czarny wlot. + W sieni dzień i noc tak samo + Rezyduje Czarny Kot. + + + Uśmiechając się pod wąsem, + Czai się w ciemnościach, łotr. + Drą się koty wniebogłosy, + Ale milczy Czarny Kot. + + + Myszy dawno już nie łowi, + Stroszy wąs i śmieje się — + Łapie wszystkich nas za słowo + I kiełbasę naszą żre. + + + Ani żąda, ani prosi, + Kryje w ślepiach żółty blask. + Każdy sam mu coś wynosi, + Jeszcze mu się kłania w pas. + + + Nie zamiauczy ani razu, + Ale z sieni - ani rusz; + O framugę ostrzy pazur, + Jakbyś miał na gardle nóż! + + + Stąd też wszyscy przygnębieni, + Wszystko w domu - byle jak… + Światło by założyć w sieni… + Ale jakoś chętnych brak! + + + + + + + + + Poezja śpiewana + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/poezja/czas.xml b/songs/pl/poezja/czas.xml new file mode 100644 index 00000000..2ef1bb18 --- /dev/null +++ b/songs/pl/poezja/czas.xml @@ -0,0 +1,77 @@ + + + Maciej Służała + W refren po zwrotkach wchodzi drugi głos jeszcze podczas trwania ostatniej linijki zwrotki. + Maciej Służała + Krążek + + + Czas płynie wciąż tak jak wąż poplątany ogon + Dnia minionego mgłą ktoś wypatruje nocą + Gwiazd zimny śmiech wiatru gwizd szary przedsmak świata + Jest nie ma nic chwil minionych już nie złapiesz. + Tylko czas płynie wciąż tak jak wąż poplątany ogon + Dnia minionego mgłą ktoś wypatruje nocą + Gwiazd zimny śmiech wiatru gwizd szary przedsmak świata + Jest nie ma nic chwil minionych już nie złapiesz. + + + Spójrz! Oto życia twego tajemnicza księga. + Pisana piórem gwiazd, atramentem tęczy. + W ozdobnych kartach zatrzymany czas. + Burzowe chmury, słoneczny blask. + Świat znany i nieznany… + + + + Patrz! W pajęczynę zawiązane twoje drogi. + Poplątane wiatrem, pomylone mrokiem. + W zaułków gąszczu, spłoszona myśl. + Iluzja, przepaść, wątła nić. + Ostrożnie stawiasz kroki! + + + + Spójrz! W starym kotle kipi wywar z twoich marzeń. + Pragnienie, żądza, potrzeba, władza. + W kipieli wiary - namiętności błysk. + W oparach jawy - tęsknoty krzyk: + Obejrzyj się za siebie! + + + + + + Wiedz! Ja znam wszystkie twoje tajemnice. + Układam twoje myśli. Niczego nie ukryjesz. + To moja dłoń układa twój szlak. + Pod nogi piasek czy w plecy wiatr. + Beze mnie nic nie znaczysz! + + + Czas płynie wciąż tak jak wąż poplątany ogon + Dnia minionego mgłą ktoś wypatruje nocą + Gwiazd zimny śmiech wiatru gwizd szary przedsmak świata + Jest nie ma nic chwil minionych już nie złapiesz. + + Tylko czas płynie wciąż tak jak wąż poplątany ogon + Dnia minionego mgłą ktoś wypatruje nocą + Gwiazd zimny śmiech wiatru gwizd szary przedsmak świata + Jest nie ma nic chwil minionych już nie złapiesz. + + + + + + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + diff --git a/songs/pl/poezja/dezyderata.xml b/songs/pl/poezja/dezyderata.xml new file mode 100644 index 00000000..a3407cbb --- /dev/null +++ b/songs/pl/poezja/dezyderata.xml @@ -0,0 +1,107 @@ + + + + Max Ehrmann + Wikipedia: Dezyderata (od łac. desideratio - życzenie, pragnienie, potrzeba) to poemat napisany przez Maksa Ehrmanna, zawierający wskazówki na temat dobrego życia. + +Utwór powstał w 1927 roku. W roku 1933 autor złożył go w formie życzeń na Boże Narodzenie dla przyjaciół. W 1948 wdowa po Ehrmannie opublikowała go w tomiku The poems of Max Ehrmann, skąd dwa lata później, w 1950, do zbioru nabożnych pieśni zaczerpnął go pastor kościoła pod wezwaniem Św. Pawła w Baltimore. Dopiero tą drogą Dezyderata dostała się do kultury masowej. Plotka na temat anonimowego autora i błędna data powstania - 1692 rok - pochodzą stąd, że strona, na której znajdował się tekst utworu w owym zbiorze, miała nagłówek z informacją: "Stary kościół św. Pawła" i datą 1692 (w rzeczywistości to data budowy kościoła). Wskutek częstego kopiowania jedynie tej strony, informacja zaczęła być błędnie odczytywana. Dezyderata jest uznawana za nieoficjalny hymn ruchu Anonimowych Alkoholików, odwoływali się do niej także hippisi. Znane wykonania w postaci piosenki napisanej na jej podstawie przez Lesa Crane'a z muzyką Freda Wernera (po raz pierwszy nagrana w 1970 przez brytyjską grupę Every Which Way) oraz piosenki kabaretu Piwnica pod Baranami. + Piotr Walewski + Piwnica pod Baranami + Andrzej Jakubowicz + + + + + Dezyderata, dezyderata… + Przechodź spokojnie przez hałas i pośpiech + i pamiętaj, jaki spokój można znaleźć w ciszy. + O ile to możliwe bez wyrzekania się siebie + bądź na dobrej stopie ze wszystkimi. + + Wypowiadaj swoją prawdę + jasno i spokojnie, + wysłuchaj innych, + nawet tępych i nieświadomych, + + oni też mają + swoja opowieść, + + oni też mają opowieść. + + + + Unikaj głośnych i napastliwych, + + unikaj głośnych są udręką ducha. + Niech twoje osiągnięcia zarówno jak plany + będą dla Ciebie źródłem radości. + Bądź ostrożny w interesach, bądź ostrożny w interesach, + na świecie bowiem pełno oszustwa. + Bądź sobą, zwłaszcza + nie udawaj uczucia. + + Ani też nie podchodź + cynicznie do miłości, + bo ona jest + wieczna jak trawa, + bo ona jest wieczna. + + + Unikaj głośnych i napastliwych, + + unikaj głośnych, są udręką ducha. + Przyjmij spokojnie co ci lata doradzają + z wdziękiem wyrzekając się spraw młodości. + Jesteś dzieckiem wszechświata nie mniej niż drzewa i gwiazdy, + masz prawo być tutaj. + + Tak więc żyj w zgodzie z Bogiem, + czymkolwiek On ci się wydaje, + w zgiełkliwym pomieszaniu + życia zachowaj spokój, + w zgiełkliwym pomieszaniu + życia zachowaj + spokój ze swą duszą. + + + Przy całej swej złudności, + znoju i rozwianych marzeniach + jest to piękny świat, jest to piękny świat. + + + Znalezione w starym kościele + Świętego Pawła w Baltimore. + datowane tysiąc sześćset dziewiędziesiąty drugi rok. + + + + Przy całej swej złudności, + znoju i rozwianych marzeniach + jest to piękny świat, jest to piękny świat. + + + + + + + + + + + + + + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/poezja/dla_michasia.xml b/songs/pl/poezja/dla_michasia.xml new file mode 100644 index 00000000..3378a4d6 --- /dev/null +++ b/songs/pl/poezja/dla_michasia.xml @@ -0,0 +1,61 @@ + + + + + Nie znam autorów!!! + + + + + + + Nie wierzyłem, dobry Boże, + Że się zdarzyć tyle może, + Że cię kiedyś, mały synku, będę miał. + Spadłeś z nieba mi akurat, + Kiedy szedłem z głową w chmurach — + -- Niedospany, skacowany i jak palec sam. + + + Dam Ci plecak pełen marzeń, + Grać nauczę na gitarze, + Na barana Cię przeniosę + Przez świat smutny jak kalosze. + + + Miejsca zagrzać nie umiałem, + Trochę grałem, malowałem, + Życie mi się nieustannie wychylało z ram. + Spadłeś z nieba mi akurat, + Kiedy szedłem z głową w chmurach — + Niedospany, skacowany i jak palec sam. + + + + Może kiedyś Ci opowiem, + Kim są ludzie, a kim człowiek, + O jaszczurkach w skórze kobiet, które sączą jad. + Może kiedyś — a na razie + Dam Ci plecak pełen marzeń + I poniosę na barana przez parszywy świat. + + + + + + + + + + + + + chord positioning + + + Michał Korch + + Nie znam autorów!!! + + + diff --git a/songs/pl/poezja/juz_lato.xml b/songs/pl/poezja/juz_lato.xml new file mode 100644 index 00000000..b78c25e4 --- /dev/null +++ b/songs/pl/poezja/juz_lato.xml @@ -0,0 +1,34 @@ + + + przygrywka, to akord a-moll, zaś 7+/7/6 itd, to są kolejno dodawane palce na strunie e (zaczynamy od 3 progu, później 2 i na końcu 1) + + + + + + Wiat i słońce rozbawione latem + Przeplatane snami o przygodzie + Gdzieś z maleńkiej stacji kolejowej + Wyruszyły ze mną w drogę + + + Już lato w koszuli rozpiętej + Wysoko maluje obłoki + I ciepłym deszczem w południe + Dziewczętom rozkręca loki.. + + + + Rozstąpiły sie zielone drzewa + Utworzyły chłodny tunel z liści + A gospodarz przy starej zagrodzie + Życzył szczęścia w dalszej drodze + + + + + + + + + diff --git a/songs/pl/poezja/kasper.xml b/songs/pl/poezja/kasper.xml new file mode 100644 index 00000000..e47241ed --- /dev/null +++ b/songs/pl/poezja/kasper.xml @@ -0,0 +1,51 @@ + + + Ryszard Wolbach + Ryszard Wolbach + Babsztyl + + + Czy pamiętasz rude włosy? Roześmianą twarz? + Śmieszną czapkę miał na głowie Kasper, kumpel nasz... + Gdzie nie poszedł, co nie zrobił - zawsze coś nie tak. + Forsy nie miał... Domu nie miał... Wolny był jak ptak! + Dobrze nam się z Kasprem żyło, on polubił nas + W góry razem się chodziło, ogień nocą się paliło + + + Kasper z wiatrem dobrze ż + Fajkę palił, wódkę pił , + jak ja... jak ty.. jak ja... + + + Miał gitarę złotostrunną, nocą na niej grał. + Sto piosenek w swym śpiewniku Kasper chyba miał + Kiedy w miejscu siedzieć przyszło, bo deszcz padał, ciągle padał + Kasper fajkę swoją tlił, bajdy różnie opowiadał + Co nie zrobił, czego nie miał - diabeł jeden wie! + Kiedy fajkę swoją kurzył, świat maleńki stawał się... + + + + Dzisiaj nie ma Kaspra z nami, zginął po nim ślad + Gdzieś w Bieszczadach go widzieli - mały jest ten świat + Gdzie ballady, opowieści?... Gdzie ogniska żar?... + Kiedy Kaspra nie ma z nami, pryska przygód czar... + Dobrze nam się z Kasprem żyło, on polubił nas + W góry razem się chodziło, ogień nocą się paliło + + + + (na melodię: "Hej, Zuzanno") + Hej, Zuzanno! Oddaj Kaspra nam! Parapa... + + + + Bazuna - 40 lat - "Przegląd na szlaku..." + + + + Dorotka Ch. + + + diff --git a/songs/pl/poezja/katarynka.xml b/songs/pl/poezja/katarynka.xml new file mode 100644 index 00000000..e8133513 --- /dev/null +++ b/songs/pl/poezja/katarynka.xml @@ -0,0 +1,50 @@ + + + + Bułat Okudżawa + + Bułat Okudżawa + Bułat Okudżawa + Wiktor Woroszylski + Szaemanka + + + Zwodnico — katarynko, teój głos tak słodko brzmi, + Ach, dokąd, katarynko, wskazujesz drogę mi? + Po różnych drogach wielu dreptałem w życiu dość, + Lecz powiedz, jak do celu mam w ciasnych butach dojść. + + + Robota jest robotą — a któż by bez niej żył? + Roboty mamy potąd, niech tylko starczy sił. + Wiadomo — bywa różnie, wiadomo — ma się dość, + A przydałby się uśmiech, gdy życie daje w kość. + + + Robota jest robotą. + + + + + + + + + + + + + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/poezja/kiedy_mowisz.xml b/songs/pl/poezja/kiedy_mowisz.xml new file mode 100644 index 00000000..ca542ae4 --- /dev/null +++ b/songs/pl/poezja/kiedy_mowisz.xml @@ -0,0 +1,51 @@ + + + + ks. Jan Twardowski + + Michał Korch + + + + + + Nie płacz w liście + nie pisz że los ciebie kopnął + nie ma sytuacji na ziemi bez wyjścia + kiedy Bóg drzwi zamyka - to otwiera okno + kiedy Bóg drzwi zamyka - to otwiera okno + odetchnij popatrz + + + spadają z obłoków + małe wielkie nieszczęścia potrzebne do szczęścia + a od zwykłych rzeczy naucz się spokoju + i zapomnij że jesteś gdy mówisz że kochasz + i zapomnij że jesteś gdy mówisz że kochasz + kiedy Bóg drzwi zamyka to otwiera okno + więc zapomnij że jesteś gdy mówisz że kochasz + + + + + + + + + + + + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/poezja/krag.xml b/songs/pl/poezja/krag.xml new file mode 100644 index 00000000..92f931d0 --- /dev/null +++ b/songs/pl/poezja/krag.xml @@ -0,0 +1,66 @@ + + + + + + + + + + + + Zamkniemy w kręgu światło + Wysokich jasnych gwiazd. + Zamkniemy w kręgu płomień, + Ogniska ciepły blask. + Zamkniemy w kręgu radość, + By nie uciekła stąd. + + A potem bratnie słowo + Podamy z rąk do rąk. + + + + Zamkniemy w kręgu siłę, + Niech nie opuszcza nas. + Zamkniemy w kręgu wiarę, + Że wróci dobry czas. + Zamkniemy w kręgu pamięć, + By nie uciekła stąd, + + A potem bratnie słowo + Podamy z rąk do rąk. + + + + Zamkniemy w kręgu drogi, + Wytrwałość naszych nóg, + Zamkniemy w kręgu słońce, + By rozpraszało chłód. + Zamkniemy w kręgu przyjaźń, + By nie uciekła stąd. + + A potem bratnie słowo + Podamy z rąk do rąk. + + + + + + + + + Piosenka harcerska + + + + + chord positioning + + + Michał Korch + + Chyba autorzy nieznani + + + diff --git a/songs/pl/poezja/kraina_lemkow.xml b/songs/pl/poezja/kraina_lemkow.xml new file mode 100644 index 00000000..7f5a1a77 --- /dev/null +++ b/songs/pl/poezja/kraina_lemkow.xml @@ -0,0 +1,57 @@ + + + + + Na południu Polski jest miejsce gdzie + Raz do roku równa brać złazi się + Każdy dobry humor ma, piosenek wiele zna + Więc nam czas płynie szybko i wesoło. + + + Laj la la laj... + + + Wędrujemy tydzień już ziemia drży + + Krajem Łemków co urzeka pięknem swym + + Dzikie szczyty każdy z nas zdobywać tutaj chce + + Strome zbocza, wąwozów poznać urok. + + + Aura figle płata wciąż - nie jest źle + + Chociaż czasem pada śnieg albo deszcz + + Przyjacielem każdy szlak, my znamy przygód smak + + Zawsze cel wypraw swoich osiągamy. + + + Każdy w błocie utaplany ze aż strach + + W butach chlupie ale w duszy ciągle gra + + Zasłyszanych dźwięków moc które wczoraj ktoś + + Cały czas podśpiewywał w porze zmierzchu. + + + + Jeszcze raz unicki krzyż żegna nas + + I dukielski stary pocztowy szlak + + W Bieczu pożegnamy się lecz każdy z nas wie + + Że za rok powrócimy tu na pewno. + + + + Piosenka turystyczna + + + + + diff --git a/songs/leluchow.xml b/songs/pl/poezja/leluchow.xml similarity index 73% rename from songs/leluchow.xml rename to songs/pl/poezja/leluchow.xml index eb1a2f78..ab45886e 100644 --- a/songs/leluchow.xml +++ b/songs/pl/poezja/leluchow.xml @@ -1,5 +1,5 @@ - + Adam Ziemianin @@ -15,28 +15,28 @@ Tylko to nam pomoże - W Leluchowie - miła - Czereśnie dziko krwawią - Tam granicy pilnuje całkiem + W Leluchowie - miła + Czereśnie dziko krwawią + Tam granicy pilnuje całkiem Wesoły anioł - W Leluchowie - miła - Zaczyna się koniec świata - Tam anioł traci głowę + W Leluchowie - miła + Zaczyna się koniec świata + Tam anioł traci głowę Z brzozami się brata Wyjedź ze mną do lata Przecież jeszcze nie koniec Schowaj trochę uśmiechu - Na naszą wspólną drogę + Na naszą wspólną drogę Kiedy będziesz już ze mną To nikomu nie powiem Że szczęśliwi byliśmy - Kiedyś w Leluchowie + Kiedyś w Leluchowie diff --git a/songs/pl/poezja/leonardo.xml b/songs/pl/poezja/leonardo.xml new file mode 100644 index 00000000..081359cf --- /dev/null +++ b/songs/pl/poezja/leonardo.xml @@ -0,0 +1,62 @@ + + + W górę szlaban + Agnieszka Osiecka, Jacek Kleyff + Specyficzne bicie. + +Piosenka występuje też pod nieoficjalnymi tytułami: "Dość jest wszystkiego", "W górę szlaban". 18 września 1993 r., w radiowym koncercie Agnieszki Osieckiej "Kobiety mojego życia", Maryla Rodowicz wykonała ten utwór na żywo wraz z Jackiem Kleyff, który zaśpiewał dodatkową zwrotkę napisaną przez siebie. Ponadto, to on napisał refren: "Dość jest wszystkiego, dojść można wszędzie. W górę szlaban!". Pozostałe zwrotki napisała Agnieszka Osiecka. + Maryla Rodowicz + + + Ja nie wesoła, ale z kokardą, + Lecę do słońca, hej Leonardo! + A ja się kręcę, bo stać nie warto, + Naprzód planeto, hej Leonardo! + + + + Dość jest wszystkiego, dojść można wszędzie. + Dość jest wszystkiego, dojść można wszędzie. + + + + Diabeł mnie trzyma, targa za włosy, + Dokąd, wariatko, chcesz dziś wyruszyć? + A ja gotowa, ja z halabardą + Lecę do słońca, hej Leonardo! + + + + Panie w koronie, Panie z liczydłem, + Nie chcę być mrówką — ja chcę być szczygłem, + A moja sława, droga i muzyka + Do brązowego życia pomyka. + + + + Dość jest wszystkiego, dojść można wszędzie. + Dość jest wszystkiego, dojść można wszędzie. + + + + Przyszłam z bylekąd, ale co z tego + Zmierzch jest daleko, hej, hej kolego! + Odłóżmy sprawę, kochany synku, + Na jakieś dziesięć miejsc po przecinku… + + + + + + Absolutnie nic (CD, 1995) + + + + + chord positioning + + + Michał Korch + + + diff --git a/songs/pl/poezja/malarze.xml b/songs/pl/poezja/malarze.xml new file mode 100644 index 00000000..6d6658e0 --- /dev/null +++ b/songs/pl/poezja/malarze.xml @@ -0,0 +1,62 @@ + + + + Bułat Okudżawa + + Bułat Okudżawa + Bułat Okudżawa + Andrzej Drawicz + Żywopiscy + + + Hej, malarze, nuże pędzle zanurzajcie + W zorze miasta o wieczorze, w nasze dziś. + + Niech powtórzą gwar podwórek na Arbacie + Wasze pędzle jak jesienny lotny liść. + + + + Zanurzajcie, kładźcie farby jak się patrzy, + Kładźcie błękit, kładźcie razem blask i cień. + + Namalujcie i z zapałem, i z sympatią, + Jak z sympatią przechadzamy się dzień w dzień. + + + + Niech zatłoczą się ulice rozbudzone! + Niech się zacznie, niech się ziści to, co chce! + + Wy malujcie, wszystko będzie policzone. + Nie będziemy zgadywali: dobrze? źle? + + + + Przesądzajcie nasze losy jak sędziowie, + Pokosztować nam przyszłości dajcie kęs. + + Choć nie znamy się, malujcie nas na zdrowie, + A ja tym, co nie pojmują, wskażę sens! + + + + + + + + + + + + + + chord positioning + + + Michał Korch + + + + + diff --git a/songs/motyle_pocalunki.xml b/songs/pl/poezja/motyle_pocalunki.xml similarity index 81% rename from songs/motyle_pocalunki.xml rename to songs/pl/poezja/motyle_pocalunki.xml index 024eda13..515c2aaa 100644 --- a/songs/motyle_pocalunki.xml +++ b/songs/pl/poezja/motyle_pocalunki.xml @@ -1,5 +1,5 @@ - + Domino Rafał Traczyk Trochę inny tekst, niż oryginał i inna melodia. Gra się nie akordami (tu zasymulowane), a specjalną palcówką. @@ -14,21 +14,21 @@ Co noc wpatrywać się w Twoje oczy Aż wreszcie rumieniec zniknie z Twoich lic... - Z Twoich lic, z Twoich lic, z Twoich lic, z Twoich. + Z Twoich lic, z Twoich lic, z Twoich lic, z Twoich. Choćby życie miało trwać tylko chwilę, Zaraz potem przyszła śmierć. Jak maleńkie kolorowe motyle Będziemy wirować, nim przyjdzie - jego kres, jego kres, jego kres, jego kres. + jego kres, jego kres, jego kres, jego kres. Tak bliscy sobie w jednym oddechu, Wyruszać będziemy w nasze dni. Czułość zamykać w serdecznym uśmiechu. A nocą szukać w ciałach naszych chwil, - Naszych chwil, naszych chwil, naszych chwil, naszych. + Naszych chwil, naszych chwil, naszych chwil, naszych. @@ -38,7 +38,7 @@ Siła - poezja śpiewana + Poezja śpiewana diff --git a/songs/pl/poezja/mysliwa.xml b/songs/pl/poezja/mysliwa.xml new file mode 100644 index 00000000..d1958073 --- /dev/null +++ b/songs/pl/poezja/mysliwa.xml @@ -0,0 +1,57 @@ + + + Myśliwa + Ewa Andrzejewska + Mirosław Kowalik + Dagmara Korona + + + Jak fantastycznie być myśliwą + Potrząsać złotą płową grzywą + I pierś w triumfie prężyć w dal + Ja także chce być femme fatale + Ja nie mam zbędnych wątpliwości + Zdrowe podejście do miłości + Mężczyzna to jest podłe bydle + Więc chyba pójdzie jak po mydle + + + Od zwierza do zwierza + Byle do mnie należał + Od duszy po pięty + Moją magią owładnięty + Na łowy, na łowy + Co tam okres godowy + Na tygrysa, na byka + I niech gra muzyka + + + Gdy polowanie rozpoczynam + Cała w perfumach i rubinach + Trafiam na famy i na żony + Co lepszy obiekt, to strzeżony + Więc chyba jednak pozostanę + Przy urzędowo własnym panu + Lecz z życia mu uczynie plamę + Za to marzenie zmarnowane + + + + + + + + + Dzień dobry (CD, 2008) + Inna + + + + chord positioning + + + Onufry + Krzysiek Cz. + + + diff --git a/songs/pl/poezja/nadal_bede.xml b/songs/pl/poezja/nadal_bede.xml new file mode 100644 index 00000000..cd79a2a4 --- /dev/null +++ b/songs/pl/poezja/nadal_bede.xml @@ -0,0 +1,50 @@ + + + Powietrza trzeba mi + Ziomkowisko + Ziomkowisko + Ziomkowisko + + + Powietrza trzeba mi wody z nieba trzeba mi + tam znajdę Cię tam znajdę C + + + suchą stopą przejdę bez skaz + próżno chód i pędzący czas + na nic przeszkody pod nogami kłody + gdy w sercu nadziei pokłady + na nic przeszkody pod nogami kłody + gdy choć odrobinę ogłady mam + + + + nadal będę igrał z powietrzem, + z deszczem wreszcie śniegiem co jeszcze + wcześniej wody łyk z września nadejściem + póki jesień znajdzie mnie + + + + gdy cierpliwości i braknie sił + i nawet gdy plan b pójdzie w tył + na nic przeszkody pod nogami kłody + gdy w sercu miłości pokłady + na nic przeszkody pod nogami kłody + gdy choć odrobinę miłości mam + + + + + Powietrza trzeba mi wody z nieba trzeba mi + + + + + + Poezja śpiewana + + + + + diff --git a/songs/nadziei_amatorski_zespol.xml b/songs/pl/poezja/nadziei_amatorski_zespol.xml similarity index 80% rename from songs/nadziei_amatorski_zespol.xml rename to songs/pl/poezja/nadziei_amatorski_zespol.xml index ea3c3689..46304cf8 100644 --- a/songs/nadziei_amatorski_zespol.xml +++ b/songs/pl/poezja/nadziei_amatorski_zespol.xml @@ -1,5 +1,5 @@ - + Bułat Okudżawa @@ -9,11 +9,11 @@ Nadieżdy maleńskij orkiestrik - Wesołych trąbek słychać granie -- natężasz ucha, równasz krok, + Wesołych trąbek słychać granie — natężasz ucha, równasz krok, A słowa same jak motyle sfruwają z warg i lecą w mrok. Któż namm gorącą piosnkę przysłał, choć ziąb i rzeką płynie kra? - Nadziei amatorski zespół, co pod batutą serca gra. + Nadziei amatorski zespół, co pod batutą serca gra. @@ -21,7 +21,7 @@ Zacinał ostro w nasze twarze i w karki bezlitośnie tłukł. Kiedy ochrypną już dowódcy, kto u żołnierzy posłuch ma? - Nadziei amatorski zespół, co pod batutą serca gra! + Nadziei amatorski zespół, co pod batutą serca gra! @@ -29,7 +29,7 @@ Flecista drutem flet obwiązał, lecz każdy pręży się jak lew! Łatany strój, instrument kiepski, ale najwięcej zbiera braw - Nadziei amatorski zespół, co pod batutą serca gra! + Nadziei amatorski zespół, co pod batutą serca gra! diff --git a/songs/pl/poezja/obok_ciebie.xml b/songs/pl/poezja/obok_ciebie.xml new file mode 100644 index 00000000..833dde90 --- /dev/null +++ b/songs/pl/poezja/obok_ciebie.xml @@ -0,0 +1,59 @@ + + + Orkiestra Naszych Dni + Orkiestra Naszych Dni + Orkiestra Naszych Dni + + + Pewnie nie zdążę opłynąć świata, + Nie są mi dane Everesty sine, + Ale do szczęścia wystarczyć może + Lekki podmuch nad Niegocinem. + + + + A Ty, miły, szukasz czegoś stale, + Na końcu świata, albo jeszcze dalej — w niebie, + Przemierzając morza całe, + A to coś jest obok Ciebie. + + + + yńcie koledzy w dalekie Horny, + Zorza otuli nad biegunami, + A moje szczęście bywa po prostu + Wschodem słońca nad Wigrami. + + + + Nie chcą się spełniać wielkie marzenia, + Chodzę po ziemi więc mocno, mój kotku, + Krótki jest opis mojego szczęścia — + To łajba z Tobą w środku. + + + + A Ty, miły, szukasz czegoś stale, + Na końcu świata, albo jeszcze dalej — w niebie, + Przemierzając morza całe, + A ten ktoś jest obok Ciebie. + + + + + + + + Skrzypek + Szanta + + + + + chord positioning + + + Michał Korch + + + diff --git a/songs/pl/poezja/obozowe_tango.xml b/songs/pl/poezja/obozowe_tango.xml new file mode 100644 index 00000000..ac72829a --- /dev/null +++ b/songs/pl/poezja/obozowe_tango.xml @@ -0,0 +1,35 @@ + + + + + Obozowe tango, śpiewam dla Ciebie, + Wiatr je niesie, las kołysze + Do snu dziewczę me. + Śpij moja kochana i czekaj na mnie, + Może gdy się obóz skończy + Znów spotkamy się. + + + I choć nas dzieli, + Może tysiące wiosek i mil, + Nie zapominaj razem spędzonych chwil. + Tę leśną serenadę śpiewam dla Ciebie, + Obozowe tango, które znów połączy nas. + + + Czy pamiętasz miła/y jak przy ognisku, + W ciemnym lesie, na polanie + Poznaliśmy się. + Las nam szumiał rzewnie, byłaś/eś tak blisko. + Serca nasze z żarem iskier + Połączyły się. + + + + + Piosenka harcerska + + + + + diff --git a/songs/osada.xml b/songs/pl/poezja/osada.xml similarity index 76% rename from songs/osada.xml rename to songs/pl/poezja/osada.xml index f2d3f288..e9672351 100644 --- a/songs/osada.xml +++ b/songs/pl/poezja/osada.xml @@ -1,6 +1,6 @@ - + @@ -20,11 +20,11 @@ - Nad jeziorem las otwiera wrota swe, + Nad jeziorem las otwiera wrota swe, Więc rozbij namiot i nie przejmuj się. - Wokół ciebie bratnie serca są, + Wokół ciebie bratnie serca są, One pomogą zabić w tobie zło. @@ -32,27 +32,27 @@ - Nie zapomnisz nigdy j + Nie zapomnisz nigdy j - Tych lasów zielonych, + Tych lasów zielonych, - Tej osady pośród wzgórz, + Tej osady pośród wzgórz, - Co tętni tak jak krew. + Co tętni tak jak krew. - Niech poniesie gromki śpiew + Niech poniesie gromki śpiew - Nasz hymn ocalonych, + Nasz hymn ocalonych, - W tej osadzie pośród wzgórz, + W tej osadzie pośród wzgórz, - Gdzie czas nie liczy się już. + Gdzie czas nie liczy się już. - Wciąż na nowo swój odkrywasz świat, + Wciąż na nowo swój odkrywasz świat, Las dla ciebie zawsze jest jak brat, @@ -68,7 +68,7 @@ - Gdy wyjechać masz już stąd to nie smuć się, + Gdy wyjechać masz już stąd to nie smuć się, Bo na pewno znów spotkamy się diff --git a/songs/pl/poezja/piosenka_o_arbacie.xml b/songs/pl/poezja/piosenka_o_arbacie.xml new file mode 100644 index 00000000..a25b4bcf --- /dev/null +++ b/songs/pl/poezja/piosenka_o_arbacie.xml @@ -0,0 +1,62 @@ + + + + Bułat Okudżawa + Powtórzenie dwóch ostatnich linijek zwrotki ma inną melodię. Ostatnia linijka ostatniej zwrotki ma jeszcze inną melodię. + Bułat Okudżawa + Bułat Okudżawa + Andrzej Mandalin + + + + Rzeczny wir, rwący prąd, obca nazwa, łatwy rytm, + Lecz przejrzysty Twój nurt, jak kryniczny zdrój! + Ach, Arbacie, toś Ty, wiecznym przeznaczeniem mym! + W Tobie radość i gniew, w Tobie śmiech i ból. + Ach, Arbacie, toś Ty, wiecznym przeznaczeniem mym! + W Tobie radość i gniew, w Tobie śmiech i ból. + + + Gdy przechodniów Twych tłum sunie obok rojem pstrym, + Tak pospieszny ich krok, tak powszedni ślad. + Ach, Arbacie, toś Ty, wiarą i zbawieniem mym! + Wyślizgany Twój bruk to mój cały świat. + Ach, Arbacie, toś Ty, wiarą i zbawieniem mym! + Wyślizgany Twój bruk to mój cały świat. + + + Czarów nie da się zdjąć mocą dobrą, ani złą, + Choćbym tysiąc śnił miast, nie zamieszkam w nich! + Ach, Arbacie, toś Ty, ziemią obiecaną mą! + Niezbadanych Twych dróg nie przemierzy nikt. + Ach, Arbacie, toś Ty, ziemią obiecaną mą! + Niezbadanych Twych dróg nie przemierzy nikt. + + + + + + + + + + + + + + + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/poezja/piosenka_o_krolu_i_zolnierzach.xml b/songs/pl/poezja/piosenka_o_krolu_i_zolnierzach.xml new file mode 100644 index 00000000..f0acefb3 --- /dev/null +++ b/songs/pl/poezja/piosenka_o_krolu_i_zolnierzach.xml @@ -0,0 +1,73 @@ + + + + Bułat Okudżawa + + Bułat Okudżawa + Bułat Okudżawa + + Piesienka o korole i sołdatach + + + A kiedy na państwo ościenne wyruszał nasz król, + Królowa na drogę sucharów mu wór nasuszyła + I dziury na szatach mężowskich starannie zaszyła, + I w dwóch zawiniątkach mu dała machorkę i sól. + + + A kiedy się żegnał i zamku przekroczyć miał próg, + Objęła go czule i łzę uroniła rzęsistą: + -- A dajże im w kość, bo okrzyczy cię lud pacyfistą + I zabierz im słodkie pierniczki, bo przecież to wróg. + + + Pod wodzą kaprala oddziały czekają już dwa: + Trzech smutnych żołnierzy i tyluż żołnierzy wesołych. + Rzekł król: — Furda prasa i radio, i cztery żywioły! + Victoria nas czeka i w ogóle, chłopcy, hurra! + + + Nim zmilkły oklaski, marszowa rozległa się pieśń, + Po drodze do armii król rozkaz skierował odgórny: + Wesołych żołnierzy dać kazał do intendentury, + A smutnych żołnierzy zostawił w piechocie i cześć! + + + I oto jutrzenka zwycięstwa już błyska zza chmur, + Trzech smutnych żołnierzy spisano co prawda na manko, + A kapral moralny pion tracąc ożenił się z branką, + Lecz łupem zwycięzców ogromny pierniczków padł wór! + + + Więc grzmijcie orkiestry! Niech serca uderzą nam w takt! + Niech smutek przelotny nam piersi radosnej nie gniecie! + Cóż smutnym żołnierzom po życiu na wesołym świecie? + A słodkich pierniczków dla wszystkich nie starczy i tak! + + + + + + + + + + + + + Poezja śpiewana + + + + + + chord positioning + + + Michał Korch + + + Gdzieś zaginęła mi informacja, kto jest tłumaczem + + + diff --git a/songs/pl/poezja/plastelina.xml b/songs/pl/poezja/plastelina.xml new file mode 100644 index 00000000..de9765da --- /dev/null +++ b/songs/pl/poezja/plastelina.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + Ulepiłem sobie domek z niewidzialnej plasteliny, + Dwa okienka, dwa kominy z niewidzialnej plasteliny, + A w okienku kwiatki bratki z niewidzialnej plasteliny, + A dla taty krawat w kratkę z niewidzialnej plasteliny. + + + La, … + + + Ulepiłem sobie pieska mięciutkiego z czarnym pyszczkiem , + Lalę Kasie i Tereskę, i pistolet, i siostrzyczkę, + Namęczyłem się ogromnie stłukłem łokieć, zbiłem szklanke, + Mamo, tato chodźcie do mnie mam tu dla was niespodziankę. + + + + Czemu na mnie tak patrzycie i zdziwione macie miny, + Czyście nigdy nie widzieli, niewidzialnej plasteliny. + + + + + + + + + + + + + + + + Michał Korch + + + Sprawdzający nie znają tej piosenki :( + + + + diff --git a/songs/pl/poezja/polanska.xml b/songs/pl/poezja/polanska.xml new file mode 100644 index 00000000..fa9c1cfe --- /dev/null +++ b/songs/pl/poezja/polanska.xml @@ -0,0 +1,50 @@ + + + Wojciech Szymański + Wojciech Szymański + + + Słońce ma się już ku zachodowi + Czerwienią góry maluje + Przez Biskupi Łan podąża + Brodząc w trawy po szyję + Zanurzam się w doli + Wdycham żywiczny zapach lasu + Jeszcze strumień, jeszcze potok + I będę znów u siebie w domu + + + Jeszcze chwila, jeszcze dwie + I znów stanę u stóp raju + Przed Polańską gdzie we mgle + Gniade konie skubią trawę + + + Śpiew Łemków po dolinie + Wiatr wędrownik niesie + A z dzwonnicy się dobywa + Bicie starych dzwonów + We mgle jakby widać + Pstrych chat białe kształty + Tylko ludzie gdzieś zniknęli + Gdzieś odeszli stąd daleko + + + + Takie tu czasy, takie czasy + Że zegar jakby stanął w miejscu + Ludzie życzliwi są i zawsze będą + A domy malowane jakby pędzlem Boga + A ponad wszystkim króluje Polańska + Rozkołysana wśród morza mgieł + Woła mnie dziś pieśnią ku sobie + Może odnajdę tu moje marzenia + + + + Piosenka turystyczna + + + + + diff --git a/songs/pl/poezja/przebudzenie.xml b/songs/pl/poezja/przebudzenie.xml new file mode 100644 index 00000000..ca9bba2c --- /dev/null +++ b/songs/pl/poezja/przebudzenie.xml @@ -0,0 +1,42 @@ + + + Angelika i Michał Ziomek + Angelika i Michał Ziomek + Ziomkowisko + + + + + + + zamknięte oczy w ciemności, + oddech spokojny, dobry to sen, + między wierszami, niczym parami, + przenika światło i cień. + + + + + wybudza mnie z nocy dzień, + tak subtelnie wita świt, + w tej wdzięczności wiem, że życie - nie - + nie prześpię cię. + + + + + nim bose stopy poczują chłód, + nim szkła do patrzenia włożę. + ostatni raz o świcie dnia, + rytuał - miłosno wtuleni. + + + + + + Poezja śpiewana + + + + + diff --git a/songs/pl/poezja/rudy_gosc.xml b/songs/pl/poezja/rudy_gosc.xml new file mode 100644 index 00000000..c6f3317c --- /dev/null +++ b/songs/pl/poezja/rudy_gosc.xml @@ -0,0 +1,49 @@ + + + Raj Kozaczy + + + Rudy gość na trąbie gra + pieśń stepową, + A step, szeroki step + umyka mu spod nóg, + Niebo zaś nad głową + grzbiet napina swój. + + + Kozaki, ech junaki, + Dziewoje, ech krasiwe + Piękne i leniwe + Śpiewają i grają tę pieśń + O miłości i o dniu, + który przyjdzie. + A stada koni jak wiatr + wciąż przecinają step. + To jest raj kozaczy, + to jest nasza pieśń. + + + Dosiadł konia rudy gość, + zabrał trąbę, + A step, szeroki step + na skrzydłach swych go niósł, + Koń ze złotą grzywą + grzbiet napina swój. + + + + Rudy step, a w stepie mgła + srebrnolica + I step, szeroki step, + już umilkł trąby głos + Płacze krasawica, + ktoś odjechał stąd. + + + + Piosenka turystyczna + + + + + diff --git a/songs/scarlett.xml b/songs/pl/poezja/scarlett.xml similarity index 72% rename from songs/scarlett.xml rename to songs/pl/poezja/scarlett.xml index afb639f7..ac4fb13b 100644 --- a/songs/scarlett.xml +++ b/songs/pl/poezja/scarlett.xml @@ -1,5 +1,5 @@ - + Leonard Luther @@ -16,7 +16,7 @@ Tysiąc osiemset sześćdziesiąty pierwszy W Atlancie szał tysięcy młodych nóg Generał Lee podnosi w górę rękę - Jankesom śmierć tak nam dopomóż Bóg + Jankesom śmierć tak nam dopomóż Bóg Na dworcu tłok sztandary i kobiety Pociągi pełne chłopców żądnych krwi W kwietniowym słońcu błyszczą epolety @@ -24,17 +24,17 @@ - Scarlett czemu słowa takie zimne - Jakby w gardle okruch lodu st - Scarlett wojna nie jest dla dziewczynek - Które nie potrafią grać va banque + Scarlett czemu słowa takie zimne + Jakby w gardle okruch lodu st + Scarlett wojna nie jest dla dziewczynek + Które nie potrafią grać va banque Tysiąc osiemset sześćdziesiąty drugi Jesienne słońce w epoletach lśni Generał Lee dochodzi do Missouri - Do Pennsylwanii wkracza stary Lee + Do Pennsylwanii wkracza stary Lee Artyleryjski ogień wkrótce zdławi Jankeskie szczury w górach Tennessee Zwycięstwa bóg Atlantę błogosławi @@ -45,19 +45,19 @@ Tysiąc osiemset sześćdziesiąty czwarty W krwi południowej tonie miasta bruk Jankeskie psy nie wejdą do Atlanty - Jankesom śmierć tak nam dopomóż Bóg + Jankesom śmierć tak nam dopomóż Bóg Płonie Atlanta w ogniu oszalałym Sztandar obłażą wygłodzone wszy Gwardia opuszcza miasto osłupiałe - Znak krzyża szablą kreśli stary Lee + Znak krzyża szablą kreśli stary Lee - Scarlett on powtarza Twoje imię - Czując w ustach prochu smak - Scarlett miłość nie jest dla dziewczynek - Które nie potrafią grać va banque + Scarlett on powtarza Twoje imię + Czując w ustach prochu smak + Scarlett miłość nie jest dla dziewczynek + Które nie potrafią grać va banque diff --git a/songs/pl/poezja/tango_z_garbem.xml b/songs/pl/poezja/tango_z_garbem.xml new file mode 100644 index 00000000..fb63f21c --- /dev/null +++ b/songs/pl/poezja/tango_z_garbem.xml @@ -0,0 +1,52 @@ + + + Andrzej Wierzbicki + Andrzej Wierzbicki + Andrzej Wierzbicki + + + Dawno minęły czasy gdy matka + Łzy kryjąc w kącie z cicha ronione + Chyłkiem wsadzała ci do plecaka + Bułeczkę z serem i salcesonem + Tak wyruszałeś na swoje pierwsze + Te wymarzone, wyśnione szlaki + Ludziom kroczyłeś ufnie naprzeciw + Słysząc za sobą szydercze takie: + + + To ten wariat z garbem, od tego się nie umiera + To ten wariat z garbem, co turystyczne spędza czas + To ten wariat z garbem, który po drogach kurz wyciera + To ten wariat z garbem, który próbuje wstrzymać wiatr + + + Potem mijały lata ty ciągle + szukałeś szczęścia na swoich drogach + Struną dzwoniące, dymem przyćmione + Buty zmieniane na swoich drogach + Nic nie mówiłeś widząc na niebie + Ptaków wędrownych tajemne znaki + Potem wracałeś niby do siebie + I znów słyszałeś szydercze takie: + + + + Teraz stateczny ojciec rodziny + Samochód, żona, dzieci, M4 + Brydż u znajomych i imieniny + Spacer w niedzielę, trochę opery + Czasem za oknem widzisz jak idą + Dźwigając swoje wielkie plecaki + Chciałbyś dołączyć, stanąć w szeregu + I znów usłyszeć szydercze takie: + + + + + Piosenka turystyczna górska + + + + + diff --git a/songs/pl/poezja/tesknica.xml b/songs/pl/poezja/tesknica.xml new file mode 100644 index 00000000..603a61ed --- /dev/null +++ b/songs/pl/poezja/tesknica.xml @@ -0,0 +1,48 @@ + + + Na przełęczy przysiadł wrzesień + Andrzej Wierzbicki + Andrzej Wierzbicki + Andrzej Wierzbicki + + + Na przełęczy przysiadł wrzesień + Śmieje się ukradkiem + Skrzydłem kruka włosy czesze + Rozczochranym wiatrom + Buczynie jej wargi sine + Maluje czerwienią + I korale jarzębinie w bańki cerkwi leje + + + + Do gór, do beskidzkich gór + Zawracamy kroki + Przez równin zielony mur + Dolin rzecznych krocie + Do gór, do beskidzkich gór + Zawracamy oczy + By dojrzeć w buczyny pniach + Madonn twarze złote + + + + Mgły strącając po dolinach + Jesień wozem jedzie + Znarowione konie spina + Worek chleba wiezie + I naszym wołaniem + Zmęczona odchodzi + Tylko echo wyprowadza + Na rozstajne drogi + + + + + + Poezja śpiewana + + + + + diff --git a/songs/pl/poezja/tropiki.xml b/songs/pl/poezja/tropiki.xml new file mode 100644 index 00000000..a2e79033 --- /dev/null +++ b/songs/pl/poezja/tropiki.xml @@ -0,0 +1,56 @@ + + + + + + + + + + + + Przez afrykański busz nie przejdziesz ani rusz + I nikt nie przedrze się bez noża + Jest tylko jeden mąż, co piersią pruje gąszcz + To noso, noso, noso, nosorożec. + + + + Tropiki, tropiki, tropiki, + + Ach upalny jest wasz urok dziki, dziki, aha ha ha ha + + + + Murzynów czarnych stu, na bębnach bum, bum, bum, + Co przy ognisku piją wodę. + W szuwarach słychać szum, krokodyl wciąga brzuch, + a słoń wyciąga, ciąga, ciąga trąbę. + + + + Na dworze ciemna noc, jakbyś nałożył koc + I nic nie widać, chociaż świeci lampa. + I nagle skoczył kot, lecz to nie mógł być kot + Na pewno, pewno, pewno to był lampart. + + + + + + + + + + + + + chord positioning + + + Michał Korch + + Nie znam twórców. + + + diff --git a/songs/pl/poezja/wasza_wysokosc_kobieto.xml b/songs/pl/poezja/wasza_wysokosc_kobieto.xml new file mode 100644 index 00000000..55d9d8cb --- /dev/null +++ b/songs/pl/poezja/wasza_wysokosc_kobieto.xml @@ -0,0 +1,59 @@ + + + + Bułat Okudżawa + Zwrotki 1. i 3. maja inną melodię niż 2. i 4. + Bułat Okudżawa + Bułat Okudżawa + Wiktor Woroszylski + Wasze Wieliczestwo Żenszczyna + + + Ciemnością, ciszą jak biedą + + Osnute wszystko w tym domu… + Wasza Wysokość Kobieto, + Czy pani naprawdę do mnie? + + + Żarówki pełga tu oko, + Kroplami mur spływa nagi… + Kobieto, Wasza Wysokość, + Skąd w pani tyle odwagi? + + + To przyjście pani – jak pożar. + Zapiera dech, huczy wokół… + Lecz proszę do środka, proszę. + Nie warto tak stać na progu. + + + Więc do mnie – naprawdę, miła?! + Ach, co też mi się znów plecie… + Wiem – pani drzwi pomyliła, + Ulicę, miasto, stulecie. + + + + + + + + + + + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/poezja/wiewiorka.xml b/songs/pl/poezja/wiewiorka.xml new file mode 100644 index 00000000..f4ebe01d --- /dev/null +++ b/songs/pl/poezja/wiewiorka.xml @@ -0,0 +1,57 @@ + + + Palto + Słowa na podstawie „Newa poezją płynąca” + Jacek Stefański; Zbigniew Stefański + Bez Jacka + + + Śmiech ze łzami pomieszany, + ileż w tobie niepokoju. + Znowu dziś na śnieg wybiegłaś + weź przynajmniej palto swoje. + Pyłem śnieżnym przyprószona + natychmiast mi się wydałaś, + taka cicha i bezbronna + w wielkim świecie - taka mała + + + Zobacz kończy się przedmieście, + las wyrasta bezszelestnie + w pstrych wiewiórek krzątaninie. + Palto, palto załóż wreszcie. + + + Kto to widział tak po śniegu + w przedwieczornym mrozie biegać, + w samym tylko cienkim swetrze, + w samych lekkich pantofelkach, + + + Aaa Aaaaaa + Aaa Aaa + + + + A już nogi ci się plączą, + włosy okrywają szronem. + Pewnie jutro będziesz + znowu przeziębiona + + + + Staniesz oprzesz się o drzewo, + sen nadejdzie nieproszony, + a las woła: palto! + + + + + + Zatańcz ze mną na polanie (2000) + Poezja śpiewana + + + + + diff --git a/songs/pl/poezja/zaciagnijcie_na_oknie_niebieska_zaslone.xml b/songs/pl/poezja/zaciagnijcie_na_oknie_niebieska_zaslone.xml new file mode 100644 index 00000000..63562ce2 --- /dev/null +++ b/songs/pl/poezja/zaciagnijcie_na_oknie_niebieska_zaslone.xml @@ -0,0 +1,73 @@ + + + + Bułat Okudżawa + + Bułat Okudżawa + Bułat Okudżawa + Jerzy Czech + *** [Opustitie pożałusta sinije sztory] + + + Zaciągnijcie na oknie niebieską zasłonę, + Siostro, leki stąd weź, niepotrzebne mi są. + Wiara, Nadzieja, Miłość, poznaję — to one, + Moje trzy wierzycielki odwiedzić mnie chcą. + + + Krótki pobyt na ziemi opłacić przystoi, + Ale pustą sakiewkę dziś mam, jak na złość… + -- Nie zamartwiaj się, nie smuć, o Wiaro, Ty moja, + Pewnie jeszcze dłużników zostalo Ci dość. + + + Resztką sił się obrócę do drugiej z kolei, + By w ramionach jej ukryć skruszoną swą twarz: + -- Nie zamartwiaj się, nie smuć, o matko Nadziejo, + Nie jednego wszak syna na ziemi tu masz! + + + A gdy usta przycisnę do dłoni tej trzeciej, + Słyszę jaką czułością głos cichy jej drga: + -- Nie zamartwiaj się, nie smuć, ja sama się przecież + Zamiast ciebie musiałam roztrwonić do cna. + + + -- Czyjekolwiek cię w życiu ramiona tuliły, + Jakikolwiek nieziemski ogarnąłby żar, + Dług twój ludzkie oszczerstwa w trójnasób spłaciły, + Więc oczyszczam cię z win i uwalniam od kar. + + + Leżę czysty jak łza w pierwszym świtu przypływie, + Biała flaga pościeli powita mdły brzask. + + Trzy sędziny, trzy matki, trzy siostry cierpliwe + Otwierają mi kredyt ostatni już raz. + + + + + + + + + + + + + + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + diff --git a/songs/zbieg_okolicznosci_lagodzacych.xml b/songs/pl/poezja/zbieg_okolicznosci_lagodzacych.xml similarity index 58% rename from songs/zbieg_okolicznosci_lagodzacych.xml rename to songs/pl/poezja/zbieg_okolicznosci_lagodzacych.xml index ec561cf8..b880f104 100644 --- a/songs/zbieg_okolicznosci_lagodzacych.xml +++ b/songs/pl/poezja/zbieg_okolicznosci_lagodzacych.xml @@ -1,5 +1,5 @@ - + Adam Ziemianin @@ -12,14 +12,14 @@ - Szliśmy do siebie -- Ty i ja, - A drogi nasze wciąż mroczne były, - Lecz znalazł się ktoś i pomógł nam się spotkać - Wśród zielonej naszej równiny. + Szliśmy do siebie — Ty i ja, + A drogi nasze wciąż mroczne były, + Lecz znalazł się ktoś i pomógł nam się spotkać + Wśród zielonej naszej równiny. Wyszliśmy piękni dla siebie I tacy zadziwieni. - Nasze serca gorące bić równo zaczęły, - Jakby same tylko były na Ziemi. + Nasze serca gorące bić równo zaczęły, + Jakby same tylko były na Ziemi. @@ -28,14 +28,14 @@ - Zbiegliśmy razem -- Ty i ja - Z gór ośnieżonych w ciepłą dolinę. - Kto tak dobry był i pomógł nam się spotkać - W tej oszalałej gęstwinie? + Zbiegliśmy razem — Ty i ja + Z gór ośnieżonych w ciepłą dolinę. + Kto tak dobry był i pomógł nam się spotkać + W tej oszalałej gęstwinie? Wyszliśmy nadzy dla siebie Z nocy na światło dzienne. - Nasze zegarki ślepe chodzić nagle zaczęły - O jednej i tej samej godzinie. + Nasze zegarki ślepe chodzić nagle zaczęły + O jednej i tej samej godzinie. @@ -47,7 +47,7 @@ Bieszczadzkie anioły - poezja śpiewana + Poezja śpiewana diff --git a/songs/pl/poezja/ze_szczytu_schodow.xml b/songs/pl/poezja/ze_szczytu_schodow.xml new file mode 100644 index 00000000..b929c55a --- /dev/null +++ b/songs/pl/poezja/ze_szczytu_schodow.xml @@ -0,0 +1,113 @@ + + + + Zbigniew Herbert + Melodia 5. zwr. zaczerpnięta z Murów, a 7. i 8. z Pieśni gruzińskiej. Metrum zmienne. + Michał Korch + Michał Korch + + + + + Oczywiście + ci którzy stoją na szczycie schodów + oni wiedzą + oni wiedzą wszystko + + + co innego my + sprzątacze placów + zakładnicy lepszej przyszłości + którym ci ze szczytu schodów + ukazują się rzadko + zawsze z palcem na ustach + + + jesteśmy cierpliwi + żony nasze cerują niedzielną koszulę + rozmawiamy o racjach żywności + o piłce nożnej cenie butów + a w sobotę przechylamy głowę w t + i pijemy + + + nie jesteśmy z tych + co zaciskają pięści + potrząsają łańcuchami + mówią i pytają + namawiają do buntu + rozgorączkowani + wciąż mówią i pytają + + + oto ich bajka — + rzucimy się na schody + i zdobędziemy je szturmem + będą się toczyć po schodach + owy tych którzy stali na szczycie + i wreszcie zobaczymy + co widać z tych wysokości + jaką przyszłość + jaką pustkę + + + nie pragniemy widoku + toczących się głów + wiemy jak łatwo odrastają głowy + i zawsze na szczycie zostaje + jeden albo trzech + a na dole aż czarno od mioteł i łopat + + + czasem nam się marzy + że ci ze szczytu schodów + zejdą nisko + to znaczy do nas + gdy nad gazetą żujemy chleb + i rzekną + + + -- a teraz pomówmy + jak człowiek z człowiekiem + to nie jest prawda co wykrzykują afisze + prawdę nosimy w zaciśniętych ustach + okrutna jest i nazbyt ciężka + więc dźwigamy ją sami + nie jesteśmy szczęśliwi + chętnie zostalibyśmy + tutaj + + + to są oczywiście marzenia + mogą się spełnić + albo nie spełnić + więc dalej + będziemy uprawiali + nasz kwadrat ziemi + nasz kwadrat kamienia + + + z lekką głową + papierosem za uchem + i bez kropli nadziei w sercu + + + + + + + + Poezja śpiewana + + + + + chord positioning + + + Michał Korch + + + + + diff --git a/songs/pl/poezja/zuzanna.xml b/songs/pl/poezja/zuzanna.xml new file mode 100644 index 00000000..0f68f658 --- /dev/null +++ b/songs/pl/poezja/zuzanna.xml @@ -0,0 +1,67 @@ + + + + Leonard Cohen + + Leonard Cohen + Leonard Cohen + Maciej Zembaty + Susanne + + + W swe miejsce nad rzeką zabiera cię Zuzanna, + Możesz słuchać plusku łodzi, możesz zostać z nią do rana. + Wiesz, że trochę źle ma w głowie — lecz dlatego chcesz być tutaj, + Proponuje ci herbatę oraz chińskie pomarańcze + I gdy właśnie chcesz powiedzieć, że nie możesz jej pokochać, + Zmienia twoją długość fali i pozwala mówić rzece, że się zawsze w niej kochałeś. + I już chcesz z nią powędrować, powędrować chcesz na oślep, + Wiesz, że ona ci zaufa, bowiem ciała jej dotknąłeś myślą swą. + + + Pan Jezus był żeglarzem, gdy przechadzał się po wodzie, + Spędził lata na czuwaniu w swej samotnej wieży z drewna, + Gdy upewnił się, że tylko mogą widzieć go tonący, + Rzekł — Żeglować będą ludzie aż ich morze wyswobodzi… + Lecz zwątpił zanim jeszcze otworzyły się niebiosa, + Zdradzony, niemal ludzki, jak kamień zapadł wtedy w mądrość swą. + I już chcesz z nim powędrować, powędrować chcesz na oślep, + Myślisz — chyba mu zaufam, bowiem dotknął twego ciała myślą swą. + + + Dziś Zuzanna za rękę prowadzi cię nad rzekę, + Cała w piórach i w łachmanach z jakiejś Akcji Dobroczynnej, + Słońce kapie złotym miodem na Madonnę tej Przystani, + Są tu dzieci o poranku, bohaterzy w wodorostach, + Wszyscy dążą do miłości i podążać będą zawsze, + Gdy Zuzanna trzyma lustro. + I już chcesz z nią powędrować, powędrować chcesz na oślep, + Wiesz, że można jej zaufać, bo dotknęła twego ciała myślą swą. + + + + + + + + + + Songs of Leonard Cohen + Poezja śpiewana + + + + + + + + chord positioning + + + Michał Korch + + + + + + diff --git a/songs/pl/pop/Autobiografia.xml b/songs/pl/pop/Autobiografia.xml new file mode 100644 index 00000000..2f07dcfd --- /dev/null +++ b/songs/pl/pop/Autobiografia.xml @@ -0,0 +1,79 @@ + + + Perfect + + + Miałem dziesięć lat, gdy usłyszał o nim świat + W mej piwnicy był nasz klub + Kumpel radio zniósł, usłyszałem "Blue Suede Shoes" + I nie mogłem w nocy spać + + + Wiatr odnowy wiał, darowano reszty kar + Znów się można było śmiać + W kawiarniany gwar jak tornado jazz się wdarł + I ja też, chciałem grać + + + Ojciec Bóg wie gdzie martenowski stawiał piec + Mnie paznokieć z palca zszedł + Z gryfu został wiór grałem milion różnych bzdur + I poznałem co to seks + + + Pocztówkowy szał, każdy z nas ich pięćset miał + Zamiast nowej pary jeans + A w sobotnią noc był Luksemburg, chata, szkło + Jakże się chciało żyć + + + Było nas trzech, w każdym z nas inna krew + Ale jeden przyświecał nam cel + Za kilka lat mieć u stóp cały świat + Wszystkiego w bród + Alpagi łyk i dyskusje po świt + Niecierpliwy w nas ciskał się duch + Ktoś dostał w nos, to popłakał się ktoś + Coś działo się + + + Poróżniła nas, za jej Poli Raksy twarz + Każdy by się zabić dał + W pewną letnią noc gdzieś na dach wyniosłem koc + I dostałem to, com chciał + Powiedziała mi, że kłopoty mogą być + Ja jej, że egzamin mam + Odkręciła gaz Nie zapukał nikt na czas + Znów jak pies byłem sam + + + Stu różnych ról, czym ugasić mój ból + Nauczyło mnie życie jak nikt + W wyrku na wznak przechlapałem swój czas + Najlepszy czas + W knajpie dla braw Klezmer kazał mi grać + Takie rzeczy, że jeszcze mi wstyd + Pewnego dnia zrozumiałem, że ja + Nie umiem nic + + + Słuchaj mnie, tam! Pokonałem się sam + Oto wyśnił się Wielki Mój Sen + Tysięczny tłum spija słowa z mych ust + Kochają mnie + W hotelu fan mówi: "Na taśmie mam + To, jak w gardłach im rodzi się śpiew" + Otwieram drzwi i nie mówię już nic + Do czterech ścian + + + + + + + Rock + + + + + diff --git a/songs/Ballada_o_smutnym_skinie.xml b/songs/pl/pop/Ballada_o_smutnym_skinie.xml similarity index 97% rename from songs/Ballada_o_smutnym_skinie.xml rename to songs/pl/pop/Ballada_o_smutnym_skinie.xml index abd94432..fd0dc1c5 100644 --- a/songs/Ballada_o_smutnym_skinie.xml +++ b/songs/pl/pop/Ballada_o_smutnym_skinie.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/pop/Chlopaki_nie_placza.xml b/songs/pl/pop/Chlopaki_nie_placza.xml new file mode 100644 index 00000000..12ba7a04 --- /dev/null +++ b/songs/pl/pop/Chlopaki_nie_placza.xml @@ -0,0 +1,54 @@ + + + T.Love + + + Mówisz, życie jak cukierek + Gorzkie jest czasami + Mówisz panna zostawiła + Kumple dawno cię olali + Ale nie bój nic - minie jakiś czas + Poczuj chłodny świt, wszystko przejdzie ci + + + U-u-u chłopaki + U-u-u nie płaczą + U-u-u chłopaki + U-u-u nie płaczą + Nie nie nie nie nie nie + + + Nie masz kaski - odpuść sobie + Jutro przecież też jest dzień + Może kiedyś ci pomogę + Może ty nie wystawisz mnie + Ale nie bój nic - minie jakiś czas + Poczuj chłodny świt, wszystko przejdzie ci + + + U-u-u chłopaki + U-u-u nie płaczą + U-u-u chłopaki + U-u-u nie płaczą + Nie nie nie nie nie nie + + + + + + + + + + + + + + + + + + + + + diff --git a/songs/pl/pop/Chodz_pomaluj_moj_swiat.xml b/songs/pl/pop/Chodz_pomaluj_moj_swiat.xml new file mode 100644 index 00000000..5a289fd9 --- /dev/null +++ b/songs/pl/pop/Chodz_pomaluj_moj_swiat.xml @@ -0,0 +1,57 @@ + + + Dwa Plus Jeden + + + Piszesz mi w liście, że kiedy pada + Kiedy nasturcje na deszczu mokną + Siadasz przy stole, wyjmujesz farby + I kolorowe otwierasz okno + + + Trawa i drzewa są takie szare + Barwę popiołu przybrało niebo + W ciszy tak smutno szepce zegarek + O czasie co mi go wcale nie trzeba + + + Więc chodź pomaluj mi świat + Na żółto i na niebiesko + Niech na niebie stanie tęcza malowana twoja kredką + + + Więc chodź pomaluj mi życie + Niech świat mój się zarumieni + Niech na niebie zalśni tęcza kolorami całej ziemi + + + Za siódmą górą i siódmą rzeka + Swoje sny zamieniasz na pejzaże + Niebem się wlecze wyblakłe słońce + Oświetla ludzkie wyblakle twarze + + + + + + + + + + + + + + + + Krzysiek Cz. + + + + + + + + + + diff --git a/songs/pl/pop/Czarny_chleb_i_czarna_kawa.xml b/songs/pl/pop/Czarny_chleb_i_czarna_kawa.xml new file mode 100644 index 00000000..506a75ee --- /dev/null +++ b/songs/pl/pop/Czarny_chleb_i_czarna_kawa.xml @@ -0,0 +1,50 @@ + + + Czarny chleb czarna kawa + Krzysztofa „Grabaża” Grabowski + Strachy na Lachy + + + Jedzie pociąg złe wagony, do więzienia wiozą mnie + Świat ma tylko cztery strony, a w tym świecie nie ma mnie + Gdy swe oczy otworzyłem, wielki żal ogarnął mnie + Po policzkach łzy spłynęły, zrozumiałem wtedy, że + + + Czarny chleb i czarna kawa, opętani samotnością + Myślą swą szukają szczęścia, które zwie się wolnością + Czarny, czarny chleb i czarna kawa, opętani samotnością + Myślą swą szukają szczęścia, które zwie się wolnością + + + Młodsza siostra zapytała: mamo, gdzie braciszek mój? + Brat Twój w ciemnej celi siedzi, odsiaduje wyrok swój + Czarny chleb i czarna kawa, opętani samotnością + Myślą swą szukają szczęścia, które zwie się wolnością + + + + (Tak czy nie, nie! Tak czy nie, nie! Tak czy nie, nie!) + + + Wtem do celi klawisz wpada i zaczyna więźnia bić + Młody więzień na twarz pada, serce mu przestaje bić + I nadejdzie chwila błoga, śmierć zabierze oddech mój + Moje ciało stąd wyniosą, a pod celą będą znów: + + + Inny czarny, czarny chleb i czarna kawa, opętani samotnością + Myślą swą szukają szczęścia, które zwie się wolnością + + + + (Chcesz czy nie, nie!) + + + + + + + + + diff --git a/songs/pl/pop/Jest_taki_samotny_dom.xml b/songs/pl/pop/Jest_taki_samotny_dom.xml new file mode 100644 index 00000000..1b5ccefd --- /dev/null +++ b/songs/pl/pop/Jest_taki_samotny_dom.xml @@ -0,0 +1,68 @@ + + + + + + + Budka Suflera + + + + + Uderzył deszcz, wybuchła noc, przy drodze pusty dwór + W katedrach drzew, w przyłbicach gór wagnerowski ton + + + Za witraża dziwnym szkłem pustych komnat chłód + W szary pył rozbity czas, martwy, pusty dwór + + + Dorzucam drew, bo ogień zgasł, ciągle burza trwa + Nagle feeria barw i mnóstwo świec, ktoś na skrzypcach gra + + + Gotyckie odrzwia chylą się i skrzypiąc suną w bok + I biała pani płynie z nich, w brylantowej mgle + + + Zawirował z nami dwór, rudych włosów płomień + Nad górami lecę, lecę z nią, różę trzyma w dłoni + + + (A po nocy przychodzi dzień, a po burzy spokój + Nagle ptaki budzą mnie, tłukąc się do okien) + + + (A po nocy przychodzi dzień, a po burzy spokój) + Znowu szary, pusty dom, gdzie schroniłem się + (Nagle ptaki budzą mnie, tłukąc się do okien) + I najmilsza z wszystkich, wszystkich mi, na witraża szkle + + + (A po nocy przychodzi dzień, a po burzy spokój) + Znowu w drogę, w drogę trzeba iść, w życie się zanurzyć + (Nagle ptaki budzą mnie, tłukąc się do okien) + Chociaż w ręce jeszcze tkwi lekko zwiędła róża + + + + (A po nocy przychodzi dzień, a po burzy spokój) + Lecz po nocy przychodzi dzień, a po burzy spokój + (Nagle ptaki budzą mnie, tłukąc się do okien) + Nagle ptaki budzą mnie, tłukąc się do okien + + + + + + + + + + + + + + + + diff --git a/songs/Kocham_Cie_jak_Irlandie.xml b/songs/pl/pop/Kocham_Cie_jak_Irlandie.xml similarity index 66% rename from songs/Kocham_Cie_jak_Irlandie.xml rename to songs/pl/pop/Kocham_Cie_jak_Irlandie.xml index f8c17ef2..d47b4784 100644 --- a/songs/Kocham_Cie_jak_Irlandie.xml +++ b/songs/pl/pop/Kocham_Cie_jak_Irlandie.xml @@ -1,24 +1,20 @@ - - - - - - Kobranocka - - + + Andrzej Marek Michorzewski + Andrzej Kraiński + Kobranocka - Zniknęłaś gdzieś w domu nad Wisłą - Pamiętam to tak dokładnie - Twoich czarnych oczu bliskość - Wciąż kocham Cię jak Irlandię + Znikałaś gdzieś w domu nad Wisłą + Pamiętam to tak dokładnie + Twoich czarnych oczu bliskość + Wciąż kocham Cię jak Irlandię - A ty się temu nie dziwisz - Wiesz dobrze co byłoby dalej - Jakbyśmy byli szczęśliwi - Gdybym nie kochał Cię wcale + A ty się temu nie dziwisz + Wiesz dobrze co byłoby dalej + Jakbyśmy byli szczęśliwi + Gdybym nie kochał Cię wcale Przed szczęściem żywić obawę @@ -45,21 +41,24 @@ Czy to dla ciebie coś znaczy Że kocham Cię jak Irlandię - - + + A ty się temu nie dziwisz Wiesz dobrze co byłoby dalej Jakbyśmy byli szczęśliwi Gdybym nie kochał Cię wcale - Cię wcale + Cię wcale - + + + Kwiaty na żywopłocie (1990) + Rock + - diff --git a/songs/pl/pop/Kocham_wolnosc.xml b/songs/pl/pop/Kocham_wolnosc.xml new file mode 100644 index 00000000..3c961ee2 --- /dev/null +++ b/songs/pl/pop/Kocham_wolnosc.xml @@ -0,0 +1,48 @@ + + + + + + + Chłopcy z placu broni + + + + + Tak niewiele żądam + Tak niewiele pragnę + Tak niewiele widziałem + Tak niewiele zobaczę + Tak niewiele myślę + Tak niewiele znaczę + Tak niewiele słyszałem + Tak niewiele potrafię + + + Wolność, kocham i rozumiem + Wolności oddać nie umiem + + + Tak niewiele miałem + Tak niewiele mam + Mogę stracić wszystko + Mogę zostać sam + + + + + + + + Kocham wolność + Rock + + + + + Onufry + + + + + diff --git a/songs/pl/pop/Marchewkowe_pole.xml b/songs/pl/pop/Marchewkowe_pole.xml new file mode 100644 index 00000000..76cf1303 --- /dev/null +++ b/songs/pl/pop/Marchewkowe_pole.xml @@ -0,0 +1,51 @@ + + + Lady Pank + + + Marchewkowe pole rośnie wokół mnie + W marchewkowym + Polu jak warzywo tkwię + Głową na dół + Zakopany niczym struś + Chcesz mnie spotkać + Głowę obok w ziemię włóż + + + Wszystko się może zdarzyć + + + + + + + Marchewkowe + O ogrodzie miewam sny + W marchewkowym + Stanie jest najlepiej mi + Rosnę sobie + Dołem głowa górą nać + Kto mi powie + Co się jeszcze może stać + + + + + + + + + + + + + + + + + + + + + + diff --git a/songs/pl/pop/Niebo_do_wynajecia.xml b/songs/pl/pop/Niebo_do_wynajecia.xml new file mode 100644 index 00000000..3c7cf83a --- /dev/null +++ b/songs/pl/pop/Niebo_do_wynajecia.xml @@ -0,0 +1,60 @@ + + + Robert Kasprzycki + + + + Na tablicy ogłoszeń pod hasłem lokale + Przeczytałem przedwczoraj ogłoszenie ciekawe. + Na tablicy ogłoszeń fioletowym flamastrem + Ktoś nabazgrał słów kilka, dziwna była ich treść: + + + + + + + Tam, gdzie spokój jest święty, no, bo święci są pańscy, + Szklanką ciepłej herbaty poczęstuje cię pan. + + + Pomyślałem to świetnie - takie niebo na ziemi, + Grzechów nikt nie przelicza nikt nie szpera w szufladzie. + Pomyślałem: to świetnie i spojrzałem na adres, + Lecz deszcz rozmył litery i już nie wiem gdzie jest… + + + + Gdy wróciłem do domu, gdzie się błękit z betonem splata + W Babel wysoki sięgający do chmur, + Zaparzyłem herbatę w swym pokoju nad światem, myśląc: + Nic nie straciłem, pewnie tak jest i tam + + + + Niebo do wynajęcia, niebo z widokiem na raj. + Niebo do wynajęcia, niebo z widokiem + Niebo do wynajęcia, niebo z widokiem na raj. + Niebo do wynajęcia, niebo… + Niebo do wynajęcia, niebo z widokiem na raj. + Niebo do wynajęcia, niebo… + + + + + + + + + + + + + + + + + + + + diff --git a/songs/pl/pop/Piechota_do_lata.xml b/songs/pl/pop/Piechota_do_lata.xml new file mode 100644 index 00000000..7ab6464a --- /dev/null +++ b/songs/pl/pop/Piechota_do_lata.xml @@ -0,0 +1,68 @@ + + + + + + + Bajm + + + + + Znów przyjdzie maj, a z majem bzy + I czekać mam na lepsze dni + Znów przyjdzie mi nosić przykrótkie sny + + + I do lata, do lata, do lata, piechotą będę szła + Ah, ah, ah, ah, yeah, yeah, yeah, uh, uh, uh + + + Znów kupisz mi coś na imieniny + Mmmm, ja to wiem i czuję, że + Znów przyjdzie mi nosić przykrótkie sny + + + I do lata, do lata, do lata, piechotą będę szła + Ah, ah, ah, ah, yeah, yeah, yeah, uh, uh, uh + + + Przykrótkie sny nie w porę + Zbyt lekko się ubiorę + Noc długa, świt w szronach + I wiosna spóźniona + I twoje słowa zimne, + Że nie ma drogi innej + Do lata, do lata, do lata tak dłuży się czas + Gdybyś tylko chciał! + + + To było by to lato j + I słońce i szaleństwo burz + Lecz dajesz mi tylko przykrótkie sny + + + Więc do lata, do lata, do lata, piechotą będę szła + Ah, ah, ah, ah, yeah, yeah, yeah, uh, uh, uh + + + + + + + + + + + + chord positioning + + + Kasia KowalskaKrzysiek Cz. + + + + + + + diff --git a/songs/Pszczolka_maja.xml b/songs/pl/pop/Pszczolka_maja.xml similarity index 94% rename from songs/Pszczolka_maja.xml rename to songs/pl/pop/Pszczolka_maja.xml index ad4829a1..3e496adb 100644 --- a/songs/Pszczolka_maja.xml +++ b/songs/pl/pop/Pszczolka_maja.xml @@ -1,5 +1,5 @@ - + Zbigniew Wodecki diff --git a/songs/Skora.xml b/songs/pl/pop/Skora.xml similarity index 97% rename from songs/Skora.xml rename to songs/pl/pop/Skora.xml index 8e6c05ae..44eeda05 100644 --- a/songs/Skora.xml +++ b/songs/pl/pop/Skora.xml @@ -1,5 +1,5 @@ - + Aya Rl diff --git a/songs/Teksanski.xml b/songs/pl/pop/Teksanski.xml similarity index 91% rename from songs/Teksanski.xml rename to songs/pl/pop/Teksanski.xml index ec90fbcb..9eee8d1d 100644 --- a/songs/Teksanski.xml +++ b/songs/pl/pop/Teksanski.xml @@ -1,5 +1,5 @@ - + Hey @@ -9,7 +9,7 @@ Piosenka musi posiadać tekst - Gdyby chociaż mucha zjawiła się + Gdyby chociaż mucha zjawiła się Mogłabym ją zabić a później to opisać diff --git a/songs/Tolerancja.xml b/songs/pl/pop/Tolerancja.xml similarity index 97% rename from songs/Tolerancja.xml rename to songs/pl/pop/Tolerancja.xml index 8ba93528..fb1e7cb9 100644 --- a/songs/Tolerancja.xml +++ b/songs/pl/pop/Tolerancja.xml @@ -1,5 +1,5 @@ - + Stanisław Sojka @@ -18,7 +18,7 @@ - + Dlaczego nie mówimy diff --git a/songs/pl/pop/Ukraina.xml b/songs/pl/pop/Ukraina.xml new file mode 100644 index 00000000..d6d262ee --- /dev/null +++ b/songs/pl/pop/Ukraina.xml @@ -0,0 +1,53 @@ + + + Hej Sokoły + + + Hej, tam gdzieś znad czarnej wody + Siada na koń Kozak młody + Czule żegna się z dziewczyną + Jeszcze czulej z Ukrainą + + + Hej, hej, hej sokoły + Omijajcie góry, lasy, pola, doły + Dzwoń, dzwoń, dzwoń dzwoneczku + Mój stepowy skowroneczku + Mój stepowy dzwoń, dzwoń, dzwoń + + + Ładnych dziewcząt jest nie mało + Lecz najwięcej w Ukrainie + Tam me serce pozostało + Przy kochanej mej dziewczynie + + + + Ona jedna tam została + Jaskółeczka moja, miła mała + A ja jeden w obcej stronie + Dniem i nocą tęsknię do niej + + + + Żal, żal za dziewczyną + Za kochaną Ukrainą + Żal, żal serce płacze + Już cię więcej nie zobaczę + + + + Wina, wina, wina dajcie + A jak umrę pochowajcie + Na zielonej Ukrainie + Przy kochanej mej dziewczynie. + + + + + Piosenka turystyczna + + + + + diff --git a/songs/WehikulCzasu.xml b/songs/pl/pop/Wehikul_czasu.xml similarity index 97% rename from songs/WehikulCzasu.xml rename to songs/pl/pop/Wehikul_czasu.xml index cd1b82bd..45c0852f 100644 --- a/songs/WehikulCzasu.xml +++ b/songs/pl/pop/Wehikul_czasu.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Whisky.xml b/songs/pl/pop/Whisky.xml similarity index 98% rename from songs/Whisky.xml rename to songs/pl/pop/Whisky.xml index 16c6c859..64688f58 100644 --- a/songs/Whisky.xml +++ b/songs/pl/pop/Whisky.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/pop/Winda_do_nieba.xml b/songs/pl/pop/Winda_do_nieba.xml new file mode 100644 index 00000000..fcc2c5d3 --- /dev/null +++ b/songs/pl/pop/Winda_do_nieba.xml @@ -0,0 +1,59 @@ + + + Dwa Plus Jeden + + + Mój piękny panie, raz zobaczony w technikolorze + Piszę do pana ostatni list + Już mi lusterko z tym pana zdjęciem też nie pomoże + Pora mi dzisiaj do ślubu iść + + + Mój piękny panie ja go nie kocham, taka jest prawda + Pan główną rolę gra w każdym śnie + Ale dziewczyna przez życie nie może iść całkiem sama + Życie jest życiem pan przecież wie + + + Już mi niosą suknię z welonem + Już Cyganie czekają z muzyką + Koń do taktu zamiata ogonem + Mendelsonem stukają kopyta + + + Jeszcze ryżem sypną na szczęście + Gości tłum coś fałszywie odśpiewa + Złoty krążek mi wcisną na rękę + + I powiozą mnie windą do nieba + + + + Mój piękny panie z tego wszystkiego nie mogłam zasnąć + Więc nie mógł mi się pan przyśnić dziś + I tak odchodzę bez pożegnania jakby z nienacka + Ktoś między nami zatrzasnął drzwi + + + + + + + + Krzysiek Cz. + + + + + + + + + + + + + + + + diff --git a/songs/Zawirowal_swiat.xml b/songs/pl/pop/Zawirowal_swiat.xml similarity index 94% rename from songs/Zawirowal_swiat.xml rename to songs/pl/pop/Zawirowal_swiat.xml index a4f9327a..e35cc673 100644 --- a/songs/Zawirowal_swiat.xml +++ b/songs/pl/pop/Zawirowal_swiat.xml @@ -1,5 +1,5 @@ - + Krzysztof Myszkowski @@ -16,7 +16,7 @@ - Uuuuu... zawirował świat + Uuuuu… zawirował świat Jak płatki śniegu na dworze Stare wspomnienia odżyły znów Niewiele nam to jednak pomoże diff --git a/songs/Zawsze_tam_gdzie_ty.xml b/songs/pl/pop/Zawsze_tam_gdzie_ty.xml similarity index 97% rename from songs/Zawsze_tam_gdzie_ty.xml rename to songs/pl/pop/Zawsze_tam_gdzie_ty.xml index 7127060f..d63167d6 100644 --- a/songs/Zawsze_tam_gdzie_ty.xml +++ b/songs/pl/pop/Zawsze_tam_gdzie_ty.xml @@ -1,5 +1,5 @@ - + Lady Punk diff --git a/songs/pl/pop/Zazdrosc.xml b/songs/pl/pop/Zazdrosc.xml new file mode 100644 index 00000000..f91d168c --- /dev/null +++ b/songs/pl/pop/Zazdrosc.xml @@ -0,0 +1,38 @@ + + + Hey + + + chwile gdy wolałabym martwym widzieć cię + Nie musiałabym się tobą dzielić nie nie + Gdybym mogła schowałabym twoje oczy w mojej kieszeni + Żebyś nie mógł oglądać tych, które są dla nas zagrożeniem + + + Do pracy nie mogę puścić cię nie nie + Tam tyle kobiet, każda w myślach gwałci cię + Złotą klatkę sprawię ci, będę karmić owocami + A do nogi przymocuję złotą kulę z diamentami + + + + + + + Krzysiek Cz. + + + + + + + + + + + + + + + + diff --git a/songs/pl/pop/kazik/Celina.xml b/songs/pl/pop/kazik/Celina.xml new file mode 100644 index 00000000..23557da2 --- /dev/null +++ b/songs/pl/pop/kazik/Celina.xml @@ -0,0 +1,84 @@ + + + Kazik + + + Tę burzę włosów każdy zna, przy ustach dłoni chwiejny gest + To Celina, to Celina, to Celina jest + Jak hejnał brzmi jej śmiech, choć całe miasto śpi + Nie wytrzeźwiała od soboty, balet trwa już cztery dni + I w twiście wozi się + W piorunach klipsów i na potłuczonym szkle + + + La-la-la-la-la-la! Zaśpiewał w barze ktoś + To czarny Ziutek pije gin, Celiny koleś, twardy gość + Już pije cztery dni, wychylił setną ćwierć + Powietrze zaraz wyszło z niego i w kliniczną popadł śmierć + Liczko pobladło mu jak wosk + Ziutek pozbył się swych o Celinę trosk + + + Zapamiętajcie sobie radę którą dziś wam wszystkim dam + Możecie liczyć na przyjaciół, pomogą wam + Ziutkowi minął kac, kolesie w kocioł wzięli go + Szukaj Celiny, lamusie, gdzie adapter, chata, szkło + Ziutek nie płakał twardy jest + Godzinę ze wściekłości wył jak pies + + + Tak, tak, tak! Celina już na złom + Już czarny Ziutek z kilerami pod Celiny idzie dom + Oświetlił błysk ich kos, w rynku bramy brzeg + Sikory złote pod mankietem odmierzają sekund bieg + I stoi pikiet sak + Pod oknem, w sieni i u drzwi - dać tylko znak + + + Zasłony w oknach leją blask na mecie jasno jakby w dzień + Tak, to Celiny, Celiny, Celiny cień + Dłonie kołyszą się, egzotyczne kwiaty dwa + Celina naga na balecie pośród żądz i szkła + Wtem nagle jakiś ruch + W progu staje, rudy Mundek, Ziutka druh + + + Dzyń, dzyń, dzyń - to prysło w oknie szkło + Celina naga w noc ucieka, jakie dno! jakie dno! + Już tylko chce się jej choćby do piekła skryć + Och! Ziutek, Ziutek, gdzieś ty był kiedy ja zaczynałam pić + Dlaczegoś nie bił w pysk? + Lecz milczy noc i tylko kosy świeci błysk + + + Dlaczego taki ostry był ziutkowej kosy szpic + Przecież znacie te balety, wszak w nich złego nie ma nic + Ale Celiny głos, Celiny włosów woń + Czerwona mgła zasnuwa oczy, w kamień zwiera dłoń + Więc Ziutek podniósł brew + Błysnęło i na białą pierś trysnęła krew + + + Słuchaj - to jęknął świat jak chory pies u pana stóp + Tak, to Celinie, to Celinie, to Celinie kopią grób + W rynku syren jęk, na jezdni żółty kurz + Niebieska szklanka miga, blacharnia Ziutka zwija już + I odtąd spoza krat + Ziutek i Mundek bez Celiny widzą świat + + + Lecz czasem gdy jest noc Ziutek wytęża słuch + Tak, to Celiny, to Celiny, to Celiny duch + Wiecie więc, że ja was bawiłem śpiewem swym + Tylko dla zwykłej draki, w ogóle prawdy nie ma w tym + To zwykły kawał jest + Darujcie to już ballady kres. + + + + Rock + + + + + diff --git a/songs/pl/pop/kazik/baranek.xml b/songs/pl/pop/kazik/baranek.xml new file mode 100644 index 00000000..bd7f32bd --- /dev/null +++ b/songs/pl/pop/kazik/baranek.xml @@ -0,0 +1,63 @@ + + + Kazik + + + Ach ci ludzie, to brudne świnie + Co napletli o mojej dziewczynie + Jakieś bzdury o jej nałogach + No to po prostu litość i trwoga + Tak to bywa, gdy ktoś zazdrości + Kiedy brak mu własnej miłości + Plotki płodzi, mnie nie zaszkodzi żadne obce zło + Na mój sposób widzieć ją + + + Na głowie kwietny ma wianek + W ręku zielony badylek + A przed nią bieży baranek + A nad nią lata motylek + A przed nią bieży baranek + A nad nią lata motylek + + + Krzywdę robią mojej panience + Opluć chcą ją podli zboczeńcy + Utopić chcą ją w morzu zawiści + Paranoicy, podli sadyści + Utaplani w podłej rozpuście + A na gębach fałszywy uśmiech + Byle zagnać do swego bagna, ale wara wam + Ja ją przecież lepiej znam + Na głowie kwietny ma wianek + + + + Znów widzieli ją z jakimś chłopem + Znów wyjechała do St. Tropez + Znów męczyła się Boże drogi + Znów na jachtach myła podłogi + Tylko czemu ręce ma białe + Chciałem zapytać, zapomniałem + Ciało kłoniąc skinęła dłonią wsparła skroń o skroń + Znów zapadłem w nią jak w toń + + + Ech dziewczyna pięknie się stara + Kosi pieniądz, ma Jaguara + Trudno pracę z miłością zgodzić + Rzadziej może do mnie przychodzić + Tylko pyta kryjąc rumieniec + Czemu patrzę jak potępieniec + Czemu zgrzytam, kiedy się pyta czy ma ładny biust + Czemu toczę pianę z ust + + + + + Rock + + + + + diff --git a/songs/pl/pop/kazik/maciek_ja_tylko_zartowalem.xml b/songs/pl/pop/kazik/maciek_ja_tylko_zartowalem.xml new file mode 100644 index 00000000..f3b731cc --- /dev/null +++ b/songs/pl/pop/kazik/maciek_ja_tylko_zartowalem.xml @@ -0,0 +1,54 @@ + + + Kazik na żywo + + + Maciek ja tylko żartowałem + Gdy tobie z sobą iść kazałem + Tam nie było żadnych pieniędzy + Była nędza i nic więcej. + Tyle razy o tym myślałem + Maciek ja tylko żartowałem + Nie, nie, nie zwariowałem + Ani tym bardziej nie oszalałem + + + Maciek ja tylko żartowałem + Maciek ja tylko żartowałem + Maciek ja tylko żartowałem + Maciek ja tylko żartowałem + + + Maciek ja tylko żartowałem + Nigdy ciebie nie kochałem + Kochałem setki innych facetów + Z tobą to jednak nie to + + + Kręci się ziemia wokół słońca + Dostać można szału z gorąca + Maciek ja tylko żartowałem + Nigdy z nikim jeszcze nie spałem + + + Maciek ja tylko żartowałem + Gdy o tym opowiadałem + To wszystko nie ma sensu + Nie ma sensu kupować kredensu + + + Ciągle słucham głosu twojego + Mają Cię za mojego narzeczonego + Maciek ja tylko żartowałem + gdy tobie z sobą iść kazałem + + + La, la, la, la ... + + + + + + + + diff --git a/songs/pl/pop/kazik/niemamnanicczasubo.xml b/songs/pl/pop/kazik/niemamnanicczasubo.xml new file mode 100644 index 00000000..6c9c4121 --- /dev/null +++ b/songs/pl/pop/kazik/niemamnanicczasubo.xml @@ -0,0 +1,33 @@ + + + Kazik + + + Nie mam na nic czasu bo oglądam seriale + Nie mam na nic czasu wcale a wcale + Nie mam na nic czasu bo oglądam seriale + Nie mam na nic czasu wcale a wcale + Nie mam na nic czasu bo oglądam je + Nie mam na nic czasu coś mówisz do mnie + Nie mam na nic czasu bo zbliża się on + Kolejny sezon Gry o Tron + + + Mam to co mam; łóżko fotel stół i kran + Zakupiony telewizor poza miarę + Sześć stóp pod ziemią jakie siły we mnie drzemią + Dom z Papieru przecież trzeba odbyć karę + Wódki nie pije bo potem zapominam + Kogo ona w tamtym sezonie zabiła + Śpię Dr. House tylko tyle ile trzeba + Spanie to Breaking Bad jest to nie potrzeba + + + + + Rock + + + + + diff --git a/songs/pl/pop/kazik/twoj_bol_jest_lepszy.xml b/songs/pl/pop/kazik/twoj_bol_jest_lepszy.xml new file mode 100644 index 00000000..407136f4 --- /dev/null +++ b/songs/pl/pop/kazik/twoj_bol_jest_lepszy.xml @@ -0,0 +1,65 @@ + + + D/F# - to akord D z Fisem (dodanym na grubej strunie E + Kazik + + + Zamknięte cmentarze to na skutek zdarzeń + ostatnich tygodni, ostatnich wydarzeń + na łańcuchy patrzę, ocieram łzy + tak jak i Ty + tak jak i Ty + + + Otwiera się brama, ja nie wierzę oczom + czy jednak się rzeczy inaczej potoczą + podbiegam, Twoje karki krzyczą stój, + bo Twój ból jest lepszy niż mój, + Twój ból jest lepszy niż mój + + + Ból ukoić możesz Ty jeden + wszyscy inni wpadli w biedę + limuzyny dwie jedna cały cmentarz Twój + lepszy niż mój + + + Na ulicach i w mieszkaniach + duch miłości się wyłania + limuzyny dwie jedna cały cmentarz Twój + większy niż mój + + + Cztery lata temu dziesiątego kwietnia + Marii prosto pod koła córka uciekła + Maria nie przekroczy bramy dziś tej, + bo Twój ból jest lepszy niż jej + Twój ból jest lepszy niż jej + Józef miał ojca, żonę i syna + I tego się dnia dla nich czas ten zatrzymał + Józef nie wspomni dzisiaj dnia tego + Twój ból jest lepszy niż jego + Twój ból jest lepszy niż jego + + + Ja tam po prawdzie nie kocham cmentarzy + gdy mama mnie prosi to z nią tam pojadę + na grobie ojca kładę kwiatów strój + Twój ból jest lepszy niż mój + Twój ból jest lepszy niż mój + Co za piękny dzień dzisiaj nam wszystkim dano + pamiętać o wszystkich, których zabrano + po drugiej stronie stoją i ronią łzy + tak jak i Ty + tak jak i Ty + tak jak i Ty + tak jak i Ty + + + + Rock + + + + + diff --git a/songs/pl/pop/orla_cien.xml b/songs/pl/pop/orla_cien.xml new file mode 100644 index 00000000..8d367d63 --- /dev/null +++ b/songs/pl/pop/orla_cien.xml @@ -0,0 +1,45 @@ + + + Katarzyna Stankiewicz + Robert Janson + Varius Manx + + + + + + Widziałam orła cień + Do góry wzbił się niczym wiatr + Niebo to jego świat + Z obłokiem tańczył w świetle dnia + + + + + + + Słyszał ludzki szept + Krzyczał, że wolność domem jest + Nie ma końca drogi tej + I że nie wie, co to gniew + + + Przemierzał życia sens + Skrzydłami witał każdy dzień + Zataczał lądy, morza łez + Beznamiętnie gasił gniew + + + Choć pamięć krótka jest + Zostawiła słów tych treść + Nie umknie jej już żaden gest + Żadna myśl i żaden sens + + + + Rock + + + + + diff --git a/songs/pl/pop/pila_tango.xml b/songs/pl/pop/pila_tango.xml new file mode 100644 index 00000000..3c50cf55 --- /dev/null +++ b/songs/pl/pop/pila_tango.xml @@ -0,0 +1,82 @@ + + + Krzysztof „Grabaż” Grabowski + Strachy na Lachy + + + + + + + + Oto historia z kantem, + Co podwójne ma dno. + Gdyby napisał ją Dante, + To nie tak by to szło. + + + Grzesiek Kubiak czyli Kuba rządził naszą podstawówką, + Po lekcjach na boisku ganiał za mną z cegłówką. + W Pile było jak w Chile każdy miał czerwone ryło, + Mniej lub bardziej to pamiętasz spytaj jak to było. + W czasach gdy nad Piłą jeszcze latały samoloty, + Wojewoda Śliwiński kazał pomalować płoty. + Potem wszystkie płoty w Pile miały kolor zieleni, + Rogaczem na wieżowcu Piła witała jeleni. + + + Statek Piła Tango, + Czarna bandera. + To tylko Piła Tango, + Tańczysz to teraz. + Płynie statek Piła Tango, + Czarna Bandera. + Ukłoń się świrom, + Żyj nie umieraj. + + + Gruby jak armata Szczepan błąkał się po kuli ziemskiej, + Trafił do Ameryki - prosto z Legii Cudzoziemskiej. + Baca w Londynie z buchami się sąsiedzi, + Lżej się tam halucynuje nikt go tam nie śledzi. + Karawan z Holandii on przyjechał tutaj wreszcie, + Są już Kula Czarny Dusioł słychać strzały na mieście. + Znam jednak takie miejsca gdzie jest lepiej chodzić z nożem, + Całe Górne i Podlasie wszyscy są za Kolejorzem. + + + + Andrzej Kozak Mandaryn Znana postać medialna, + Tyci przy nim jest kosmos gaśnie gwiazda polarna. + Jest tu Siwy, który w rękach niebezpieczne ma narzędzie, + A kiedy Siwy tańczy znaczy mordobicie będzie. + U Budzików pod tytułem chleją nawet z gór szkieły, + Zbigu śpi przy stoliku - ma nieczynny przełyk. + Lecz spokojnie panowie według mej najlepszej wiedzy, + Najszersze gardła tu to mają z INRI koledzy (polej polej!). + + + + Nad rzeką latem ferajna na grilla się zasadza, + Auta z Niemiec sam wiem kto je tu sprowadza. + Żaden spleen i cud na ulicach nie śpią złotówki, + W Pile Święta jest Rodzina - i święte są żarówki. + Nic nie szkodzi, że z wieczora miasto dławi się w fetorach, + Ważne, że jest żużel i kiełbasy senatora. + Fajne z Wincentego Pola idą w świat dziewczyny, + Po pokładzie jeździ Jojo bicyklem z Ukrainy. + + + + Oto historia z kantem, + Co podwójne ma dno. + Gdyby napisał ją Dante, + To nie tak by to szło. + + + + + + + + diff --git a/songs/pl/pop/pocaluj_noc.xml b/songs/pl/pop/pocaluj_noc.xml new file mode 100644 index 00000000..81e3c4d0 --- /dev/null +++ b/songs/pl/pop/pocaluj_noc.xml @@ -0,0 +1,38 @@ + + + Do Ciebie + Anita Lipnicka + Robert Janson + Varius Manx + + + Przez palce zwykłych dni + Oglądasz świat + w pośpiechu gubiąc sny + Twój śmiech zawstydza cię + Więc wolisz nie śmiać się + niż chwilę śmiesznym być + + + Spróbuj choć raz odsłonić twarz i spojrzeć prosto w słońce + Zachwycić się po prostu tak i wzruszyć jak najmocniej + Nie bój się bać, gdy chcesz to płacz, idź szukać wiatru w polu + Pocałuj noc w najwyższą z gwiazd, zapomnij się i tańcz + + + Zakładasz czarny płaszcz + Łatwo wtapisz się + w upiornie trzeźwy świt + Obmyślasz każdy gest + Na wypadek by nikt nie odgadł + kim naprawdę jesteś + + + + + Rock + + + + + diff --git a/songs/pl/pop/zanim_zrozumiesz.xml b/songs/pl/pop/zanim_zrozumiesz.xml new file mode 100644 index 00000000..d2103ea4 --- /dev/null +++ b/songs/pl/pop/zanim_zrozumiesz.xml @@ -0,0 +1,62 @@ + + + Anita Lipnicka + Robert Janson + Varius Manx + + + Zanim powiesz jej że + To był ostatni raz + Zanim dzień spłoszy srebrnego ptaka nocy + Rozkołysz, rozkołysz, rozkołysz + Jeszcze raz + + + Zanim ukradniesz jej + Ostatni kolor ze snów + Zanim gdy na chwilę zamknie oczy znikniesz + Zabierz jej, zabierz jej, zabierz jej + Z ręki nóż + + + Ona ma siłę + Nie wiesz jak wielką + Będzie spadać długo + Potem wstanie lekko + + + + + + Zanim zrozumiesz jak + Bardzo kochałeś + Zanim pobiegniesz kupić czerwone wino + Ona zapomni, zapomni już + Świat twych rąk + + + Zanim będziesz próbował + Odkupić ją za słowa + Zobaczysz jak na drugim brzegu rzeki + Spokojnie spokojnie, spokojnie + Stoi z nim + + + + Ona ma siłę + Nie wiesz jak wielką + Umierała długo + Teraz rodzi się lekko + + + + Nie dla ciebie + + + + Rock + + + + + diff --git a/songs/Barka.xml b/songs/pl/religijne/Barka.xml similarity index 97% rename from songs/Barka.xml rename to songs/pl/religijne/Barka.xml index 6c7af811..33c6b3b1 100644 --- a/songs/Barka.xml +++ b/songs/pl/religijne/Barka.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Bog_sie_rodzi.xml b/songs/pl/religijne/Bog_sie_rodzi.xml similarity index 97% rename from songs/Bog_sie_rodzi.xml rename to songs/pl/religijne/Bog_sie_rodzi.xml index 13ebc224..46dc2b89 100644 --- a/songs/Bog_sie_rodzi.xml +++ b/songs/pl/religijne/Bog_sie_rodzi.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Cicha_noc.xml b/songs/pl/religijne/Cicha_noc.xml similarity index 95% rename from songs/Cicha_noc.xml rename to songs/pl/religijne/Cicha_noc.xml index 80c6c68b..9164bbde 100644 --- a/songs/Cicha_noc.xml +++ b/songs/pl/religijne/Cicha_noc.xml @@ -1,5 +1,5 @@ - + @@ -20,7 +20,7 @@ Cicha noc, święta noc Pastuszkowie od swych trzód Biegną wielce zadziwieni - Za anielskim głosem pieśni + Za anielskim głosem pieni Gdzie się spełnił cud Gdzie się spełnił cud diff --git a/songs/Czarna_Madonna.xml b/songs/pl/religijne/Czarna_Madonna.xml similarity index 97% rename from songs/Czarna_Madonna.xml rename to songs/pl/religijne/Czarna_Madonna.xml index 4da0d2e6..2dbd88fa 100644 --- a/songs/Czarna_Madonna.xml +++ b/songs/pl/religijne/Czarna_Madonna.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Do_szopy,_hej,_pasterze.xml b/songs/pl/religijne/Do_szopy_hej_pasterze.xml similarity index 94% rename from songs/Do_szopy,_hej,_pasterze.xml rename to songs/pl/religijne/Do_szopy_hej_pasterze.xml index 50d404d5..3f11dc24 100644 --- a/songs/Do_szopy,_hej,_pasterze.xml +++ b/songs/pl/religijne/Do_szopy_hej_pasterze.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Gdy_sie_Chrystus_rodzi.xml b/songs/pl/religijne/Gdy_sie_Chrystus_rodzi.xml similarity index 98% rename from songs/Gdy_sie_Chrystus_rodzi.xml rename to songs/pl/religijne/Gdy_sie_Chrystus_rodzi.xml index eb4da1aa..ce49208b 100644 --- a/songs/Gdy_sie_Chrystus_rodzi.xml +++ b/songs/pl/religijne/Gdy_sie_Chrystus_rodzi.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Gdy_sliczna_panna.xml b/songs/pl/religijne/Gdy_sliczna_panna.xml similarity index 95% rename from songs/Gdy_sliczna_panna.xml rename to songs/pl/religijne/Gdy_sliczna_panna.xml index 7366e490..4fb5a63c 100644 --- a/songs/Gdy_sliczna_panna.xml +++ b/songs/pl/religijne/Gdy_sliczna_panna.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Jezus_malusienki.xml b/songs/pl/religijne/Jezus_malusienki.xml similarity index 94% rename from songs/Jezus_malusienki.xml rename to songs/pl/religijne/Jezus_malusienki.xml index f64160e2..7677e50e 100644 --- a/songs/Jezus_malusienki.xml +++ b/songs/pl/religijne/Jezus_malusienki.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/religijne/Koleda.xml b/songs/pl/religijne/Koleda.xml new file mode 100644 index 00000000..241560f8 --- /dev/null +++ b/songs/pl/religijne/Koleda.xml @@ -0,0 +1,74 @@ + + + Uciekali + Agata Miklaszewska; Maryna Miklaszewska + + Janusz Stokłosa + + + + + + Tej nocy Anioł przyszedł do Józefa: + Zbudźcie dzieciątko co tak słodko śpi + Judea dziś to niebezpieczna strefa + I policzone małych chłopców dni. + + Namiestnik Herod ciągle drży w obawie, + Że chociaż władzę dzierży jego dł + I rzymski cesarz patrzy nań łaskawie + To w rączkach dzieci może kryć się broń. + + + + Uciekali, uciekali, uciekali + Na osiołku przez pustyni żar + Jak najdalej, jak najdalej, jak najdalej + Ukryć Dziecię, bezcenny ich skarb. + + + + Ciężko ojczyznę wspominać w pustyni + Mieliśmy jakoś zapewniony byt + Choć czasem patrol mijał drzwi świątyni + Zawsze się modlić mógł pobożny Żyd. + + Lecz może trzeba szlakiem iść wygnania + Tak jak przodkowie nasi kiedyś szli + Może nie tu jest Ziemia Obiecana + Może gdzie indziej będzie rósł nasz Syn. + + + + Jeszcze nie wiemy co nam przeznaczone + Lecz choć przeczucia czasem dręczą złe + Ojciec Niebieski weźmie nas w obronę + I znowu Anioł zjawi się we śnie. + + Piasek przysypał szlaki do Betlejem + Zabłądzić łatwo, trudny każdy krok + Tak mało mamy, tylko tę nadzieję + Która rozjaśnia nam codzienny mrok. + + + + + + + + + Kolęda + + + chord positioning + + + Kasia KowalskaOnufry Krzysiek Cz. + + + + + Drobne korekty w strukturze. + + + diff --git a/songs/Lulajze_Jezuniu.xml b/songs/pl/religijne/Lulajze_Jezuniu.xml similarity index 95% rename from songs/Lulajze_Jezuniu.xml rename to songs/pl/religijne/Lulajze_Jezuniu.xml index 1af2dd0e..812ded41 100644 --- a/songs/Lulajze_Jezuniu.xml +++ b/songs/pl/religijne/Lulajze_Jezuniu.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/religijne/Medrcy_swiata.xml b/songs/pl/religijne/Medrcy_swiata.xml new file mode 100644 index 00000000..051f357e --- /dev/null +++ b/songs/pl/religijne/Medrcy_swiata.xml @@ -0,0 +1,90 @@ + + + + + Tonacja na mój głos - pierwszy dźwięk to E + + + + + + + Mędrcy świata monarchowie + Gdzie spiesznie dążycie + Powiedzcież nam trzej królowie + Chcecie widzieć dziecię + + + + + Ono w żłobie nie ma tronu + + I berła nie dzierży + + A proroctwo jego zgonu + Już się w świecie szerzy + + + + Mędrcy świata, złość okrutna + Dziecię prześladuje + Wieść okropna wieść to smutna + Herod spisek knuje + + + + Nic monarchów nie odstrasza + Do Betlejem spieszą + Gwiazda zbawcę im ogłasza + Nadzieją się cieszą + + + + Przed Maryją stoją społem + Niosą Panu dary + Przed Jezusem biją czołem + Składają ofiary + + + + Trzykroć szczęśliwi królowie + Któż wam nie zazdrości + Cóż my damy, kto nam powie + Pałając z miłości + + + + Tak jak każą nam kapłani + Damy dar troisty + Modły pracę niosąc w dani + + I żar serca czysty + + + + To kadzidło mirrę złoto + Niesiem Jezu szczerze + Co dajemy Ci z ochotą + + Od nas przyjm w ofierze + + + + + + + + Onufry + + + + + + + chord positioning + + + + + Kolęda + diff --git a/songs/Pojdzmy_wszyscy_do_stajenki.xml b/songs/pl/religijne/Pojdzmy_wszyscy_do_stajenki.xml similarity index 95% rename from songs/Pojdzmy_wszyscy_do_stajenki.xml rename to songs/pl/religijne/Pojdzmy_wszyscy_do_stajenki.xml index 3018aaad..54b648e3 100644 --- a/songs/Pojdzmy_wszyscy_do_stajenki.xml +++ b/songs/pl/religijne/Pojdzmy_wszyscy_do_stajenki.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Wsrod_nocnej_ciszy.xml b/songs/pl/religijne/Wsrod_nocnej_ciszy.xml similarity index 97% rename from songs/Wsrod_nocnej_ciszy.xml rename to songs/pl/religijne/Wsrod_nocnej_ciszy.xml index e13d51da..152dd362 100644 --- a/songs/Wsrod_nocnej_ciszy.xml +++ b/songs/pl/religijne/Wsrod_nocnej_ciszy.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Biala_sukienka.xml b/songs/pl/szanty/Biala_sukienka.xml similarity index 97% rename from songs/Biala_sukienka.xml rename to songs/pl/szanty/Biala_sukienka.xml index ef4f4c02..1ed2ea31 100644 --- a/songs/Biala_sukienka.xml +++ b/songs/pl/szanty/Biala_sukienka.xml @@ -1,5 +1,5 @@ - + Spinakery diff --git a/songs/Blue_nose_(2).xml b/songs/pl/szanty/Blue_nose.xml similarity index 98% rename from songs/Blue_nose_(2).xml rename to songs/pl/szanty/Blue_nose.xml index f4ee6e01..4cc9727f 100644 --- a/songs/Blue_nose_(2).xml +++ b/songs/pl/szanty/Blue_nose.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/pl/szanty/Bosman.xml b/songs/pl/szanty/Bosman.xml new file mode 100644 index 00000000..55fca1e6 --- /dev/null +++ b/songs/pl/szanty/Bosman.xml @@ -0,0 +1,72 @@ + + + + + + Na pokładzie od rana + Ciągle słychać bosmana, + Bez potrzeby cholernie się drze. + Choćbyś ręce poranił, + Bosman zawsze cię zgani + I powiada: ,,Zrobione jest źle!'' + + + ,,Jeszcze raz czyścić działo, + Cóż wam chłopcy się stało? + Jak do żarcia, to każdy się rwie. + To nie balia niemiecka, + Trzeba wiedzieć od dziecka, + Że to okręt wojenny RP.'' + + + Ale czasem się zdarzy, + Że się bosman rozmarzy + Każdy bosman uczucie to zna. + Gdy go wtedy poprosisz, + Swą harmonię przynosi, + Siada w kącie na rufie i gra. + + + Opowiada o morzach, + O bezkresnych przestworzach + I o walkach, co przeżył on sam. + O dziewczętach z Bombaju, + Co namiętnie kochają + I całują tak mocno do krwi. + + + A gdy spytasz go tylko, + O czym marzył przed chwilką, + Czemu nagle pojaśniał mu wzrok? + Mówi: ,,W Gdyni, w Orłowie, + Będę chodził na głowie, + Tak mi przypadł do serca ten port.'' + + + Bosman skończył, wiatr ścicha, + Aż tu nagle, u licha! + Pojaśniało coś nagle we mgle + Poznał bosman, jak cała + Polska w blaskach wstawała, + Na pokładzie okrętu RP. + + + + + + + + + + + + + + + + + + + Szanta + + diff --git a/songs/Dwudziesty_czwarty_lutego_(bijatyka).xml b/songs/pl/szanty/Dwudziesty_czwarty_lutego.xml similarity index 87% rename from songs/Dwudziesty_czwarty_lutego_(bijatyka).xml rename to songs/pl/szanty/Dwudziesty_czwarty_lutego.xml index 18fe9d5f..126e19bc 100644 --- a/songs/Dwudziesty_czwarty_lutego_(bijatyka).xml +++ b/songs/pl/szanty/Dwudziesty_czwarty_lutego.xml @@ -1,5 +1,5 @@ - + Bijatyka Stare Dzwony @@ -10,9 +10,9 @@ Turecki niosły znak. - No i... - Znów bijatyka, no i... - Znów bijatyka, no i... + No i… + Znów bijatyka, no i… + Znów bijatyka, no i… Bijatyka cały dzień, I porąbany dzień, i porąbany łeb, Razem bracia, aż po zmierzch! diff --git a/songs/10_w_skali_Beauforta.xml b/songs/pl/szanty/Dziesiec_w_skali_Beauforta.xml similarity index 94% rename from songs/10_w_skali_Beauforta.xml rename to songs/pl/szanty/Dziesiec_w_skali_Beauforta.xml index 6c7d7d24..1e0e92e8 100644 --- a/songs/10_w_skali_Beauforta.xml +++ b/songs/pl/szanty/Dziesiec_w_skali_Beauforta.xml @@ -1,5 +1,5 @@ - + Szanty diff --git a/songs/pl/szanty/Emeryt.xml b/songs/pl/szanty/Emeryt.xml new file mode 100644 index 00000000..15687456 --- /dev/null +++ b/songs/pl/szanty/Emeryt.xml @@ -0,0 +1,85 @@ + + + + Tomasz Piórski + + Ryszard Muzaj + EKT Gdynia + + + + + Leżysz wtulona w pościel + Coś cichutko mruczysz przez sen + Łóżko szerokie, a pościel świeża + Za oknem prawie dzień + A jeszcze niedawno koja + W niej pachnący rybą koc + Fale bijące o pokład + I bosmana zdarty głos + + + To wszystko było minęło zostało tylko wspomnienie + Już nie poczuję wibracji pokładu gdy kable grają + Już tylko dom i ogródek i tak aż do śmierci + A przecież stare żaglowce po morzach jeszcze pływają + + + Nie gniewaj się kochanie + Że trudno ze mną żyć + Że zapomniałem kupić mleko + + I gary zmyć + Lecz jeszcze niedawno pokład + Mym drugim domem był + Tam nie stało się w kolejkach + Tam nie było miejsca dla złych + + + + Upłynie sporo czasu + Nim przyzwyczaję się + Czterdzieści lat na morzu + Zamkniętych w jeden dzień + Skąd lekarz może wiedzieć + Że za morzem tęskno mi + Że duszę się na lądzie + Że śni mi się pokład pełen ryb + + + + Wiem masz do mnie żal + Mieliśmy do przyjaciół iść + Spotkałem kolegę z rejsu + On w morze idzie dziś + Siedziałem potem na kei + Ze łzami patrzyłem na port + Jeszcze przyjdzie taki dzień + Kiedy opuszczę go a na razie + + + To wszystko było minęło zostało tylko wspomnienie + Już nie poczuję wibracji pokładu gdy kable grają + Już tylko dom i ogródek i tak aż do śmierci + + A przecież stare żaglowce po morzach jeszcze pływają + + + + + + + + Alek + + + + + chord positioning + + + + + + Szanta + diff --git a/songs/Fiddlers_Green.xml b/songs/pl/szanty/Fiddler_s_Green.xml similarity index 97% rename from songs/Fiddlers_Green.xml rename to songs/pl/szanty/Fiddler_s_Green.xml index e2c25bfe..28f5c42a 100644 --- a/songs/Fiddlers_Green.xml +++ b/songs/pl/szanty/Fiddler_s_Green.xml @@ -1,5 +1,5 @@ - + J. Rogacki @@ -16,7 +16,7 @@ - + Stary port się powoli układał do snu diff --git a/songs/Hiszpanka_z_Callao.xml b/songs/pl/szanty/Hiszpanka_z_Callao.xml similarity index 97% rename from songs/Hiszpanka_z_Callao.xml rename to songs/pl/szanty/Hiszpanka_z_Callao.xml index 7977d237..fc5b285c 100644 --- a/songs/Hiszpanka_z_Callao.xml +++ b/songs/pl/szanty/Hiszpanka_z_Callao.xml @@ -1,5 +1,5 @@ - + Henryk Czekała; Sławomir Klupś Fragmenty tekstą są cytatami z Edwarda Stachury diff --git a/songs/pl/szanty/Hiszpanskie_dziewczyny.xml b/songs/pl/szanty/Hiszpanskie_dziewczyny.xml new file mode 100644 index 00000000..3045e054 --- /dev/null +++ b/songs/pl/szanty/Hiszpanskie_dziewczyny.xml @@ -0,0 +1,68 @@ + + + + + + + + + + + + Żegnajcie nam dziś hiszpańskie dziewczyny + Żegnajcie nam dziś marzenia ze snów + Ku brzegom angielskim już ruszać nam pora + Lecz kiedyś na pewno wrócimy tu znów + + + I smak waszych ust hiszpańskie dziewczyny + W noc ciemną i złą nam będzie się śnił + Leniwie popłyną znów rejsu godziny + Wspomnienie ust waszych przysporzy nam sił + + + Niedługo ujrzymy znów w dali Cape Deadman + I głowę baranią sterczącą wśród wzgórz + I statki stojące na redzie przy Plymouth + Klarować kotwicę najwyższy czas j + + + + A potem znów żagle na masztach rozkwitną + Kurs szyper wyznaczy na Portland i Wight + I znów stara łajba potoczy się ciężko + Przez fale w kierunku na Beachie Fairlie + + + + Zabłysną nam bielą skał zęby spod Dover + I znów noc w kubryku wśród legend i bajd + Powoli i znojnie tak płynie nam życie + Na wodach i w portach South Foreland Light + + + + I smak waszych ust hiszpańskie dziewczyny + W noc ciemną i złą nam będzie się śnił + Leniwie popłyną znów rejsu godziny + Wspomnienie ust waszych przysporzy nam sił + + + + + + + + Alek za Onufrym + + + + + chord positioning + + + + + + Szanta + diff --git a/songs/pl/szanty/Jasnowlosa.xml b/songs/pl/szanty/Jasnowlosa.xml new file mode 100644 index 00000000..c946887c --- /dev/null +++ b/songs/pl/szanty/Jasnowlosa.xml @@ -0,0 +1,69 @@ + + + Tonam & Synowie + + + Na tańcach ją poznałem długowłosą blond + Dziewczynę moich marzeń, nie wiadomo, skąd + Ona się tam wzięła piękna niczym kwiat + Czy jak syrena wyszła z morza czy ją przygnał wiatr + + + Żegnaj Irlandio, czas w drogę mi j + W porcie gotowa stoi moja łódź + Na wielki ocean przyjdzie mi zaraz wyjść + I pożegnać się z dziewczyną na Lough Sholin + + + Ująłem ją za rękę delikatną jak + Latem mały motyl albo róży kwiat + Poszedłem z nią na plażę wsłuchać się w szum fal + Pokazałem jasnowłosej wielki morza czar + + + + Za moment wyruszam w długi, trudny rejs + I z piękną mą dziewczyną przyjdzie rozstać się + Żagle pójdą w górę, wiatr mnie pogna w przód + I przez morza mnie powiedzie, ty zostaniesz tu. + + + + + + + + + + + + + Onufry + + + + + + + + + + + + + + + chord positioning + + + + + + Bogdan Kuśka + Tradycyjna + + + Tonam & Synowie + Szanta + + diff --git a/songs/pl/szanty/Mazurscy_kolumbowie.xml b/songs/pl/szanty/Mazurscy_kolumbowie.xml new file mode 100644 index 00000000..220f6ab7 --- /dev/null +++ b/songs/pl/szanty/Mazurscy_kolumbowie.xml @@ -0,0 +1,66 @@ + + + Mirosław Kowalewski + Zejman & Garkumpel + + + Gdzieś daleko Ameryka, + Z ortodromą loksodroma, + Na odkrycie swoje czeka + Gdzieś za morzem przyczajona. + + + A my, hej! Pochwyćmy wiatru powiew, + Niech nam zawsze sprzyja niebo. + My, Mazurscy Kolumbowie, + Odkrywamy Węgorzewo. + + + Na wyprawę swoich marzeń + Wyruszyli z ranną bryzą + Nieugięci wprost żeglarze, + Z lękiem gnali za horyzont. + + + A my, hej! Pochwyćmy wiatru powiew, + By w nieznane miejsca płynąć. + My, Mazurscy Kolumbowie, + Odkrywamy dzisiaj Sztynort. + + + Na wyprawie długiej przyszło + Znosić bunty i zwątpienia, + Aż ktoś w końcu z masztu krzyknął + To magiczne słowo: "Ziemia!" + + + A my, hej! Pochwyćmy wiatru powiew, + Obce lądy nie są blisko. + My, Mazurscy Kolumbowie, + Odkrywamy dziś Giżycko. + + + Powrócili cali w glorii, + Wieszcze mieli o czym pisać, + No i przeszli do historii, + Bo przywieźli... ...syfilisa. + + + A my, hej! Pochwyćmy wiatru powiew, + Fale, sztormy to nie bajki. + My, Mazurscy Kolumbowie, + Odkrywamy Mikołajki. + + + Za Kolumbem morskie mile, + Za nim rejs co wart był życia, + A my mamy jeszcze tyle + Jakichś Mazur do odkrycia, do odkrycia, do odkrycia… + + + + + + + + diff --git a/songs/Mister_Stormalong.xml b/songs/pl/szanty/Mister_Stormalong.xml similarity index 93% rename from songs/Mister_Stormalong.xml rename to songs/pl/szanty/Mister_Stormalong.xml index fde25b3e..5547ac99 100644 --- a/songs/Mister_Stormalong.xml +++ b/songs/pl/szanty/Mister_Stormalong.xml @@ -1,5 +1,5 @@ - + @@ -14,7 +14,7 @@ - + Nie żyje stary Stormy już @@ -22,11 +22,11 @@ Nie żyje stary Stormy już Hej mister Stormalong - + - + Najlepszy ze wszystkich szyprów był @@ -57,37 +57,37 @@ - + - + - + - + - + - + - + - + Hej umarł Stormy dzielny chwat @@ -102,11 +102,11 @@ - + - + diff --git a/songs/pl/szanty/Mona.xml b/songs/pl/szanty/Mona.xml new file mode 100644 index 00000000..0c49ca86 --- /dev/null +++ b/songs/pl/szanty/Mona.xml @@ -0,0 +1,92 @@ + + + + Peggy Seger + Utwór opowiada o tragicznych losach załogi łodzi ratowniczej jednej z wielu jakie miały miejsce w historii żeglugi. W polskiej tradycji żeglarskiej kultywowano dawniej piękny zwyczaj śpiewania tej pięknej piosenki w pozycji stojącej. + tradycyjna + Packet + Anna Peszkowska + Lifeboat "Mona" + + + Był pięćdziesiąty dziewiąty rok, + Pamiętam ten grudniowy dzień, + Gdy ośmiu mężczyzn zabrał sztorm + Gdzieś w oceanu wieczny cień. + + + W grudniowy płaszcz okryta śmierć + Spod czarnych nieba zeszła chmur, + + Przy brzegu konał smukły bryg, + Na pomoc "Mona" poszła mu. + + Gdy przyszedł sygnał każdy z nich + Wpół dojedzonej strawy dzban + + Porzucił by na przystań biec, + By ruszyć w dziki z morzem tan. + + + Był pięćdziesiąty dziewiąty rok, + Pamiętam ten grudniowy dzień, + Gdy ośmiu mężczyzn zabrał sztorm + Gdzieś w oceanu wieczny cień. + + + A fale wściekle biły w brzeg, + Ryk morza tłumił chłopców krzyk, + "Mona" do brygu dzielnie szła, + Lecz brygu już nie widział nikt. + + Na brzegu kobiet niemy szloch, + W ramiona ich nie wrócą już, + + Gdy oceanu twarda pięść + Uderzy w ratowniczą łódź. + + + Był pięćdziesiąty dziewiąty rok, + Pamiętam ten grudniowy dzień, + Gdy ośmiu mężczyzn zabrał sztorm + Gdzieś w oceanu wieczny cień. + + + I tylko krwawy słońca dysk + Schyliło już po ciężkim dniu, + + Mrok okrył morze, niebo, brzeg, + Wiecznego całun ścieląc snu. + + Wiem dobrze, że synowie ich + Też w morze pójdą, kiedy znów + + Do oczu komuś zajrzy śmierć + I wezwie ratowniczą łódź. + + + Był pięćdziesiąty dziewiąty rok, + Pamiętam ten grudniowy dzień, + Gdy ośmiu mężczyzn zabrał sztorm + Gdzieś w oceanu wieczny cień. + + + + + + + + + + + + chord positioning + + + Kasia Kowalska + + + + + + diff --git a/songs/Morskie_opowiesci.xml b/songs/pl/szanty/Morskie_opowiesci.xml similarity index 98% rename from songs/Morskie_opowiesci.xml rename to songs/pl/szanty/Morskie_opowiesci.xml index c8ff90ee..f08f7bb5 100644 --- a/songs/Morskie_opowiesci.xml +++ b/songs/pl/szanty/Morskie_opowiesci.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Morze_Polnocne.xml b/songs/pl/szanty/Morze_Polnocne.xml similarity index 96% rename from songs/Morze_Polnocne.xml rename to songs/pl/szanty/Morze_Polnocne.xml index c96a16c7..b518f070 100644 --- a/songs/Morze_Polnocne.xml +++ b/songs/pl/szanty/Morze_Polnocne.xml @@ -1,5 +1,5 @@ - + @@ -43,7 +43,7 @@ Spojrzeli na grzywacze i w oczach mieli strach, - Gdy nie chce nikt -- ja pójdę! -- powiedział Jan van Dyck + Gdy nie chce nikt — ja pójdę! — powiedział Jan van Dyck W jesienne morze skoczył, popłynął poprzez toń, Łaskawe bądź mi morze i ocal mnie Boże Szepnął dziurawiąc galeonu dno. diff --git a/songs/Na_Mazury.xml b/songs/pl/szanty/Na_Mazury.xml similarity index 98% rename from songs/Na_Mazury.xml rename to songs/pl/szanty/Na_Mazury.xml index c71f8d92..d2d35da4 100644 --- a/songs/Na_Mazury.xml +++ b/songs/pl/szanty/Na_Mazury.xml @@ -1,5 +1,5 @@ - + Lucjusz" Michał Kowalczyk diff --git a/songs/Pacyfik.xml b/songs/pl/szanty/Pacyfik.xml similarity index 96% rename from songs/Pacyfik.xml rename to songs/pl/szanty/Pacyfik.xml index 1a2cf3e9..cf49b37d 100644 --- a/songs/Pacyfik.xml +++ b/songs/pl/szanty/Pacyfik.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Maui2.xml b/songs/pl/szanty/Plynmy_w_dol_do_starej_maui.xml similarity index 89% rename from songs/Maui2.xml rename to songs/pl/szanty/Plynmy_w_dol_do_starej_maui.xml index 888b0191..1904f7f2 100644 --- a/songs/Maui2.xml +++ b/songs/pl/szanty/Plynmy_w_dol_do_starej_maui.xml @@ -1,5 +1,5 @@ - + Szanty @@ -21,7 +21,7 @@ Żegnamy już Arktyki blask i płyniemy do starej Maui - Płyńmy w dół do starej Maui... + Płyńmy w dół do starej Maui… Za sobą mamy już Diamond Head no i groźne stare Oahu @@ -30,7 +30,7 @@ Za sobą mamy już setki mil, czas wziąć kurs do Starej Maui - Płyńmy w dół do starej Maui... + Płyńmy w dół do starej Maui… Lody zostały za rufą gdzieś, ciepła bryza w żagle dmie @@ -39,7 +39,7 @@ Więc szybciej łajbo nam się tocz tam do dziewczyn ze Starej Maui - Płyńmy w dół do starej Maui... + Płyńmy w dół do starej Maui… Harpuny już odłożyć czas, starczy, dość już wielorybiej krwi @@ -48,7 +48,7 @@ O dzięki Ci, Boże, że każdy mógł wrócić do rodzinnych stron - Płyńmy w dół do starej Maui... + Płyńmy w dół do starej Maui… Kotwica mocno trzyma dno, wreszcie ujrzysz ukochany dom @@ -57,7 +57,7 @@ Na spacer weźmiesz żonę swą i zapomnisz wszystkie chwile złe - Płyńmy w dół do starej Maui... + Płyńmy w dół do starej Maui… diff --git a/songs/Gdansk.xml b/songs/pl/szanty/Pogodne_popoludnie_kapitana_bialej_floty.xml similarity index 72% rename from songs/Gdansk.xml rename to songs/pl/szanty/Pogodne_popoludnie_kapitana_bialej_floty.xml index 10a18497..777ba930 100644 --- a/songs/Gdansk.xml +++ b/songs/pl/szanty/Pogodne_popoludnie_kapitana_bialej_floty.xml @@ -1,66 +1,54 @@ - - - - - - - - - - - - W Gdańska mewy, wiatr i gotyk - Słońce świeci złotą smugą - Pan kapitan białej floty - Idzie przez ulicę Długą - Idzie z marynarską fają - W oczach ma szelmowskie błyski - Przekupki się w nim kochają - Podziwiają go turystki - - - Transatlantyki na oceanach - A krążowniki w rejsach ćwiczebnych - Każdy z nich musi mieć kapitana - Nasz kapitan też jest potrzebny - - - Podskoczyły drzwi tawerny - Szmer uznania przebiegł salon - Wdzięk niezmierny, szyk cholerny - Na rękawie złoty galon - Duże piwko panno Helu - Jutro w rejs wyjdziemy w morze - To przywiozę Heli z Helu - I bursztyny i węgorze - - - - Piwo w pianie, Bałtyk w pianie - Gdańsk za oknem kolorowy - Pańskie zdrowie kapitanie - Stary wilku zatokowy - W Gdańsku mewy, wiatr i gotyk - Neptun siusia w swoją studnię - Pan kapitan białej floty - Ma dziś wolne popołudnie - - - - - - - - - - - - - - Onufry - - - - - - + + + Transatlantyki + Andrzej Waligórski + Aleksander Grotowski + Aleksander Grotowski; Małgorzata Zwierzchowska + + + W Gdańska mewy, wiatr i gotyk + Słońce świeci złotą smugą + Pan kapitan białej floty + Idzie przez ulicę Długą + Idzie z marynarską fają + W oczach ma szelmowskie błyski + Przekupki się w nim kochają + Podziwiają go turystki + + + Transatlantyki na oceanach + A krążowniki w rejsach ćwiczebnych + Każdy z nich musi mieć kapitana + Nasz kapitan też jest potrzebny + + + Podskoczyły drzwi tawerny + Szmer uznania przebiegł salon + Wdzięk niezmierny, szyk cholerny + Na rękawie złoty galon + Duże piwko panno Helu + Jutro w rejs wyjdziemy w morze + To przywiozę Heli z Helu + I bursztyny i węgorze + + + + Piwo w pianie, Bałtyk w pianie + Gdańsk za oknem kolorowy + Pańskie zdrowie kapitanie + Stary wilku zatokowy + W Gdańsku mewy, wiatr i gotyk + Neptun siusia w swoją studnię + Pan kapitan białej floty + Ma dziś wolne popołudnie + + + + + + + + Onufry + + + diff --git a/songs/pl/szanty/Polow.xml b/songs/pl/szanty/Polow.xml new file mode 100644 index 00000000..e1294cc3 --- /dev/null +++ b/songs/pl/szanty/Polow.xml @@ -0,0 +1,59 @@ + + + Jarosław Zajączkowski + + + Kiedy morze burzy swój spokojny sen + Białą grzywą wdziera się na ląd + My jak drzewa sennie pochylamy się + Wokół morza zacieśniamy krąg + Niespokojne nasze myśli + Szarpie wiatr unosi prąd + Pośród ryku wichrów salejących burz + Słychać pieść o pracy rąk + + + W lampie sennie skwierczy wielorybi tłuszcz + Biały dym unosi wiatr + Niespokojny przybój szarpie smukłą łódź + Już na łowy ruszać czas + W rozhukanej morskiej toni + Czai cielsko cenny łup + Kiedy morzemy pomknie zwinnej włóczni cień + Biały narwal straci róg + + + Wielki duchu oceanów + nasze łodzie wiecznie chroń + Myśliwemu kieruj w sieci cenny łup + Celnie prowadź jego dłoń + Groźną bielą gór lodowych + Nie zwodź naszych morskich dróg + Przed narwala strzeż ogonem + Chroń od morsa groźnych kłów + + + Kiedy morze burzy swój spokojny sen + Białą grzywą wdziera się na ląd + My jak drzewa senne pochylamy się + Wokół morza zacieśniamy krąg + Niespokojne nasze myśli + Szarpie wiatr unosi prąd + Pośród ryku wichrów szalejących burz + Słychać pieśń o pracy rąk + + + + + + + + + + chords + + + Adam Foland + + + diff --git a/songs/Pozegnanie_Liverpoolu.xml b/songs/pl/szanty/Pozegnanie_Liverpoolu.xml similarity index 75% rename from songs/Pozegnanie_Liverpoolu.xml rename to songs/pl/szanty/Pozegnanie_Liverpoolu.xml index fd9dac5d..e2a1e2aa 100644 --- a/songs/Pozegnanie_Liverpoolu.xml +++ b/songs/pl/szanty/Pozegnanie_Liverpoolu.xml @@ -1,20 +1,16 @@ - - - - - - - - - + + + Krzysztof Kuza, Jerzy Rogacki + Cztery Refy + The Leaving of Liverpool Żegnaj nam dostojny stary porcie Rzeko Mersey żegnaj nam - Zaciągnąłem się na rejs do Kaliforni + Zaciągnąłem się na rejs do Kalifornii Byłem tam już niejeden raz - + A więc żegnaj mi kochana ma Za chwilę wypłyniemy w długi rejs Ile miesięcy Cię nie będę widział nie wiem sam @@ -23,30 +19,32 @@ Zaciągnąłem się na herbaciany kliper Dobry statek choć sławę ma złą - A że kapitanem jest tam stary Burgers + A że kapitanem jest tam stary Burgess Pływającym Piekłem wszyscy go zwą Z kapitanem tym płyniemy już nie pierwszy raz Znamy się od wielu, wielu lat - Jeśliś dobrym jest żeglarzem radę sobie dasz + Jeśliś dobrym żeglarzem - radę sobie dasz Jeśli nie toś cholernie wpadł Żegnaj nam dostojny stary porcie Rzeko Mersey żegnaj nam - Wypływamy już na rejs do Kaliforni + Wypływamy już na rejs do Kalifornii Gdy wrócimy opowiemy wam - + + + Szanta + - - + \ No newline at end of file diff --git a/songs/Press_gang.xml b/songs/pl/szanty/Press_gang.xml similarity index 96% rename from songs/Press_gang.xml rename to songs/pl/szanty/Press_gang.xml index 6f976bca..f55fdc1a 100644 --- a/songs/Press_gang.xml +++ b/songs/pl/szanty/Press_gang.xml @@ -1,5 +1,5 @@ - + 4 Refy diff --git a/songs/Przechyly.xml b/songs/pl/szanty/Przechyly.xml similarity index 97% rename from songs/Przechyly.xml rename to songs/pl/szanty/Przechyly.xml index d8c4260a..21ab2ca9 100644 --- a/songs/Przechyly.xml +++ b/songs/pl/szanty/Przechyly.xml @@ -1,5 +1,5 @@ - + diff --git a/songs/Samantha_(2).xml b/songs/pl/szanty/Samantha.xml similarity index 97% rename from songs/Samantha_(2).xml rename to songs/pl/szanty/Samantha.xml index 7a4e46e8..4a1a4c74 100644 --- a/songs/Samantha_(2).xml +++ b/songs/pl/szanty/Samantha.xml @@ -1,5 +1,5 @@ - + @@ -60,7 +60,7 @@ Jesteś łajbą pełną wzruszeń Jesteś łajbą co ma duszę - Co ma duszę, co ma duszę... + Co ma duszę, co ma duszę… diff --git a/songs/pl/szanty/Smialy_harpunnik.xml b/songs/pl/szanty/Smialy_harpunnik.xml new file mode 100644 index 00000000..9b9519f9 --- /dev/null +++ b/songs/pl/szanty/Smialy_harpunnik.xml @@ -0,0 +1,80 @@ + + + + Marek Siurawski + + tradycyjna + Cztery Refy + + The Bold Harpooner + + + Nasz "Diament" prawie gotów już, w cieśninach nie ma kry. + Na kei piękne panny stoją, w oczach błyszczą łzy. + Kapitan w niebo wlepia wzrok, ruszamy lada dzień, + yniemy tam, gdzie słońca blask nie mąci nocy cień. + + + + A więc krzycz: O-ho, ho! Odwagę w sercu miej! + Wielorybów cielska groźne są, lecz dostaniemy je! + + + + Hej, panno, powiedz po co łzy? Nic nie zatrzyma mnie, + Bo prędzej w lodach kwiat zakwitnie, niż wycofam się. + No, nie płacz, mała, wrócę tu, nasz los nie taki zły, + Bo da dukatów wór za tran i wielorybie kły. + + + + + A więc krzycz: O-ho, ho! Odwagę w sercu miej! + Wielorybów cielska groźne są, lecz dostaniemy je! + + + + Na decku Stary wąchał wiatr, lunetę w ręku miał. + Na łodziach, co zwisały już z harpunem każdy stał. + I dmucha tu, i dmucha tam! Ogromne stado wkrąg. + Harpuny, wiosła, liny brać! I ciągaj, brachu, ciąg! + + + + + A więc krzycz: O-ho, ho! Odwagę w sercu miej! + Wielorybów cielska groźne są, lecz dostaniemy je! + + + + + I dla wieloryba już ostatni to dzień, + Bo śmiały harpunnik uderza weń! + + + + + A więc krzycz: O-ho, ho! Odwagę w sercu miej! + Wielorybów cielska groźne są, lecz dostaniemy je! + + + + + + + + + + + + + chord positioning + + + Kasia Kowalska + + + + + + diff --git a/songs/Szanta.xml b/songs/pl/szanty/Szanta_dziewicy.xml similarity index 66% rename from songs/Szanta.xml rename to songs/pl/szanty/Szanta_dziewicy.xml index c29ba1d7..a6f81bfb 100644 --- a/songs/Szanta.xml +++ b/songs/pl/szanty/Szanta_dziewicy.xml @@ -1,41 +1,41 @@ - + Zbigniew Murawski Mirosław Kowalewski - Zejman i Garkumpel + Zejman & Garkumpel - Mam ci pełną marzeń główkę, - Morze myśli mnie rozmarza. + Mam ci pełną marzeń główkę, + Morze myśli mnie rozmarza. Mam prześliczną małą łódkę, - Tylko brak mi... marynarza. + Tylko brak mi… marynarza. - W łódce małej i ciaśniutkiej, - By rozszerzyć krąg podróży + W łódce małej i ciaśniutkiej, + By rozszerzyć krąg podróży Niech marynarz wetknie w łódkę Jakiś maszt możliwie duży - Jestem bardzo młoda jeszcze, + Jestem bardzo młoda jeszcze, Obca morska mi robota. - Och, cudowne czuję dreszcze, + Och, cudowne czuję dreszcze, Gdy mnie uczy trzymać szota. I nie było wcale smutno, - Gdy w około wody tafla, + Gdy w około wody tafla, A marynarz podniósł płótno @@ -49,15 +49,15 @@ Sztorm, och, błagam dobry Be, - Niech się skończy... nie za szybko! + Niech się skończy… nie za szybko! - Gdy ucichły w końcu fale, - Drżąc zmęczona się rozmarzam. + Gdy ucichły w końcu fale, + Drżąc zmęczona się rozmarzam. Nie jest takie smutne wcale - Ciężkie życie marynarza... + Ciężkie życie marynarza… diff --git a/songs/Szesc_blota_stop.xml b/songs/pl/szanty/Szesc_blota_stop.xml similarity index 96% rename from songs/Szesc_blota_stop.xml rename to songs/pl/szanty/Szesc_blota_stop.xml index 44485c7f..6ea5a65e 100644 --- a/songs/Szesc_blota_stop.xml +++ b/songs/pl/szanty/Szesc_blota_stop.xml @@ -1,5 +1,5 @@ - + Henryk Czekała Six Feet of mud diff --git a/songs/pl/szanty/Tawerna_pod_pijana_zgraja.xml b/songs/pl/szanty/Tawerna_pod_pijana_zgraja.xml new file mode 100644 index 00000000..303ec372 --- /dev/null +++ b/songs/pl/szanty/Tawerna_pod_pijana_zgraja.xml @@ -0,0 +1,71 @@ + + + Grzegorz Bukała + + + Kiedy niebo do morza przytula się z płaczem + Licho sosny garbate do reszty wykrzywia + Brzegiem morza wędrują bezdomni tułacze + I nikt nie wie skąd idą, jaki wiatr ich przywiał + + + Do tawerny ,,Pod pijaną zgrają'' + Do tańczących, rozhukanych ścian + I do dziewcząt, które serca + Za złamany grosz oddają + Nie pytając, czy kto kiep, czy drań. + + + Kiedy wiatry noc chmurną przegonią za wodę, + Gdy pół--słońce pół nieba, pół morza rozpali, + Opuszczają wędrowcy uśpioną gospodę, + Z pierwszą bryzą znikają w pomarszczonej dali. + + + A w tawernie ,,Pod pijaną zgrają'' + Spływa smutek z okopconych ścian, + A dziewczyny z pół--grosików + Amulety układają + Na kochanie, na tęsknotę i na żal. + + + Kiedy chandra jesienna jak mgła cię otoczy, + Kiedy wszystko postawisz na kartę przegraną, + Zamiast siedzieć bezczynnie i płakać lub psioczyć + Weź węzełek na plecy, ruszaj w świat w nieznane. + + + + Do tawerny ,,Pod pijaną zgrają'' + Do tańczących, rozhukanych ścian + I do dziewcząt, które serca + Za złamany grosz oddają + Nie pytając, czyś ty kiep, czy drań + + Nie pytają, czyś ty kiep, czy drań + Nie pytają, czyś ty kiep + + + + + + + Alek + + + + + + Zgonde z nagraniem — Alek + + + + Grzegorz Bukała + Grzegorz Bukała + + + + + + + diff --git a/songs/Zegluj.xml b/songs/pl/szanty/Zegluj.xml similarity index 87% rename from songs/Zegluj.xml rename to songs/pl/szanty/Zegluj.xml index 67db3af8..0149c2b9 100644 --- a/songs/Zegluj.xml +++ b/songs/pl/szanty/Zegluj.xml @@ -1,5 +1,5 @@ - + Szanty @@ -18,7 +18,7 @@ Twoim własnym domem stanie się. - Żegluj, żegluj tam gdzie Nowa Szkocja... + Żegluj, żegluj tam gdzie Nowa Szkocja… Atlantyk bije falą w stromy brzeg, @@ -32,8 +32,8 @@ Lecz niedługo wszystkim powiem wam. - Żegluj, żegluj tam gdzie Nowa Szkocja... - Żegluj, żegluj tam gdzie Nowa Szkocja... + Żegluj, żegluj tam gdzie Nowa Szkocja… + Żegluj, żegluj tam gdzie Nowa Szkocja… diff --git a/songs/plastelina.xml b/songs/plastelina.xml deleted file mode 100644 index 1972fa5a..00000000 --- a/songs/plastelina.xml +++ /dev/null @@ -1,52 +0,0 @@ - - - - - - - - - - - - Ulepiłem sobie domek z niewidzialnej plasteliny, - Dwa okienka, dwa kominy z niewidzialnej plasteliny, - A w okienku kwiatki bratki z niewidzialnej plasteliny, - A dla taty krawat w kratkę z niewidzialnej plasteliny. - - - La, ... - - - Ulepiłem sobie pieska mięciutkiego z czarnym pyszczkiem , - Lalę Kasie i Tereskę, i pistolet, i siostrzyczkę, - Namęczyłem się ogromnie stłukłem łokieć, zbiłem szklanke, - Mamo, tato chodźcie do mnie mam tu dla was niespodziankę. - - - - Czemu na mnie tak patrzycie i zdziwione macie miny, - Czyście nigdy nie widzieli, niewidzialnej plasteliny. - - - - - - - - - - - - - - - - Michał Korch - - - Sprawdzający nie znają tej piosenki :( - - - - diff --git a/songs/pociag.xml b/songs/pociag.xml deleted file mode 100644 index 087e71a9..00000000 --- a/songs/pociag.xml +++ /dev/null @@ -1,81 +0,0 @@ - - - - 281. WDH - - 281. WDH - 281. WDH - - - - - Opadły mgły i pociąg ze snu się budzi, - Górą snuje się dym, - Przy ruszaniu szybkim się ktoś wywrócił, - Ktoś tam śpi na koledze swym. - Pies się włóczy po pod kołami bez głowy, - Trzeba zmienić jazdy kierunek, - otek niesie młotkowy. - - - - A ciuchcia toczy, toczy swój skład uroczy, - Toczy, toczy się skład. - - Ty, co wisisz na lampie, by stać mógł ktoś, - Już dość, już dość, już dość! - Nie ma tu tuneli drutów z prądem brak, - A więc wdrapuj się szybko na dach. - - Bo nowy dzień wstaje, bo nowy dzień wstaje, - Nowy dzień, - - Wstaje nowy dzień. - - - Z czarnego snu już miasto się wynurza, - ońce rozpędza mrok. - Na koleje polskie się ktoś oburza, - Bo coraz większy jest tlok. - Śpi na półce nad nami osób pięć pospołu, - Ale półka urwać się nie może, - Trzymamy ją od dołu. - - - - A ciuchcia toczy, toczy swój skład uroczy, - Toczy, toczy się skład. - - Ty, co leżysz na dachu, by stać mógł ktoś, - Już dość, już dość, już dość! - Usiądź sobie z brzegu i zrób miejsce nam, - Bo my zaraz wdrapiemy się tam. - - Bo nowy dzień wstaje, bo nowy dzień wstaje, - Nowy dzień. - - Wstaje nowy dzień. - - - - - - - - - - - - - - chord positioning - - - Michał Korch - - - Sprawdzający nie słyszał nigdy tej piosenki. - - Opadły mgły - - diff --git a/songs/pozegnanieO.xml b/songs/pozegnanieO.xml deleted file mode 100644 index f2a065e3..00000000 --- a/songs/pozegnanieO.xml +++ /dev/null @@ -1,95 +0,0 @@ - - - - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Na ile wiary brak gorącej, - Że jest na niebie jakiś bóg, - Na tyle wiąże koniec z końcem - Łańcucha katorżnika nóg. - Na ile wciąż nadzieja szarpie, - Że coś się dla nas w mrokach tli, - - Na tyle wigilijne karpie - Śnią smacznie swe beztroskie sny. - - - - Piosenka pożegnania -- - Piosenką jest utraty, - Żegnałem ludzi i zdania -- - Traciłem całe światy. - I nic nie pozostało - Prócz tego, co nucicie! - - To wcale nie jest mało - Tak żegnać całe życie. - - - - Na ile trwa, co odchodzi, - Nabite na Historii hak, - Na tyle zauważą młodzi, - Że jednak czegoś jest im brak. - Na ile ufa młody dureń - W niewyczerpany zapas lat, - - Na tyle mu bezbronną skórę - Tnie raz po raz bezwzględny bat. - - - - - Na ile zdolny jest do krzyku - W obronie innych każdy z nas, - Na tyle trwa ten kraj pomników, - Strumieniem podmywany głaz. - Na ile skory do ofiary - Jest ten, co bluźnił, łgał i kradł, - - Na tyle wierzy człowiek stary - W to, że ocali własny świat. - - - - - Ach, świat przebrzmiałych dźwięków - Jakąż melodię wiódł! - Już jej nie wskrzesisz ręką, - Już nie ma tamtych nut... - - - Ach, z tego, czego już nie ma - Jakiż by mógł być świat! - - Ale to inny temat -- - Nam już nie starczy lat... - - - - - - - - - Między Nami - - - - - - chord positioning - - - Michał Korch - - - - - \ No newline at end of file diff --git a/songs/prawodzungli.xml b/songs/prawodzungli.xml deleted file mode 100644 index 09863165..00000000 --- a/songs/prawodzungli.xml +++ /dev/null @@ -1,89 +0,0 @@ - - - - Rudyard Kipling - Na potrzeby młodszoharcerskie... - Michał Korch - - Józef Birkenmajer - - - - - Oto jest zbiór praw dżungli -- jak niebo wieczysty, niemylny, - Ginie wilk, co je łamie; wilk, co ich słucha jest szczęśliwy i silny. - Jak pnącza, co pień opasują, tak Prawo wkoło nas się winie, - - Bo wilk jest siłą drużyny, a siła wilka w drużynie. - - - - Pij do syta, lecz w miarę. Kąp się codziennie od kity do głowy, - A pomnij, że dzień jest od spania, a noc przeznaczona na łowy. - Niechaj się szakal łasi tygrysom! Lecz ty, gdy wyrośniesz, o, szczenię, - - Pamiętaj, że wilk jest łowcą -- i sam ma zdobywać jedzenie. - - - - Gdy spotkają się dwa stada i nie chcą sobie ustąpić uprzejmie, - Leż spokojnie, bo może starszyzna bezkrwawo spór ten rozejmie. - Nora jest wilka schronieniem, lecz gdy wykopał ją nazbyt widocznie, - - Rada mu prześle przestrogę, ażeby się przeniósł niezwłocznie. - - - - Gdyś zaczął łów przed północą, milcz -- nie budź lasu szczekaniem, - Bo spłoszysz nam wszelką zwierzynę i my bez łupu zostaniem. - Poluj dla siebie, dla szczeniąt, dla druhów. Krew taka nie brudzi! - - Lecz bez potrzeby nie poluj! Po siedmiokroć wara polować na ludzi! - - - - Gdy porwiesz zdobycz słabszemu, nie pożeraj wszystkiego w próżności. - Nędzarz jest w Prawa opiece, zostaw mu choć skórę i kości! - Zdobycz drużyny ma służyć za jadło całej drużynie, - - A kto tę zdobycz chciał unieść do własnej nory, niech zginie! - - - - Wilczyca ma prawo do leża. Gdy samcom powiodą się łowy, - Wolno jej żądać dziesięcin dla wilcząt -- i nigdy nie dozna odmowy! - Wilk -- ojciec jest panem w swej norze. To wolny myśliwiec włóczęga! - - Sądzi go jeno Rada, a władza drużyny go nie dosięga. - - - - Gdy Prawo jest w czymś niedokładne, szukajcie pomocy w swym herszcie: - On starszy, mocniejszy i mędrszy -- więc jego przepisów się dzierżcie! - Takie są Prawa Puszczańskie. Wyliczyć je -- niepodobieństwo! - - Lecz sercem Prawa, głową i koścem jest... posłuszeństwo! - - - - - - - - - - - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/rajdowa.xml b/songs/rajdowa.xml deleted file mode 100644 index 2428c5bb..00000000 --- a/songs/rajdowa.xml +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - - - - - - - - Naszej ziemi śpiewamy, ziemi pokłon składamy, - Taki prosty, serdeczny, harcerski, - Niechaj echo poniesie tę balladę rajdowa - W nowe jutro i przyszłość nową. - - - - Właśnie tu na tej ziemi, młody harcerz meldował - Swą gotowość umierać za Polske. - Tak, jak ty niesiesz plecak, on niósł w ręku karabin - W sercu miłość, nadzieję i troskę. - Może tu w Nowej Słupi, Daleszycach, Bielicach - Brzozowymi krzyżami znaczonych, - Swą dziewczynę pozegnał nic nie wiedząc, że tylko - Kilka dni życia mu przeznaczone. - - - - Na pomniku wyryto, ze szesnaście mial wiosen, - Że byl śmialy, odważny, radosny. - Kiedy padał płakała cała puszcza jodłowa, - Nie doczekal czekanje tak wiosny. - I choć on nie doczekał, to nie zginał tak sobie -- - Przetarł szlak, którym dzisiaj wedrujesz, - Kiedy tak przy ognisku spiewasz sobie balladę, - Tak jak on w sercu ojczyzne czujesz. - - - - - - - - - - - Piosenka harcerska - - - - chord positioning - - - Michał Korch - - - W takiej wersji śpiewa Barakowa z 281. Nie znam autorów. - - - \ No newline at end of file diff --git a/songs/rapsodokroluwarnenczyku.xml b/songs/rapsodokroluwarnenczyku.xml deleted file mode 100644 index 48aacc37..00000000 --- a/songs/rapsodokroluwarnenczyku.xml +++ /dev/null @@ -1,142 +0,0 @@ - - - - Andrzej Waligórski - - Aleksander Grotowski - Aleksander Grotowski - - - - - Lśni chorągiew pozłocista - Chrzęści zbroja szmelcowana - Jedzie, jedzie król Władysław - By poskromić bisurmana. - - - Po wąwozach brzmią cykady, - Koń królewski raźnie parska, - Dzielny Węgier, Jan Hunyady - Sprawdza szyki klnąc z madziarska. - - - Nad wzgórzami wstają zorze, - Wojsko w marszu rumor czyni, - - O, już widać Czarne Morze! - Mówi legat Cesarini. - - - Król naprędce je śniadanie, - Jan Hunyady wszedł z łoskotem: - - Nawalili wenecjanie, - Wycofali swoją flotę! - - - Król odstawił kubek z winem, - Blask mu strzelił spod powieki: - - Uderzamy za godzinę - - A Wenecji - wstyd na wieki! - - - Jeszcze Warna w dali drzemie, - Jeszcze nisko stoi słońce, - - A pancerni - strzemię w strzemię, - - A pancerni - koncerz w koncerz, - - - - A pancerni - kopia w kopię - Ku piaszczystym patrzą brzegom... - - No to cześć, daj pyska chłopie! - - Mówi król do Hunyadego. - - - - I błysnęły jednym blaskiem - Setki mieczy wyszarpniętych - - I zgrzytnęły jednym trzaskiem - Setki przyłbic zatrzaśniętych, - - - - I zadrżała ziemia święta - - I huknęły dzwony w mieście, - - I ruszyli - najpierw stępa, - Potem kłusem, cwałem wreszcie, - - - Poszła dzielna polska jazda, - Poszli Węgrzy niczym diabli, - Jak stalowa, ostra drzazga, - Jak błyszczące ostrze szabli, - - - - I widziano jak lecieli - Pędem wielkim i szalonym, - - I widziano, jak tonęli - W morzu Turków niezmierzonym. - - - Po czym z piórem, siadł nad kartą - Mnich uczony, stary skryba: - - Warto było, czy nie warto? - Odwrót byłby lepszy chyba... - - - Chrzanił zacny zjadacz chleba - Czas nad nami wartko goni, - - I tak kiedyś umrzeć trzeba, - To już lepiej tak jak oni. - - - Z resztą - koniec dzieło wieńczy, - Mnich w klasztorze kipnął marnie, - - A szalony król Warneńczyk - Ma grobowiec w pięknej Warnie, - - - - I szanują go Bułgarzy - I nas - dzięki niemu - cenią, - Więc na czarnomorskiej plaży - aniam się królewskim cieniom. - - - - - - - - - - - - - - - - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/rover.xml b/songs/rover.xml deleted file mode 100644 index 5a8ce631..00000000 --- a/songs/rover.xml +++ /dev/null @@ -1,77 +0,0 @@ - - - - - - - - - - - - I'm a a rover and seldom sober - I'm a rover, o' high degree; - And when I'm drinking, I'm always thinking - How to gain my love's company. - - - Though the nicht be dark as dungeon - No' a star to be seen above, - I will be guided without a stumble - Into the airms o' my ain true love. - - - He steppit up to her bedroom window, - Kneelin' gently upon a stone; - He rappit at her bedroom-window - "Darlin' dear, do you lie alone?" - - - She raised her heid on her snaw-white pillow - Wi' her arms aboot her breast, - "Wha' is that at my bedroom window - Disturbin' me at my lang night's rest?" - - - "It's only me, your ain true lover, - Open the door and let me in. - For I hae come on a lang journey, - And I'm near drenched to the skin." - - - She opened the door wi' the greatest pleasure, - She opened the door and let him in, - They baith shook hands and embraced each other - Until the mornin' they lay as one. - - - The cocks were crawin', the birds were whistlin' - The burns they ran free abune the brae; - "Remember, lass, I'm a ploughman laddie - And the fairmer I must obey." - - - "Noo, my lass, I must gang and leave thee - And though the hills they are high above, - I will climb them wi' greater pleasure - Since I been in the airms o' my love. - - - - - - - - - - - - - - - - - - - piosenka szkocka - diff --git a/songs/spotkanie_w_porcie.xml b/songs/spotkanie_w_porcie.xml deleted file mode 100644 index 7258b3e1..00000000 --- a/songs/spotkanie_w_porcie.xml +++ /dev/null @@ -1,103 +0,0 @@ - - - - Jacek Kaczmarski - Piosenka Wizbora przerobiona przez Wysockiego, a następnie spolszczona przez Kaczmarskiego - Jacek Kaczmarski - Jacek Kaczmarski - - - - - W Amsterdamie statek nasz na wyładunku był, - Człowiek do roboty nie miał nic, więc w porcie pił. - Piję po obcemu nie rozumiem, nudzę się, - Kiedy jakiś czarny siada koło mnie. - - - - America - mówi do mnie - zrozumiałem, - Rozejrzałem się i mówię - Sowietskij Sojuz. - - Soviet Union - on się cieszy, ja do pełna mu nalałem, - Jak raz swoich nie było więc był pełny luz. - - - Po ichniemu nie rozumiem, on po ludzku też, - Lecz jest wódka, więc jest tłumacz, przy niej mów co chcesz. - Postawiłem po sto gram, niech Negr widzi że gest mam, - Jemu przecież w Ameryce ciężko jest. - - - On tymczasem mówi - Stany Zjednoczone - To największe państwo z wszystkich świata państw! - W bankach złota ma zasoby niezliczone, - Chcesz z nim zacząć to już nie masz żadnych szans. - - - A ja na to - Kreml w niebo śle rakiety! - Bez wysiłku wielkich rzek zawraca bieg! - Żal mi ciebie lecz niestety - Również trudny kunszt baletu - Najlepiej posiadł on na planecie tej! - - - Przyszło potem po gram dwieście do rozmowy chęć, - Wyjaśniłem mu że jest ofiarą klasowych spięć, - Lecz Murzyna marynarski umysł wciąż w ciemnościach trw - - I na światły wywód mój odpowiedź dał: - - - - U nas jest na głowę po dwa samochody, - Zbudowaliśmy największy świata gmach, - Nasza demokracja daje nam swobody, - Których oczekuje cały świat we łzach. - - - A ja na to - my w niebo ślem rakiety! - Bez wysiłku wielkich rzek cofamy bieg! - Żal mi ciebie lecz niestety - Również trudny kunszt baletu - Najlepiej posiedliśmy na planecie tej! - - - Szybko nabierała tempa ta wymiana zdań, - Ale nie chciał Negr zrozumieć co jest dobre dlań. - Postawiłem po gram trzysta, myślę teraz zgodzi się, - Ale on choć ledwie mówi jednak mówi, że: - - - - Ja posiadam wielki kanion Colorado. - Delfinów język też rozszyfrowałem ja. - U mnie Niagara jest największy z wodospadów - I gwiazd pięćdziesiąt moja flaga ma, - - - A ja na to - ja w niebo ślę rakiety! - Bez wysiłku wielkich rzek zawracam bieg! - Żal mi ciebie lecz niestety - Również trudny kunszt baletu - Najlepiej ja posiadłem na planecie tej! - - - - - - - - - Bankiet - poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - Akordy są takie jak ja gram... Nie koniecznie muszą się zgadzać z wersją Kaczmarskiego :P - - - diff --git a/songs/spowiedz.xml b/songs/spowiedz.xml deleted file mode 100644 index afc2a103..00000000 --- a/songs/spowiedz.xml +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - - - - - - Raz do księdza bernardyna - Jedzie czarna limuzyna. - Z niej wysiada ten chłopczyna - I tak spowiedź swą zaczyna: - - - -- Proszę księdza bernardyna, - Całowałem się z dziewczyną. - - - -- O mój chłopcze to rozpusta, - Całowałeś dziewcze w usta. - - - -- Trochę niżej, trochę niżej, - Trochę niżej, proszę księdza, - Trochę niżej, trochę niżej, - Proszę księdza bernardyna. - - - -- O mój chłopcze, nie przeżyję, - Całowałeś dziewcze w szyję. - - - - -- O mój chłopcze, to mnie mierzi, - Całowałeś dziewcze w piersi. - - - - -- O mój chłopcze, to występek, - Całowałeś dziewcze w pępek. - - - - -- O mój chłopcze, co za psoty, - Całowałeś dziewcze w stopy. - - - -- Trochę wyżej, trochę wyżej, - Trochę wyżej, proszę księdza, - Trochę wyżej, trochę wyżej, - Proszę księdza bernardyna. - - - -- O mój chłopcze, co za zbytki, - Całowałeś dziewcze w łydki. - - - - -- O mój chłopcze, czy to złuda? - Całowałeś dziewcze w uda. - - - - -- O mój chłopcze, ja cię zduszę, - Całowałeś dziewcze w pupę. - - - Z drugiej strony, z drugiej strony, - Z drugiej strony proszę księdza, - Z drugiej strony, z drugiej strony, - Proszę księdza bernardyna. - - - - - - - - - - - - - - - chord positioning - - - Michał Korch - - Wersja śpiewana przez 21. WDHy odworzona z pamięci z wersji Józka i z netu, gdzie istnieją setki wersji. Prawdopodobnie różni się trochę. - - - - diff --git a/songs/tropiki.xml b/songs/tropiki.xml deleted file mode 100644 index cf4b5ccb..00000000 --- a/songs/tropiki.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - - - - - - - Przez afrykański busz nie przejdziesz ani rusz - I nikt nie przedrze się bez noża - Jest tylko jeden mąż, co piersią pruje gąszcz - To noso, noso, noso, nosorożec. - - - - Tropiki, tropiki, tropiki, - - Ach upalny jest wasz urok dziki, dziki, aha ha ha ha - - - - Murzynów czarnych stu, na bębnach bum, bum, bum, - Co przy ognisku piją wodę. - W szuwarach słychać szum, krokodyl wciąga brzuch, - a słoń wyciąga, ciąga, ciąga trąbę. - - - - Na dworze ciemna noc, jakbyś nałożył koc - I nic nie widać, chociaż świeci lampa. - I nagle skoczył kot, lecz to nie mógł być kot - Na pewno, pewno, pewno to był lampart. - - - - - - - - - - - - - chord positioning - - - Michał Korch - - Nie znam twórców. - - - \ No newline at end of file diff --git a/songs/tylkochciec.xml b/songs/tylkochciec.xml deleted file mode 100644 index f0a5f78d..00000000 --- a/songs/tylkochciec.xml +++ /dev/null @@ -1,68 +0,0 @@ - - - - J.Fiwek - - Z. Piasecki - - - - - - Że spadnie z nieba to co chcesz, - Mylisz się bracie i na pewno -- - Nie czekaj cudów, przecież wiesz: - Życie upływa, a masz jedno. - - - Tylko chcieć, będziesz miał słońce co dnia, - Tylko chcieć, rozjaśnisz każdy mrok, - Tylko chcieć, Twój cały będzie zodiak, - Tylko chcieć, a szczęście masz o krok. - Kolory tęczy i złoto zbóż, - Srebro księżyca i zapach róż… - Dla ciebie wszystko! - - - Nie pójdziesz dalej nawet krok, - Gdy stoisz w miejscu -- to na pewno. - Nie czekaj cudów, przecież wiesz: - Życie upływa, a masz jedno. - - - - Nie czekaj jutra, dzisiaj j - Obudź się bracie, kwiaty więdną. - I już bez cudów, przecież wiesz: - Życie upływa, a masz jedno. - - - - - - - - - - - - - - Poezja śpiewana - - - - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/wasza_wysokosc_kobieto.xml b/songs/wasza_wysokosc_kobieto.xml deleted file mode 100644 index c6a0d6f0..00000000 --- a/songs/wasza_wysokosc_kobieto.xml +++ /dev/null @@ -1,59 +0,0 @@ - - - - Bułat Okudżawa - Zwrotki 1. i 3. maja inną melodię niż 2. i 4. - Bułat Okudżawa - Bułat Okudżawa - Wiktor Woroszylski - Wasze Wieliczestwo Żenszczyna - - - Ciemnością, ciszą jak biedą - - Osnute wszystko w tym domu… - Wasza Wysokość Kobieto, - Czy pani naprawdę do mnie? - - - Żarówki pełga tu oko, - Kroplami mur spływa nagi… - Kobieto, Wasza Wysokość, - Skąd w pani tyle odwagi? - - - To przyjście pani – jak pożar. - Zapiera dech, huczy wokół… - Lecz proszę do środka, proszę. - Nie warto tak stać na progu. - - - Więc do mnie – naprawdę, miła?! - Ach, co też mi się znów plecie… - Wiem – pani drzwi pomyliła, - Ulicę, miasto, stulecie. - - - - - - - - - - - poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/wee.xml b/songs/wee.xml deleted file mode 100644 index cbabf633..00000000 --- a/songs/wee.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - - - - - - - - - - A wee drappie whisky, oh when I am wearied - Ma blood it will warm, my spirits will cheer - For when I sit doon, I intend to be merry - Come fill up a bumper and hand it round here. - - - I can scarce get a hauf oor, oh when I am wearied - To tell you the truth that I'm vrocht (wrought) very sore - My ploo and my lassie is a' my whole pleasure - We'll both tak' a kiss an' hae a drap more. - - - Contented I sit and contented I labour - Contented I drink and contented I sing - I never dispute nor fall oot wi' my neebors - For that is a mean and a contentious thing. - - - Oh few, very few ever hear me compleenin - Though ofttimes the load of oppression I bear - Oh fat is the use o a man aye compleenin' - For aye fan he tastes, he maun hae a drap mair. - - - Come noble waiter, bring in a large measure, - I mean hauf a mutchkin the best o' the toon - An' when it is drunken, it's time to bejoggin - We'll gang merrily hame wi' the canniest carl. - - - So good night to you all, I think it's but reason, - Altho' that the whisky speaks lood in my ear - Good night and safe home, till farther occasion - We'll a' meet in friends and hae a drap mair. - - - - - - - - - - - - - Krzysiek Cz. - - - - - piosenka szkocka - diff --git a/songs/wiodawioda.xml b/songs/wiodawioda.xml deleted file mode 100644 index 7f0a30b9..00000000 --- a/songs/wiodawioda.xml +++ /dev/null @@ -1,62 +0,0 @@ - - - - John Ronald Ruel Tolkien - Wiersz zaczerpnięty z książki ,,Hobbit, czyli tam i z powrotem'' - Michał Korch - 21. WDHy ,,Żbiki" - Włodzimierz Lewik - - - - Wiodą, wiodą drogi w świat, - Wśród lesistych gór zieleni, - W mrocznych grotach znacząc ślad, - Wśród zbłąkanych mknąc strumieni. - Poprzez biały zimny śnieg, - Łąki kwietne i majowe, - Omijając skalny brzeg - - I pagóry księżycowe. - - - Wiodą, wiodą drogi w świat, - Pod gwiazdami mkną na niebie -- - Choć wędrować każdy rad, - W końcu wraca w dom, do siebie. - - Oczy, które ognia dziw - - Oglądały -- i pieczary, - Patrzą czule w zieleń niw - - I kochany domek stary. - - - - Wiodą, wiodą drogi w świat... - - - - - - - - - - - - - - - - chord positioning - - - Michał Korch - - - - - - \ No newline at end of file diff --git a/songs/wloczedzy.xml b/songs/wloczedzy.xml deleted file mode 100644 index bc5ee5fa..00000000 --- a/songs/wloczedzy.xml +++ /dev/null @@ -1,105 +0,0 @@ - - - - Jacek Kaczmarski - - Przemysław Gintrowski - Przemysław Gintrowski, Jacek Kaczmarski, Zbigniew Łapiński - - - - - Wchodzimy z twarzami zdrowymi od mrozu, - Siadamy przy ogniu tańczącym z radości, - Ścieramy z nadgarstków odciski powrozów, - Wołamy o wino i chleb, i tłustości, - Spod ścian patrzą na nas w milczeniu miejscowi, - Napięci, na wszystko gotowi. - - - Wchłaniamy łapczywie wielkimi kęsami, - Łykamy alkohol aż warczy nam w grdykach, - Bekniemy czasami, pierdniemy czasami, - Aż z ław w ciepło wzbija się woń wędrownika - I płynie pod ściany miejscowych jak ręka - Co mówi - przestańcie się lękać, - - Co mówi - przestańcie się lękać. - - - - Śpiewamy piosenki o drodze i pracy, - O braku pieniędzy i braku miłości, - Podnoszą się ze snu miejscowi pijacy, - Słuchają oczami rozumnej przeszłości, - Ktoś wstanie, podejdzie, zapyta, kto my. - -- My dzieci wolności, bezdomne my psy. - - - Przysiądą się stawiać i pytać nieśmiale, - Gdzie dobrze, gdzie lepiej, a gdzie pieniądz rośnie - I plączą się cienie pod niską powałą, - I coraz jest ciaśniej i duszniej, i głośniej, - Bo oto włóczędzy z przeszłością swą mroczną - Dla ludu się stają wyrocznią, - - Dla ludu się stają wyrocznią. - - - - Mówimy o wojnach w dalekich krainach, - Zmyślamy bogactwa zdobyte, stracone, - Słuchają jak mszy, dolewają nam wina - I dziewki przysiądą się też, ośmielone, - Do ognia dorzuci przebiegły gospodarz: - Noc długa korzyści mu doda. - - - Rozgrzani, snujemy niezwykłą opowieść, - Zazdroszcząc im tego, że tacy ciekawi, - Choć mają, co każdy tak chciałby mieć człowiek, - A za byle co już gotowi zastawić, - By włóczyć się, szukać i błądzić jak my - I żyć bez wytchnienia, bez nocy i dni, - - I żyć bez wytchnienia, bez nocy i dni. - - - - Pijemy i każdy już ma coś na oku -- - Ten nocleg w piekarni, ten pannę piersiastą, - Świt znajdzie nas znowu za miastem na stoku, - Gdzie nikt tak naprawdę nic nie ma na własność, - A wam pozostanie piosenka i sny: - -- My dzieci wolności, bezdomne my psy... - Dzieci wolności... - - Dzieci wolności, psy... - - - - - - - - - - - - - Wojna postu z karnawałem - Poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/wtakacisze.xml b/songs/wtakacisze.xml deleted file mode 100644 index 3b21c53c..00000000 --- a/songs/wtakacisze.xml +++ /dev/null @@ -1,64 +0,0 @@ - - - - - Nie ma kategorii disco?! Ale przynajmniej ma znośny refren. - - - - - - - Nie o uśmiech mi chodzi, choć się śmiałaś nie raz, - Ale o to, co kiedyś pojawiło się w nas, - Coś, co przyszło tak nagle i przeszło jak wiatr, - Czego właśnie najbardziej mi brak. - - - Przychodziłem co wieczór, by posłuchać Twych płyt, - O miłości w ogóle nie mówiliśmy nic. - Wyjechałaś tak nagle i cichutko jak mysz, - Zostawiłaś swój adres i list. - - - - W taką, w taką ciszę - Wszystkie gwiazdy na niebie policzę, - Ciebie, Ciebie wołam, - Chociaż cisza i pustka dookoła. - - - - Jesteś moim aniołem i miłością bez dna, - Jesteś moją boginią, którą widzę co dnia, - Jakże długo mam czekać, jak prosić Cię mam, - Każesz trwać w niepewności, więc trwam. - - - - Choć dostaję twe listy, zdjęć parę mam, - Żyję jak grzeszny anioł w tłumie ludzi, lecz sam. - Jeszcze tli się nadzieja, że spotkamy się znów, - Do księżyca się śmiejąc, przywołuję Cię wróć. - - - - - - - - - - Inna - - - - chord positioning - - - Michał Korch - - Nie znalazłem autorów... Może się nie przyznają... - - - diff --git a/songs/zaciagnijcie_na_oknie_niebieska_zaslone.xml b/songs/zaciagnijcie_na_oknie_niebieska_zaslone.xml deleted file mode 100644 index abe84a20..00000000 --- a/songs/zaciagnijcie_na_oknie_niebieska_zaslone.xml +++ /dev/null @@ -1,73 +0,0 @@ - - - - Bułat Okudżawa - - Bułat Okudżawa - Bułat Okudżawa - Jerzy Czech - *** [Opustitie pożałusta sinije sztory] - - - Zaciągnijcie na oknie niebieską zasłonę, - Siostro, leki stąd weź, niepotrzebne mi są. - Wiara, Nadzieja, Miłość, poznaję -- to one, - Moje trzy wierzycielki odwiedzić mnie chcą. - - - Krótki pobyt na ziemi opłacić przystoi, - Ale pustą sakiewkę dziś mam, jak na złość... - -- Nie zamartwiaj się, nie smuć, o Wiaro, Ty moja, - Pewnie jeszcze dłużników zostalo Ci dość. - - - Resztką sił się obrócę do drugiej z kolei, - By w ramionach jej ukryć skruszoną swą twarz: - -- Nie zamartwiaj się, nie smuć, o matko Nadziejo, - Nie jednego wszak syna na ziemi tu masz! - - - A gdy usta przycisnę do dłoni tej trzeciej, - Słyszę jaką czułością głos cichy jej drga: - -- Nie zamartwiaj się, nie smuć, ja sama się przecież - Zamiast ciebie musiałam roztrwonić do cna. - - - -- Czyjekolwiek cię w życiu ramiona tuliły, - Jakikolwiek nieziemski ogarnąłby żar, - Dług twój ludzkie oszczerstwa w trójnasób spłaciły, - Więc oczyszczam cię z win i uwalniam od kar. - - - Leżę czysty jak łza w pierwszym świtu przypływie, - Biała flaga pościeli powita mdły brzask. - - Trzy sędziny, trzy matki, trzy siostry cierpliwe - Otwierają mi kredyt ostatni już raz. - - - - - - - - - - - - - - poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - diff --git a/songs/zalzabulatemo.xml b/songs/zalzabulatemo.xml deleted file mode 100644 index 858f6363..00000000 --- a/songs/zalzabulatemo.xml +++ /dev/null @@ -1,66 +0,0 @@ - - - - Andrzej Sikorowski - - Andrzej Sikorowski - Pod Budą - - - - - - - - Zawsze śpiewał po cichu bez złości - chociaż czasy leciutkie nie były - bo w balladzie im więcej miłości więcej sy - Zawsze śpiewał po cichu bez złości - chociaż statek już walił o dno - i dlatego na zawsze zagościł w moim domu Pan Bułat 0. - - - To jest żal za Panem Bułatem czyli żal za minioną młodością - kiedy jego marzenia skrzydlate pozwalały się łudzić wolnością - To jest żal za Bułatem 0., pierwszą wódką i pierwszą kobietą - kiedy z trudem do przodu się szło ale czasem wierzono poetom - - - - Dziś podoba się inna piosenka - dzisiaj inne potrzeby są w tłumach - i dlatego fałszuje panienka o koniku hop siup na biegunach - A ja zawsze już będę się spierał - z wielkim Panem co twarzy ma sto - że nam kogoś takiego zabiera jak Pan Bułat "gospodin O" - - - - To jest żal za Bułatem 0. pierwszą wódką i pierwszą kobietą - kiedy z trudem do przodu się szło ale czasem wierzono poetom - - - - - - - - - - - - żal za - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/songs/ze_szczytu_schodow.xml b/songs/ze_szczytu_schodow.xml deleted file mode 100644 index 52c7cc92..00000000 --- a/songs/ze_szczytu_schodow.xml +++ /dev/null @@ -1,113 +0,0 @@ - - - - Zbigniew Herbert - Melodia 5. zwr. zaczerpnięta z Murów, a 7. i 8. z Pieśni gruzińskiej. Metrum zmienne. - Michał Korch - Michał Korch - - - - - Oczywiście - ci którzy stoją na szczycie schodów - oni wiedzą - oni wiedzą wszystko - - - co innego my - sprzątacze placów - zakładnicy lepszej przyszłości - którym ci ze szczytu schodów - ukazują się rzadko - zawsze z palcem na ustach - - - jesteśmy cierpliwi - żony nasze cerują niedzielną koszulę - rozmawiamy o racjach żywności - o piłce nożnej cenie butów - a w sobotę przechylamy głowę w t - i pijemy - - - nie jesteśmy z tych - co zaciskają pięści - potrząsają łańcuchami - mówią i pytają - namawiają do buntu - rozgorączkowani - wciąż mówią i pytają - - - oto ich bajka -- - rzucimy się na schody - i zdobędziemy je szturmem - będą się toczyć po schodach - owy tych którzy stali na szczycie - i wreszcie zobaczymy - co widać z tych wysokości - jaką przyszłość - jaką pustkę - - - nie pragniemy widoku - toczących się głów - wiemy jak łatwo odrastają głowy - i zawsze na szczycie zostaje - jeden albo trzech - a na dole aż czarno od mioteł i łopat - - - czasem nam się marzy - że ci ze szczytu schodów - zejdą nisko - to znaczy do nas - gdy nad gazetą żujemy chleb - i rzekną - - - -- a teraz pomówmy - jak człowiek z człowiekiem - to nie jest prawda co wykrzykują afisze - prawdę nosimy w zaciśniętych ustach - okrutna jest i nazbyt ciężka - więc dźwigamy ją sami - nie jesteśmy szczęśliwi - chętnie zostalibyśmy - tutaj - - - to są oczywiście marzenia - mogą się spełnić - albo nie spełnić - więc dalej - będziemy uprawiali - nasz kwadrat ziemi - nasz kwadrat kamienia - - - z lekką głową - papierosem za uchem - i bez kropli nadziei w sercu - - - - - - - - poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - diff --git a/songs/zrodlo_ii.xml b/songs/zrodlo_ii.xml deleted file mode 100644 index 44b4b9dc..00000000 --- a/songs/zrodlo_ii.xml +++ /dev/null @@ -1,87 +0,0 @@ - - - Rozlewiska - Jacek Kaczmarski - - Jacek Kaczmarski - Jacek Kaczmarski - - - - - Jak daleko od źródeł swoich rzeka odpływa, - Wyrzeźbiwszy własne granice; - Niesie szlam wypłukany z ciemnych głębin i wzywa - Do radości słonecznym odbiciem... - Ale płyną nią szczątki, co na światło nieczułe, - Bo obrosłe ciemnością i mułem. - - - Obojętny brzeg -- płaski, lecz nad wszystko wyniosły, - Rzeki nurt nieuchronnie wyzyska! - Karmi trawy i bagna co z nicości wyrosły, - Więc na nicość niezmiennie nieczułe: - Tak tworzą się z rzek - -- Rozlewiska... - - - Duszny upał się szerzy, w przerażonym powietrzu - Krążą chmury żarłocznych owadów; - Nie odnaleźć tu brzegów, ni obszarów nie zmierzyć - Ani wdychać oparów rozkładu! - Ani wody źródlanej nie odnaleźć czystości, - Ani głębi, ni głębokości! - - - Gdzie jest cel tych taplawisk, co choć dążą do morza, - Roztapiają się wciąż w grzęzawiska? - Nurt się pławi w kałużach, bagno -- bagnem odciska, - Niemożliwe -- ni powódź, ni pożar... - Tak tworzą się z rzek - -- Rozlewiska... - - - Żeby rzekę odszukać -- trzeba w niej się zanurzyć - Dać okleić się tym, co nią płynie; - W dno muliste się wpatrzyć, gdzie się prąd po nim struży, - Bo -- co na dnie -- nigdy nie zginie! - Ale rzeka, to tylko źródła płynne jest ciało, - A gdzie dusza? Gdzie źródło zostało? - - - W źródle siła i trwanie, ukojenie pragnienia, - Dźwięk daleki a przecież jedyny! - Więc za dźwiękiem, pod prąd rzeki mętnej, zgubionej - Trzeba czołgać się, pełznąć i płynąć, - Bo tylko się źródło nie zmienia. - Bije wodą przeczystą, - Z głębi ziemi zrodzoną - I żyje wciąż wbrew - Rozlewiskom... - - - - - - - - - - - - Głupi Jasio - poezja śpiewana - - - - - chord positioning - - - Michał Korch - - - - - Źródło - diff --git a/songs/zuzanna.xml b/songs/zuzanna.xml deleted file mode 100644 index 4215b6b3..00000000 --- a/songs/zuzanna.xml +++ /dev/null @@ -1,67 +0,0 @@ - - - - Leonard Cohen - - Leonard Cohen - Leonard Cohen - Maciej Zembaty - Susanne - - - W swe miejsce nad rzeką zabiera cię Zuzanna, - Możesz słuchać plusku łodzi, możesz zostać z nią do rana. - Wiesz, że trochę źle ma w głowie -- lecz dlatego chcesz być tutaj, - Proponuje ci herbatę oraz chińskie pomarańcze - I gdy właśnie chcesz powiedzieć, że nie możesz jej pokochać, - Zmienia twoją długość fali i pozwala mówić rzece, że się zawsze w niej kochałeś. - I już chcesz z nią powędrować, powędrować chcesz na oślep, - Wiesz, że ona ci zaufa, bowiem ciała jej dotknąłeś myślą swą. - - - Pan Jezus był żeglarzem, gdy przechadzał się po wodzie, - Spędził lata na czuwaniu w swej samotnej wieży z drewna, - Gdy upewnił się, że tylko mogą widzieć go tonący, - Rzekł -- Żeglować będą ludzie aż ich morze wyswobodzi... - Lecz zwątpił zanim jeszcze otworzyły się niebiosa, - Zdradzony, niemal ludzki, jak kamień zapadł wtedy w mądrość swą. - I już chcesz z nim powędrować, powędrować chcesz na oślep, - Myślisz -- chyba mu zaufam, bowiem dotknął twego ciała myślą swą. - - - Dziś Zuzanna za rękę prowadzi cię nad rzekę, - Cała w piórach i w łachmanach z jakiejś Akcji Dobroczynnej, - Słońce kapie złotym miodem na Madonnę tej Przystani, - Są tu dzieci o poranku, bohaterzy w wodorostach, - Wszyscy dążą do miłości i podążać będą zawsze, - Gdy Zuzanna trzyma lustro. - I już chcesz z nią powędrować, powędrować chcesz na oślep, - Wiesz, że można jej zaufać, bo dotknęła twego ciała myślą swą. - - - - - - - - - - Songs of Leonard Cohen - poezja śpiewana - - - - - - - - chord positioning - - - Michał Korch - - - - - - diff --git a/src/epub/create_epub.py b/src/epub/create_epub.py new file mode 100644 index 00000000..ce52df41 --- /dev/null +++ b/src/epub/create_epub.py @@ -0,0 +1,326 @@ +import os +import zipfile +import copy +import sys + +from lxml import etree +import shutil +from zipfile import ZipFile +from datetime import datetime + +import src.html.create_songs_html as cash +import src.lib.songbook as sb +import src.lib.any_index_generator as aig + +def actual_date(): + return str(datetime.now().strftime("%Y-%m-%d")) + +def actual_datetime(): + return str(datetime.now().strftime("%Y-%m-%d %H:%M")) + +NO_NAV_LIMIT = 19 + +# +# def name_of_file(song): +# return os.path.splitext(os.path.split(song)[1])[0] + +CSS_FILES = ["song.css", "common.css", "song_common.css", "index.css"] + +def create_content_opf(songbook, list_of_songs_meta, target_dir, pre_files=[], post_files=[]): + tmp_path =os.path.join(sb.repo_dir(), "src", "epub", "templates", "content.opf") + out_path = os.path.join(target_dir, "epub", "OEBPS", "content.opf") + tree = etree.parse(tmp_path) + root = tree.getroot() + + manifest = root.getchildren()[1] + spine = root.getchildren()[2] + p = 1 + + all_files = pre_files + [x.base_file_name() + '.xhtml' for x in list_of_songs_meta if not x.is_alias() ] + post_files + + for f in all_files: + x = etree.SubElement(manifest, "item") + x.attrib['id'] = 'p' + str(p) + x.attrib['href'] = f + x.attrib['media-type'] = "application/xhtml+xml" + etree.SubElement(spine, "itemref").attrib['idref'] = 'p' + str(p) + p = p + 1 + + et = etree.ElementTree(root) + et.write(out_path, doctype='', pretty_print=True, method='xml', encoding='utf-8', xml_declaration=True) + resolveTemplate(songbook, out_path, out_path) + +def groupName(title): + if title[0]>='0' and title[0]<='9': + return "0..9" + return title[0].upper() + +def create_toc_ncx(list_of_songs_meta, target_dir): + tmp_path = 'templates/toc.ncx' + out_path = os.path.join(target_dir, "epub", "OEBPS", "toc.ncx") + tree = etree.parse(tmp_path) + root = tree.getroot() + doctitle = root.getchildren()[1] + text1 = doctitle.getchildren()[0] + text1.text += actual_date() + navmap = root.getchildren()[2] + + parent = navmap + last_letter='' + playOrder=1 + for i in range(len(list_of_songs_meta)): + if len(list_of_songs_meta) > NO_NAV_LIMIT and last_letter != groupName(list_of_songs_meta[i].title()): + last_letter = groupName(list_of_songs_meta[i].title()) + parent_np = etree.SubElement(navmap, "navPoint") + parent_np.attrib['id'] = 'p' + str(playOrder) + parent_np.attrib['playOrder'] = str(playOrder) + playOrder = playOrder + 1 + parent_nl = etree.SubElement(parent_np, "navLabel") + parent_text = etree.SubElement(parent_nl, "text") + parent_text.text = last_letter + content = etree.SubElement(parent_np, "content") + content.attrib['src'] = name_of_file(list_of_songs_meta[i].plik) + '.xhtml#title' + parent = parent_np + + navpoint = etree.SubElement(parent, "navPoint") + navpoint.attrib['id'] = 'p' + str(playOrder) + navpoint.attrib['playOrder'] = str(playOrder) + playOrder = playOrder + 1 + navlabel = etree.SubElement(navpoint, "navLabel") + text = etree.SubElement(navlabel, "text") + text.text = list_of_songs_meta[i].title() + content = etree.SubElement(navpoint, "content") + content.attrib['src'] = name_of_file(list_of_songs_meta[i].plik) + '.xhtml' + et = etree.ElementTree(root) + et.write(out_path, doctype='', pretty_print=True, method='xml', encoding='utf-8', xml_declaration=True) + +class SongInToc: + def __init__(self, song): + self.song = song + + def plik(self): + return self.song.plik + + def title(self): + return self.song.effectiveTitle() + + def base_file_name(self): + return self.song.base_file_name() + +def extract_toc_songs(list_of_songs_meta): + d = dict() + group = None + last_letter = None + for i in range(len(list_of_songs_meta)): + if len(list_of_songs_meta) > NO_NAV_LIMIT and last_letter != groupName(list_of_songs_meta[i].effectiveTitle()): + group = groupName(list_of_songs_meta[i].effectiveTitle()) + if not group in d: + d[group] = [] + d[group].append(SongInToc(list_of_songs_meta[i])) + return d + +def toc_songs_to_xhtml(parent, toc_songs_list): + for i in range(len(toc_songs_list)): + s = toc_songs_list[i] + li = etree.SubElement(parent, "li") + a = etree.SubElement(li, "a") + a.attrib['href'] = s.base_file_name()+ '.xhtml' + a.text = s.title() + +def create_group_toc_xhtml(group, toc_songs_list, target_dir, page_suffix = None): + tmp_path = os.path.join(sb.repo_dir(), "src", "epub", "templates", "toc_letter.xhtml") + file_name = "toc_"+group+".xhtml" + out_path = os.path.join(target_dir, "epub", "OEBPS", file_name) + tree = etree.parse(tmp_path) + root = tree.getroot() + body = root.getchildren()[1] + nav = body.getchildren()[0] + h1 = nav.getchildren()[0] + h1.text = group + toc_ol = nav.getchildren()[1] + + toc_songs_to_xhtml(toc_ol, toc_songs_list) + et = etree.ElementTree(root) + if page_suffix is not None: + body.append(copy.deepcopy(page_suffix)) + et.write(out_path, doctype='', pretty_print=True, method='xml', encoding='utf-8', xml_declaration=True) + return file_name + +def create_index_toc_xhtml(target_dir, page_suffix = None): + """ + Creates a new .index.xhtml file in the given file that contains given body (page_suffix). + + :param target_dir: + :param page_suffix: + :return: + """ + tmp_path = os.path.join(sb.repo_dir(), "src", "epub", "templates", "index.xhtml") + file_name = "index.xhtml" + out_path = os.path.join(target_dir, "epub", "OEBPS", file_name) + tree = etree.parse(tmp_path) + root = tree.getroot() + body = root.getchildren()[1] + et = etree.ElementTree(root) + if page_suffix is not None: + body.append(copy.deepcopy(page_suffix)) + et.write(out_path, doctype='', pretty_print=True, method='xml', encoding='utf-8', xml_declaration=True) + return file_name + +def create_toc_xhtml(list_of_songs_meta, target_dir, page_suffix): + files = [] + tmp_path = os.path.join(sb.repo_dir(), "src", "epub", "templates", "toc.xhtml") + out_path = os.path.join(target_dir, "epub", "OEBPS", "toc.xhtml") + tree = etree.parse(tmp_path) + root = tree.getroot() + body = root.getchildren()[1] + nav = body.getchildren()[0] + toc_ol = nav.getchildren()[1] + + files.append(create_index_toc_xhtml(target_dir, page_suffix)) + + toc_songs = extract_toc_songs(list_of_songs_meta) + + li = etree.SubElement(toc_ol, "li") + a = etree.SubElement(li, "a") + a.attrib['href'] = 'songs.xhtml' + a.text ="Piosenki" + + li = etree.SubElement(toc_ol, "li") + a = etree.SubElement(li, "a") + a.attrib['href'] = 'index.xhtml' + a.text ="Spis piosenek" + + for group in toc_songs: + if group: + parent_li = etree.SubElement(toc_ol, "li") + parent_a = etree.SubElement(parent_li, "a", attrib={"href": "toc_" + group + ".xhtml"}) + parent_a.text = group + + # Comment if you want songs for each letter + if False: + parent_ol = etree.SubElement(parent_li, "ol") + toc_songs_to_xhtml(parent_ol, toc_songs[group]) + + files.append(create_group_toc_xhtml(group, toc_songs[group], target_dir, page_suffix)) + else: + toc_songs_to_xhtml(toc_ol, toc_songs[group]) + + li = etree.SubElement(toc_ol, "li") + a = etree.SubElement(li, "a") + a.attrib['href'] = '_artists.xhtml' + a.text ="Wykonawcy" + + li = etree.SubElement(toc_ol, "li") + a = etree.SubElement(li, "a") + a.attrib['href'] = '_genres.xhtml' + a.text ="Gatunki" + + et = etree.ElementTree(root) + et.write(out_path, pretty_print=True, method='xml', encoding='utf-8', xml_declaration=True) + cash.replace_in_file(out_path, out_path, lambda s: s.replace("
  • ","
  • \n\t\t
  • ").replace(">
      ",">\n
        ")) + return files + +def resolveTemplate(songbook, from_file, to_file): + return cash.replace_in_file(from_file, to_file, + lambda s: (s.replace(":date:", actual_date()) + .replace(":datetime:", actual_datetime()) + .replace(":title:", songbook.title()) + .replace(":subtitle:", songbook.subtitle()) + .replace(":id:", songbook.id()) + .replace(":uuid:", songbook.uuid()) + .replace(":url:", songbook.url()) + .replace(":publisher:", songbook.publisher()) + .replace(":timestamp:", datetime.now().strftime("%Y-%m-%dT%H:%M:%SZ")) + .replace(":imageMime:", songbook.imageWebMime()) + .replace(":imageExt:", songbook.imageWebExt()))) + + +def create_template_epub(songbook, target_path): + path_epub = os.path.join(target_path, "epub") + if os.path.exists(path_epub): + shutil.rmtree(path_epub) + path_meta = os.path.join(path_epub, "META-INF") + path_oebps = os.path.join(path_epub, "OEBPS") + path_css = os.path.join(path_oebps, "CSS") + path_images = os.path.join(path_oebps, "images") + os.mkdir(path_epub) + os.mkdir(path_oebps) + os.mkdir(path_meta) + os.mkdir(path_css) + os.mkdir(path_images) + template_dir = os.path.join(sb.repo_dir(), "src", "epub", "templates") + path_tmp_meta = os.path.join(template_dir, "container.xml") + resolveTemplate(songbook, path_tmp_meta, os.path.join(path_meta, "container.xml")) + + for css_file in CSS_FILES: + path_tmp_css = os.path.join(template_dir, css_file) + print("Linking CSS file: " + path_tmp_css + " to " + os.path.join(path_css, css_file)) + os.symlink(path_tmp_css, os.path.join(path_css, css_file)) + + + path_tmp_mimetype = os.path.join(template_dir, "mimetype") + shutil.copyfile(path_tmp_mimetype, os.path.join(path_epub, "mimetype")) + + shutil.copyfile(songbook.imageWebPath(), os.path.join(path_images, "cover." + songbook.imageWebExt())) + resolveTemplate(songbook, os.path.join(template_dir, "songs.xhtml"), os.path.join(path_oebps, "songs.xhtml")) + resolveTemplate(songbook, os.path.join(template_dir, "cover.xhtml"), os.path.join(path_oebps, "cover.xhtml")) + + +def create_full_epub(songbook, target_dir): + los = songbook.list_of_songs() + toc_songs = extract_toc_songs(los) + suffix = etree.Element("div", attrib={"id":"letters", "class": "letters"}) + for group in toc_songs: + if group: + a=etree.SubElement(suffix, "a") + a.attrib["href"] = "toc_" + group + ".xhtml" + a.text=group + a.tail=" " + + create_template_epub(songbook, target_dir) + path_out = os.path.join(target_dir, "epub", "OEBPS") + cash.create_all_songs_html(los, path_out, suffix) + files = [] + files.extend(create_toc_xhtml(los, target_dir, page_suffix = suffix)) + + artists = os.path.join(path_out, "_artists.xhtml") + aig.makeIndex("Wykonawcy", songbook.list_of_songs(), artists, lambda x:x.artist() if not x.is_alias() else None ) + files.append("_artists.xhtml") + + genres = os.path.join(path_out, "_genres.xhtml") + aig.makeIndex("Gatunki", songbook.list_of_songs(), genres, lambda x:x.genre() if not x.is_alias() else None) + files.append("_genres.xhtml") + + create_content_opf(songbook, los, target_dir, post_files=files) + + +def package_epub(songbook, target_dir, target_file="spiewnik.epub"): + target_dir_epub = os.path.join(target_dir, "epub") + with ZipFile(os.path.join(target_dir, target_file), 'w', compression=zipfile.ZIP_DEFLATED) as myzip: + myzip.write(os.path.join(target_dir_epub, "mimetype"), arcname="mimetype", compress_type=zipfile.ZIP_STORED) + myzip.write(os.path.join(target_dir_epub, "META-INF", "container.xml"), + arcname=os.path.join("META-INF", "container.xml")) + file_list = os.listdir(os.path.join(target_dir_epub, "OEBPS")) + for file in file_list: + if file != 'CSS': + src_path = os.path.realpath(os.path.join(target_dir_epub, "OEBPS", file)) + myzip.write(src_path, arcname=os.path.join("OEBPS", file)) + for css_file in CSS_FILES: + src_path = os.path.realpath(os.path.join(target_dir_epub, "OEBPS", "CSS", css_file)) + myzip.write(src_path, arcname=os.path.join("OEBPS", "CSS", css_file)) + myzip.write(os.path.join(target_dir_epub, "OEBPS", "images", "cover."+songbook.imageWebExt()), + arcname=os.path.join("OEBPS", "images", "cover."+songbook.imageWebExt())) + + +def main(): + target_dir = os.path.join(sb.repo_dir(), "build") # gdzie ma utworzyć epub + songbook_file = os.path.join(sb.repo_dir(), "songbooks/default.songbook.yaml") if len(sys.argv) == 1 else sys.argv[1] + songbook = sb.load_songbook_spec_from_yaml(songbook_file) + + # które piosenki chcę zawrzeć w śpiewniku (może być katalogiem z plikami xml lub listą plików) + create_full_epub(songbook, target_dir) + package_epub(songbook, target_dir, target_file=songbook.id()+".epub") + + +if __name__ == "__main__": + main() diff --git a/src/epub/templates/common.css b/src/epub/templates/common.css new file mode 100644 index 00000000..7cc7424c --- /dev/null +++ b/src/epub/templates/common.css @@ -0,0 +1,13 @@ +div.letters { + margin-top: 1em; + line-height: 5ex; + max-width: 35em; + text-align: center; +} + +div.letters a { + font-weight: bold; + font-size: x-large; + padding-left: 0.3em; + padding-right: 0.3em; +} \ No newline at end of file diff --git a/src/epub/templates/container.xml b/src/epub/templates/container.xml new file mode 100755 index 00000000..b89e315e --- /dev/null +++ b/src/epub/templates/container.xml @@ -0,0 +1,6 @@ + + + + + + diff --git a/src/epub/templates/content.opf b/src/epub/templates/content.opf new file mode 100755 index 00000000..cda117f5 --- /dev/null +++ b/src/epub/templates/content.opf @@ -0,0 +1,42 @@ + + + + + :title: :subtitle: + + :publisher: + :id: + uuid::uuid: + edt + main + :timestamp: + + en + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/epub/templates/cover.xhtml b/src/epub/templates/cover.xhtml new file mode 100644 index 00000000..ed705c47 --- /dev/null +++ b/src/epub/templates/cover.xhtml @@ -0,0 +1,16 @@ + + + + + :title: + + + +

        :title:

        +

        :subtitle:

        +

        :datetime:

        + +
        + :url: + + \ No newline at end of file diff --git a/src/epub/templates/index.css b/src/epub/templates/index.css new file mode 100755 index 00000000..d27a3162 --- /dev/null +++ b/src/epub/templates/index.css @@ -0,0 +1 @@ +@import url('common.css'); \ No newline at end of file diff --git a/src/epub/templates/index.xhtml b/src/epub/templates/index.xhtml new file mode 100755 index 00000000..47760d7c --- /dev/null +++ b/src/epub/templates/index.xhtml @@ -0,0 +1,11 @@ + + + + + Index + + + +

        Index

        + + diff --git a/src/epub/templates/mimetype b/src/epub/templates/mimetype new file mode 100755 index 00000000..57ef03f2 --- /dev/null +++ b/src/epub/templates/mimetype @@ -0,0 +1 @@ +application/epub+zip \ No newline at end of file diff --git a/src/epub/templates/song.css b/src/epub/templates/song.css new file mode 100644 index 00000000..2eec300f --- /dev/null +++ b/src/epub/templates/song.css @@ -0,0 +1,6 @@ +@import url('song_common.css'); + +h1 { + margin-top: 0.5em; + margin-bottom: 0.5em; +} \ No newline at end of file diff --git a/src/epub/templates/song_common.css b/src/epub/templates/song_common.css new file mode 120000 index 00000000..fb5f83f9 --- /dev/null +++ b/src/epub/templates/song_common.css @@ -0,0 +1 @@ +../../html/css/song_common.css \ No newline at end of file diff --git a/src/epub/templates/songs.xhtml b/src/epub/templates/songs.xhtml new file mode 100755 index 00000000..7f9550fd --- /dev/null +++ b/src/epub/templates/songs.xhtml @@ -0,0 +1,11 @@ + + + + + Index + + + +

        Piosenki

        + + diff --git a/src/epub/templates/toc.ncx b/src/epub/templates/toc.ncx new file mode 100755 index 00000000..d0488675 --- /dev/null +++ b/src/epub/templates/toc.ncx @@ -0,0 +1,20 @@ + + + + + + + + + + + + Śpiewnik 21WDW Wersja: + + + + + + + + diff --git a/src/epub/templates/toc.xhtml b/src/epub/templates/toc.xhtml new file mode 100755 index 00000000..9119f0d4 --- /dev/null +++ b/src/epub/templates/toc.xhtml @@ -0,0 +1,24 @@ + + + + + Spis piosenek + + + + + + + diff --git a/src/epub/templates/toc_letter.xhtml b/src/epub/templates/toc_letter.xhtml new file mode 100755 index 00000000..13c8435a --- /dev/null +++ b/src/epub/templates/toc_letter.xhtml @@ -0,0 +1,15 @@ + + + + + toc.xhtml + + + + + + diff --git a/src/epub/test/song1.css b/src/epub/test/song1.css new file mode 100644 index 00000000..97ba6617 --- /dev/null +++ b/src/epub/test/song1.css @@ -0,0 +1,10 @@ +span.lyric span.ch { + display: inline-block; + position: relative; + top: -1.4em; + width: 0; +} + +span.lyric span.chord { + font-size: xx-small; +} \ No newline at end of file diff --git a/src/epub/test/song2.css b/src/epub/test/song2.css new file mode 100644 index 00000000..4b915e27 --- /dev/null +++ b/src/epub/test/song2.css @@ -0,0 +1,20 @@ + +span.lyric { + display: inline-flex; + flex-direction: row; + flex-wrap: wrap; + align-items: flex-end; + border: 1px solid green; +} + +span.lyric span.chunk { + display: inline-flex; + border: 1px solid #ff1c23; + flex-direction: column; + flex-wrap: wrap; + white-space: nowrap; +} + +span.lyric span.chord { + font-size: xx-small; +} \ No newline at end of file diff --git a/src/epub/test/song3.css b/src/epub/test/song3.css new file mode 100644 index 00000000..16b98085 --- /dev/null +++ b/src/epub/test/song3.css @@ -0,0 +1,28 @@ +span.lyric { + display: inline-block; +} +/* display: inline-flex;*/ +/* flex-direction: row;*/ +/* flex-wrap: wrap;*/ +/* align-items: flex-end;*/ +/* border: 1px solid green;*/ +/*}*/ + +span.lyric span.chunk { + display: inline-table; + border: 0px solid green; + flex-direction: column; + flex-wrap: wrap; + white-space: nowrap; + vertical-align: bottom; +} + +span.lyric span.chord { + display: table-row; + font-size: xx-small; +} + +span.lyric span.content { + display: table-row; + font-size: xx-small; +} \ No newline at end of file diff --git a/src/epub/test/song4.css b/src/epub/test/song4.css new file mode 100644 index 00000000..60a85df0 --- /dev/null +++ b/src/epub/test/song4.css @@ -0,0 +1,37 @@ + +span.lyric { + display: inline-block; +} +/* display: inline-flex;*/ +/* flex-direction: row;*/ +/* flex-wrap: wrap;*/ +/* align-items: flex-end;*/ +/* border: 1px solid green;*/ +/*}*/ + +span.lyric span.chunk { + /*display: inline-table;*/ + /*border: 0px solid green;*/ + /*flex-direction: column;*/ + /*flex-wrap: wrap;*/ + /*white-space: nowrap;*/ + /*vertical-align: bottom;*/ +} + +span.lyric span.chord { + /*display: table-row;*/ + display: inline-block; + vertical-align: 1.2em; + font-size: xx-small; + border: 1px solid #1EAEDB ; + overflow: visible; + width: 0; + max-width: 0; + /*margin-left: -10px;*/ + /*margin-right: 10px;*/ +} + +span.lyric span.content { + /*display: table-row;*/ + /*font-size: xx-small;*/ +} \ No newline at end of file diff --git a/src/epub/test/test.xhtml b/src/epub/test/test.xhtml new file mode 100644 index 00000000..0c2ae1bc --- /dev/null +++ b/src/epub/test/test.xhtml @@ -0,0 +1,12 @@ + + + + + A my nie chcemy uciekać stąd + + +
        +
        Staanął w ogniu nasz wiGelki dom aG
        +
        + + \ No newline at end of file diff --git a/src/filename_changer.py b/src/filename_changer.py new file mode 100644 index 00000000..7ee42936 --- /dev/null +++ b/src/filename_changer.py @@ -0,0 +1,18 @@ +import os +import unicodedata +import lib.read_song_xml as rsx + +path = "../songs" +songs = os.listdir(path) + +def strip_accents(text): + return ''.join(c for c in unicodedata.normalize('NFKD', text) if unicodedata.category(c) != 'Mn') + + +for file in songs: + song = rsx.parse_song_xml(os.path.join(path, file)) + title = strip_accents(song.title).replace(' ', '_').replace('.', '').replace(',', '') + title = title.replace("Ł","L").replace("ł","l").replace('\'','_').replace('\"', '').replace('__','_') + new_name = title + ".xml" + os.rename(os.path.join(path, file), os.path.join(path, new_name)) + diff --git a/src/fix.sh b/src/fix.sh new file mode 100755 index 00000000..34dd767e --- /dev/null +++ b/src/fix.sh @@ -0,0 +1,22 @@ +#/bin/bash + +# Usage: find ./songs -name "*.xml" | xargs -n 1 ./src/fix.sh +find ./songs -name "*.xml" | xargs -n 1 ./src/fix.sh + + +# This file fixes common misspells +# Normalizations + +sed -i.bak "s|,,Stare Żbiki''|„Stare Żbiki”|g" $1 +sed -i.bak "s|\"Stare Żbiki\"|„Stare Żbiki”|g" $1 +sed -i.bak "s|,,Stare Żbiki''|„Stare Żbiki”|g" $1 +sed -i.bak "s|21. WDH „Stare Żbiki”|21. WDW „Stare Żbiki”|g" $1 + +sed -i.bak "s|Zejman i Garkumpel|Zejman \& Garkumpel|g" $1 +sed -i.bak "s|Trzy dni Tyłem|Trzy Dni Tyłem|g" $1 + +sed -i.bak "s|Aleksander Grotowski, Małgorzata Zwierzchowska|Aleksander Grotowski; Małgorzata Zwierzchowska|g" $1 +sed -i.bak "s|Zespół Reprezentacyjny Programu Trzeciego Polskiego Radia|Zespół Reprezentacyjny|g" $1 +sed -i.bak "s|Przemysław Gintrowski, Jacek Kaczmarski, Zbigniew Łapinski|Przemysław Gintrowski; Jacek Kaczmarski; Zbigniew Łapinski|g" $1 + +rm "$1.bak" \ No newline at end of file diff --git a/src/formats/no-lg.xdy b/src/formats/no-lg.xdy new file mode 100644 index 00000000..83f614fd --- /dev/null +++ b/src/formats/no-lg.xdy @@ -0,0 +1 @@ +(define-letter-groups ("")) \ No newline at end of file diff --git a/src/formats/single_a5_p.tex b/src/formats/single_a5_p.tex deleted file mode 100644 index 716f73fc..00000000 --- a/src/formats/single_a5_p.tex +++ /dev/null @@ -1,33 +0,0 @@ -% STYLE=file -% TARGET=pdf -\documentclass[a5paper,10pt]{extbook} -\usepackage[savemem]{ucs} -\usepackage[utf8]{inputenc} -\usepackage{polski} - -\usepackage{songbook21wdh} -\usepackage{geometry} -\usepackage{fancyhdr} -\usepackage{longtable} -\usepackage{graphicx} -\usepackage{dcolumn} - -\geometry{scale={0.95,0.85},pdftex,top={1cm}} -\addtolength{\headheight}{2pc} - -\setboolean{PrintChordsOn}{true} -\setboolean{PrintChordsBehind}{true} - -\setlength{\parindent}{0pt} - -\renewcommand{\footrulewidth}{0.4pt} -\renewcommand{\chapter}[2]{\newpage\vbox{\LARGE{\bf #2}\\}} - -\pagestyle{fancy} -\fancyfoot[RE,LO]{http://21wdw.staszic.waw.pl/} -\fancyfoot[LE,RO]{\thepage} -\fancyfoot[CE,CO]{} -\fancyhead[RE,LO]{\today} - -\begin{document} - diff --git a/src/formats/single_a5_s.tex b/src/formats/single_a5_s.tex deleted file mode 100644 index 6b47932f..00000000 --- a/src/formats/single_a5_s.tex +++ /dev/null @@ -1 +0,0 @@ -\end{document} diff --git a/src/formats/single_a4_p.tex b/src/formats/single_p.tex similarity index 50% rename from src/formats/single_a4_p.tex rename to src/formats/single_p.tex index 47982c49..45943d59 100644 --- a/src/formats/single_a4_p.tex +++ b/src/formats/single_p.tex @@ -1,8 +1,9 @@ % STYLE=file % TARGET=pdf -\documentclass[a4paper,11pt]{extbook} +\documentclass[:paper:,:fontsize:]{extbook} \usepackage[savemem]{ucs} \usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} \usepackage{polski} \usepackage{songbook21wdh} @@ -11,20 +12,36 @@ \usepackage{longtable} \usepackage{graphicx} \usepackage{dcolumn} +\usepackage[fit]{truncate} +\usepackage{mfirstuc} -\geometry{scale={0.95,0.85},pdftex,top={1cm}} -\addtolength{\headheight}{2pc} + +\renewcommand{\familydefault}{\sfdefault} +\usepackage{helvet} + +\usepackage{index} + +\newindex{wyk}{wadx}{wind}{Indeks wykonawców} +\newindex{aliases}{aadx}{aind}{Indeks tytułów} +\newindex{genre}{gadx}{gind}{Indeks gatunków} + +\geometry{scale={0.95,0.90},pdftex,top={3ex}} +\addtolength{\headheight}{5ex} \setboolean{PrintChordsOn}{true} \setboolean{PrintChordsBehind}{true} +\setboolean{PrintSongNum}{false} \setlength{\parindent}{0pt} +\setlength{\headsep}{10pt} \renewcommand{\footrulewidth}{0.4pt} \renewcommand{\chapter}[2]{\newpage\vbox{\LARGE{\bf #2}\\}} +\newcommand{\theLetter}{} + \pagestyle{fancy} -\fancyfoot[RE,LO]{http://21wdw.staszic.waw.pl/} +\fancyfoot[RE,LO]{http://spiewaj.com/} \fancyfoot[LE,RO]{\thepage} \fancyfoot[CE,CO]{} \fancyhead[RE,LO]{\today} diff --git a/src/formats/single_a4_s.tex b/src/formats/single_s.tex similarity index 100% rename from src/formats/single_a4_s.tex rename to src/formats/single_s.tex diff --git a/src/formats/songbook_a4_p.tex b/src/formats/songbook_a4_p.tex deleted file mode 100644 index b6837ba9..00000000 --- a/src/formats/songbook_a4_p.tex +++ /dev/null @@ -1,55 +0,0 @@ -% STYLE=file -% TARGET=pdf -\documentclass[a4paper,11pt]{extbook} -\usepackage[savemem]{ucs} -\usepackage[utf8]{inputenc} -\usepackage{polski} - -\usepackage{songbook21wdh} -\usepackage{geometry} -\usepackage{fancyhdr} -\usepackage{longtable} -\usepackage{graphicx} -\usepackage{dcolumn} - -%\geometry{scale={0.90,0.80},pdftex} \addtolength{\headheight}{2pc} -\geometry{scale={0.95,0.85},pdftex,top={1cm}} -\addtolength{\headheight}{2pc} - -\setboolean{PrintChordsOn}{true} -\setboolean{PrintChordsBehind}{true} - -\setlength{\parindent}{0pt} - -\renewcommand{\footrulewidth}{0.4pt} -\renewcommand{\chapter}[2]{\newpage\vbox{\LARGE{\bf #2}\\}} - -\pagestyle{fancy} -\fancyfoot[RE,LO]{http://21wdw.staszic.waw.pl/} -\fancyfoot[LE,RO]{\thepage} -\fancyfoot[CE,CO]{} -\fancyhead[RE,LO]{\today} - -\begin{document} - -\thispagestyle{empty} -\begin{center} -\vspace*{\stretch{4}} -{\Huge\verb|:title:|} -\vspace{\stretch{1}} - -\large - -\vspace{\stretch{7}} -\includegraphics[height=5 cm]{znak21.pdf} -\vspace{\stretch{7}} - -21. Warszawska Drużyna Harcerska ,,Stare Żbiki''\\ -im. gen. Ignacego Prądzyńskiego - -\vspace{\stretch{1}} -Warszawa, \today -\vspace*{\stretch{4}} -\end{center} - -\cleardoublepage \ No newline at end of file diff --git a/src/formats/songbook_a4_s.tex b/src/formats/songbook_a4_s.tex deleted file mode 100644 index 87e3f0b0..00000000 --- a/src/formats/songbook_a4_s.tex +++ /dev/null @@ -1,5 +0,0 @@ -\newpage -\fancyhead[LE]{SPIS TREśCI} -\fancyhead[RO]{SPIS TREśCI} -\tableofcontents -\end{document} diff --git a/src/formats/songbook_a5_p.tex b/src/formats/songbook_a5_p.tex deleted file mode 100644 index e7ae8112..00000000 --- a/src/formats/songbook_a5_p.tex +++ /dev/null @@ -1,55 +0,0 @@ -% STYLE=file -% TARGET=pdf -\documentclass[a5paper,10pt]{extbook} -\usepackage[savemem]{ucs} -\usepackage[utf8]{inputenc} -\usepackage{polski} - -\usepackage{songbook21wdh} -\usepackage{geometry} -\usepackage{fancyhdr} -\usepackage{longtable} -\usepackage{graphicx} -\usepackage{dcolumn} - -%\geometry{scale={0.90,0.80},pdftex} \addtolength{\headheight}{2pc} -\geometry{scale={0.95,0.85},pdftex,top={1cm}} -\addtolength{\headheight}{2pc} - -\setboolean{PrintChordsOn}{true} -\setboolean{PrintChordsBehind}{true} - -\setlength{\parindent}{0pt} - -\renewcommand{\footrulewidth}{0.4pt} -\renewcommand{\chapter}[2]{\newpage\vbox{\LARGE{\bf #2}\\}} - -\pagestyle{fancy} -\fancyfoot[RE,LO]{http://21wdw.staszic.waw.pl/} -\fancyfoot[LE,RO]{\thepage} -\fancyfoot[CE,CO]{} -\fancyhead[RE,LO]{\today} - -\begin{document} - -\thispagestyle{empty} -\begin{center} -\vspace*{\stretch{4}} -{\Huge\verb|:title:|} -\vspace{\stretch{1}} - -\large - -\vspace{\stretch{7}} -\includegraphics[height=5 cm]{znak21.pdf} -\vspace{\stretch{7}} - -21. Warszawska Drużyna Harcerska ,,Stare Żbiki''\\ -im. gen. Ignacego Prądzyńskiego - -\vspace{\stretch{1}} -Warszawa, \today -\vspace*{\stretch{4}} -\end{center} - -\cleardoublepage \ No newline at end of file diff --git a/src/formats/songbook_a5_s.tex b/src/formats/songbook_a5_s.tex deleted file mode 100644 index 87e3f0b0..00000000 --- a/src/formats/songbook_a5_s.tex +++ /dev/null @@ -1,5 +0,0 @@ -\newpage -\fancyhead[LE]{SPIS TREśCI} -\fancyhead[RO]{SPIS TREśCI} -\tableofcontents -\end{document} diff --git a/src/formats/songbook_p.tex b/src/formats/songbook_p.tex new file mode 100644 index 00000000..59edb1ab --- /dev/null +++ b/src/formats/songbook_p.tex @@ -0,0 +1,104 @@ +% STYLE=file +% TARGET=pdf +\documentclass[:paper:,:fontsize:]{extbook} +\usepackage[savemem]{ucs} +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{polski} + +\usepackage{songbook21wdh} +\usepackage{geometry} +\usepackage{fancyhdr} +\usepackage{longtable} +\usepackage{graphicx} +\usepackage{dcolumn} +\usepackage{qrcode} +%\usepackage{index} + +\usepackage[xindy,noautomatic]{imakeidx} +%\usepackage[xindy, splitindex]{imakeidx} + +\usepackage{mfirstuc} +\usepackage[fit]{truncate} + +%\newindex{wyk}{wadx}{wind}{Wykonawcy} +%\newindex{aliases}{aadx}{aind}{Piosenki} +%\newindex{genre}{gadx}{gind}{Gatunki} + +\newcommand{\xindylangopt}{-M lang/polish/utf8-lang} +%\makeindex[options=\xindylangopt] +\makeindex[name=wyk,title = Wykonawcy, options=\xindylangopt] +\makeindex[name=aliases, title = Piosenki, options=\xindylangopt] +\makeindex[name=genre,title = Gatunki, options=\xindylangopt] + +%\makeindex[name=wyk,title = Wykonawcy] +%\makeindex[name=aliases,title = Piosenki] +%\makeindex[name=genre,title = Gatunki] + +\usepackage{hyperref} +\hypersetup{ + colorlinks, + citecolor=black, + filecolor=black, + linkcolor=black, + urlcolor=black +} + +\renewcommand{\familydefault}{\sfdefault} +\usepackage{helvet} + + +\geometry{scale={0.95,0.90},pdftex,top={3ex}} +\addtolength{\headheight}{5ex} + +\setboolean{PrintChordsOn}{true} +\setboolean{PrintChordsBehind}{true} +\setboolean{PrintSongNum}{true} + +\setlength{\parindent}{0pt} +\setlength{\headsep}{10pt} + +\newcommand{\theLetter}{} + +\renewcommand{\footrulewidth}{0.4pt} +\renewcommand{\chapter}[2]{\newpage\vbox{\LARGE{\bf #2}\\}} + +\pagestyle{fancy} +\fancyfoot[RE,LO]{:url:} +\fancyfoot[RO]{\thepage{} \textbf{\theLetter}} +\fancyfoot[LE]{\textbf{\theLetter} \thepage{}} +\fancyfoot[CE,CO]{} +\fancyhead[RE,LO]{\today} + +\pagenumbering{roman} + +\begin{document} + +\thispagestyle{empty} +\begin{center} +\vspace*{\stretch{4}} +{\Huge\verb|:title:|} +\vskip 1em +{\large\verb|:subtitle:|} +\vspace{\stretch{1}} + +\large + +\vspace{\stretch{7}} +\includegraphics[height=5 cm]{:imagePdfPath:} +\vspace{\stretch{7}} + +:publisher: + +\vspace{\stretch{1}} +:place:\today +\vspace*{\stretch{4}} +\end{center} +\vfill +\rightline{\qrcode{:url:}} + +\cleardoublepage +\printindex[aliases] +\cleardoublepage + +\pagenumbering{arabic} \ No newline at end of file diff --git a/src/formats/songbook_s.tex b/src/formats/songbook_s.tex new file mode 100644 index 00000000..15ea3a53 --- /dev/null +++ b/src/formats/songbook_s.tex @@ -0,0 +1,8 @@ +\newpage +\fancyhead[LE]{SPIS TREŚCI} +\fancyhead[RO]{SPIS TREŚCI} +\tableofcontents + +\printindex[wyk] +\printindex[genre] +\end{document} diff --git a/src/html/create_songs_html.py b/src/html/create_songs_html.py new file mode 100644 index 00000000..3df96f61 --- /dev/null +++ b/src/html/create_songs_html.py @@ -0,0 +1,238 @@ +# Tworzy piosenki w xhtml +import os +import copy +from lxml import etree +import src.lib.read_song_xml as rsx + + +def _add_chunk(chunk, parent, position): + """class chunk -> html span chunk""" + span_chunk = etree.SubElement(parent, "span", attrib={"class": "chunk"}) + chord = etree.SubElement(span_chunk, "span", attrib={"class": "chord"}) + span_ch = etree.SubElement(chord, "span", attrib={"class": "ch"}) + span_ch.text = chunk.chord + span_content = etree.SubElement(span_chunk, "span", attrib={"class": "content"}) + # Nested spans help with formatting as table. + span_content = etree.SubElement(span_content, "span", attrib={"class": "content-i"}) + if position == 0: + if chunk.content.startswith(' '): + span_content.text = chunk.content + else: + span_content.text = ' ' + chunk.content + else: + span_content.text = chunk.content + + +def _add_lyric(row, parent): + """class lyric -> html span lyric""" + span_lyric = etree.SubElement(parent, "span", attrib={"class": "lyric"}) + for i, chunk in enumerate(row.chunks): + _add_chunk(chunk, span_lyric, i) + + +def _add_chords(row, parent, class_name): + """class chords -> html span ch""" + span_chords = etree.SubElement(parent, "span", attrib={"class": class_name}) + if row.sidechords: + for chunk in row.sidechords.split(" "): + span_ch = etree.SubElement(span_chords, "span", attrib={"class": "ch"}) + span_ch.text = chunk + else: + for chunk in row.chunks: + if len(chunk.chord) > 0: + span_ch = etree.SubElement(span_chords, "span", attrib={"class": "ch"}) + span_ch.text = chunk.chord + + +def _add_bis(row, div_row): + if str(type(row.bis)) == "" and row.bis is True: + span_bis = etree.SubElement(div_row, "span", attrib={"class": "bis_active"}) + span_bis.text = u'\u00a0' + elif str(type(row.bis)) == "": + span_bis = etree.SubElement(div_row, "span", attrib={"class": "bis_active"}) + span_bis.text = 'x' + str(row.bis) + else: + span_unbis = etree.SubElement(div_row, "span", attrib={"class": "bis_inactive"}) + span_unbis.text = u'\u00a0' + + +def _add_row(row, parent): + """class row -> html div row with content""" + if (row.new_chords == 0) or (row.new_chords is False): + chords_over = "over_false" + else: + chords_over = "over_true" + div_row = etree.SubElement(parent, "div", attrib={"class": "row " + chords_over}) + div_row.text = u'\u200d' # Not visible spaces -> forces the row to be generated as a single line. We remove it in post-processing. + _add_chords(row, div_row, "chords") + _add_lyric(row, div_row) + if str(type(row.bis)) == "" and row.bis is True: + span_bis = etree.SubElement(div_row, "span", attrib={"class": "bis_active"}) + span_bis.text = u'\u00a0' + elif str(type(row.bis)) == "": + span_bis = etree.SubElement(div_row, "span", attrib={"class": "bis_active"}) + span_bis.text = 'x' + str(row.bis) + else: + span_unbis = etree.SubElement(div_row, "span", attrib={"class": "bis_inactive"}) + span_unbis.text =u'\u00a0' + +def _add_instrumental_row(row, parent): + """class row instrumental-> html div row with content""" + div_row = etree.SubElement(parent, "div", attrib={"class": "row"}) + if str(type(row.bis)) == "" and row.bis is True: + _add_chords(row, div_row, "chords_ins") + _ = etree.SubElement(div_row, "span", attrib={"class": "lyric"}) + span_bis = etree.SubElement(div_row, "span", attrib={"class": "bis_active"}) + span_bis.text = u'\u00a0' + elif str(type(row.bis)) == "": + _add_chords(row, div_row, "chords_ins") + _ = etree.SubElement(div_row, "span", attrib={"class": "lyric"}) + span_bis = etree.SubElement(div_row, "span", attrib={"class": "bis_active"}) + span_bis.text = 'x' + str(row.bis) + else: + _add_chords(row, div_row, "chords_ins") + _ = etree.SubElement(div_row, "span", attrib={"class": "lyric"}) + span_unbis = etree.SubElement(div_row, "span", attrib={"class": "bis_inactive"}) + span_unbis.text = u'\u00a0' + +def _add_block(block, parent, block_type, verse_cnt): + """class verse -> html div verse/chorus/other with content""" + div_verse = etree.SubElement(parent, "div", attrib={"class": block_type}) + + for ro in block.rows: + if ro.instr: + _add_instrumental_row(ro, div_verse) + else: + _add_row(ro, div_verse) + + +def _add_creator(creator, describe, parent): + """class creator -> html div creator # metadane piosenki""" + div = etree.SubElement(parent, "div", attrib={"class": "creator"}) + span_label = etree.SubElement(div, "span", attrib={"class": "label"}) + span_label.text = describe + span_content = etree.SubElement(div, "span", attrib={"class": "content_creator"}) + span_content.text = creator + +def _add_blocks(song, parent): + """class song -> html div body # blok z metadanymi o piosence i piosenką""" + body_song = etree.SubElement(parent, "body", attrib={"class": "song", etree.QName("http://www.idpf.org/2007/ops", "type"):"bodymatter"}) + h1_title = etree.SubElement(body_song, "h1", attrib={"class": "title", "id": "title"}) + h1_title.text = song.title + if song.original_title: + _add_creator(song.original_title, "Tytuł oryginalny: ", body_song) + if song.alias: + _add_creator(song.alias, "Tytuł alternatywny: ", body_song) + if song.text_author: + _add_creator(song.text_author, "Słowa: ", body_song) + if song.translator: + _add_creator(song.translator, "Tłumaczenie: ", body_song) + if song.composer: + _add_creator(song.composer, "Muzyka: ", body_song) + if song.music_source: + _add_creator(song.music_source, "Melodia oparta na: ", body_song) + if song.artist: + _add_creator(song.artist, "Wykonawca: ", body_song) + if song.album: + _add_creator(song.album, "Album: ", body_song) + if song.metre: + _add_creator(song.metre, "Metrum: ", body_song) + if song.barre and int(song.barre) > 0: + _add_creator(song.barre, "Kapodaster: ", body_song) + + corpse = etree.SubElement(body_song, "div", attrib={"class": "song_body", "id": "song_body"}) + verse_cnt = 0 + for block in song.blocks: + if block.block_type.value == 'V': + b_type = "verse" + verse_cnt = verse_cnt + 1 + elif block.block_type.value == 'C': + b_type = "chorus" + else: + b_type = "other" + blockid="" + if b_type == "verse": + blockid=str(verse_cnt) + "." + if b_type == "chorus": + blockid="Ref:" + + + spacer = etree.SubElement(corpse, "div", attrib={"class": "block_spacer"}) + block_id = etree.SubElement(spacer, "span", attrib={"class": "block_id"}) + block_id.text = blockid + _add_block(block, corpse, b_type, verse_cnt) + + if song.comment: + div = etree.SubElement(body_song, "div", attrib={"class": "comment"}) + span_content = etree.SubElement(div, "span", attrib={"class": "comment"}) + span_content.text = song.comment + + +def xml2html(src_xml_path, path_out, song_suffix): # tworzy piosenkę w wersji html + + xhtml_namespace = "http://www.w3.org/1999/xhtml" + epub_namespace = "http://www.idpf.org/2007/ops" + xhtml = "{%s}" % xhtml_namespace + nsmap = {None: xhtml_namespace, + "epub": epub_namespace} + + song = rsx.parse_song_xml(src_xml_path) + root_html = etree.Element(xhtml + "html", nsmap=nsmap) + root_html.attrib[etree.QName("lang")] = "pl-PL" + head = etree.SubElement(root_html, "head") + etree.SubElement(head, "link", + attrib={"rel": "stylesheet", "type": "text/css", "href": "CSS/song.css", "media": "all"}) + # etree.SubElement(head, "link", + # attrib={"rel": "stylesheet", "type": "text/css", "href": "CSS/template.css", "media": "all"}) + # etree.SubElement(head, "script", attrib={"src": "./song.js"}) + _add_blocks(song, root_html) + title = etree.SubElement(head, "title") + title.text = song.title + et = etree.ElementTree(root_html) + if song_suffix is not None: + root_html.find("body").append(copy.deepcopy(song_suffix)) + + et.write(path_out, doctype='', pretty_print=True, method='xml', encoding='utf-8', xml_declaration=True) + + replace_in_file(path_out, path_out, lambda s: s.replace(u'\u200d', '').replace(" ", "_").replace(' ', '_')) + +def replace_in_file(sourceFile, targetFile, f): + with open(sourceFile, 'r') as file: + filedata = file.read() + + # Replace the target string + filedata = f(filedata) + + # Write the file out again + with open(targetFile, 'w') as file: + file.write(filedata) + +def create_list_of_songs(song_set): + """ Dostaje jako argument listę piosenek lub ścieżkę do katalogu i zwraca listę piosenek """ + if str(type(song_set)) == "": + for i in range(len(song_set)): + if song_set[i][-4:] == '.xml': + song_set[i] = song_set[i][0:-4] + return song_set + else: + songs_list = os.listdir(song_set) + for i in range(len(songs_list)): + if songs_list[i][-4:] == '.xml': + songs_list[i] = songs_list[i][0:-4] + return songs_list + + +def create_all_songs_html_from_dir(path_in, path_out, song_suffix=None): + """Tworzy wszystkie piosenki z listy w formacie html w katalogu path_out""" + + return create_all_songs_html( create_list_of_songs(path_in), path_out, song_suffix) + +def create_all_songs_html(list_of_songs, path_out, song_suffix=None): + """Tworzy wszystkie piosenki z listy w formacie html w katalogu path_out""" + + if not os.path.exists(path_out): + os.mkdir(path_out) + + for song in list_of_songs: + if not song.is_alias(): + xml2html(song.plik(), os.path.join(path_out, song.base_file_name() + '.xhtml'), song_suffix) diff --git a/src/html/css/common.css b/src/html/css/common.css new file mode 100644 index 00000000..d5ec3868 --- /dev/null +++ b/src/html/css/common.css @@ -0,0 +1,50 @@ +/* --- General Body and Typography --- */ +body { + font-family: 'Roboto', sans-serif; + background-color: #f8f9fa; + color: #212529; + line-height: 1.6; + margin: 0; + padding: 1.5em; +} + +h1 { + font-size: 1.8em; + margin-top: 0.3em; + margin-bottom: 0.5em; +} + +h2 { + color: #343a40; + border-bottom: 2px solid #dee2e6; + padding-bottom: 0.5em; + margin-top: 2em; + font-weight: 500; +} + +a { + color: #0056b3; + text-decoration: none; + transition: color 0.2s ease-in-out; +} + +a:hover { + color: #007bff; + text-decoration: underline; +} + +/* For small screens */ + +@media (max-width: 758px) { + body { + padding: 0.7em; + } + + h2 { + font-size: 1.5em; + } + + a { + font-size: 0.9em; + } +} \ No newline at end of file diff --git a/src/html/css/index.css b/src/html/css/index.css new file mode 100755 index 00000000..d3cde0b6 --- /dev/null +++ b/src/html/css/index.css @@ -0,0 +1,189 @@ +/* style.css */ + +@import url('common.css'); + +/* --- General Body and Typography --- */ +body { + font-family: 'Roboto', sans-serif; + background-color: #f8f9fa; + color: #212529; + line-height: 1.6; + margin: 0; + padding: 2em; +} + +h2 { + color: #343a40; + border-bottom: 2px solid #dee2e6; + padding-bottom: 0.5em; + margin-top: 2em; + font-weight: 500; +} + +a { + color: #0056b3; + text-decoration: none; + transition: color 0.2s ease-in-out; +} + +a:hover { + color: #007bff; + text-decoration: underline; +} + +/* --- Top Navigation --- */ +div.top-navigation { + background-color: #ffffff; + padding: 1em 2em; + border-radius: 8px; + box-shadow: 0 2px 4px rgba(0,0,0,0.1); + margin-bottom: 2em; + display: flex; + gap: 1.5em; + align-items: center; +} + +div.top-navigation a { + font-weight: 500; +} + + +/* --- Songbooks Section --- */ +#songbooks { + list-style: none; + padding: 0; +} + +#songbooks li { + font-weight: bold; + margin-top: 1em; + margin-bottom: 0.5em; +} + +#songbooks a { + display: inline-block; + background-color: #6c757d; + color: #ffffff; + padding: 0.3em 0.8em; + border-radius: 4px; + font-size: 0.8em; + margin-right: 0.5em; + text-transform: uppercase; +} + +#songbooks a:hover { + background-color: #5a6268; + color: #ffffff; + text-decoration: none; +} + +#songbooks a.epub { + background-color: #28a745; +} +#songbooks a.epub:hover { + background-color: #218838; +} + +#songbooks a.pdf { + background-color: #dc3545; +} +#songbooks a.pdf:hover { + background-color: #c82333; +} + + +/* --- Main Song List --- */ +#songs { + list-style-type: none; + padding: 0; + margin-top: 1em; + background-color: #ffffff; + border-radius: 8px; + box-shadow: 0 2px 4px rgba(0,0,0,0.1); +} + +#songs li { + display: flex; + align-items: center; + border-bottom: 1px solid #e9ecef; + padding: 0.8em 1.5em; + transition: background-color 0.2s ease; +} + +#songs li:last-child { + border-bottom: none; +} + +#songs li:hover { + background-color: #eef2f5; +} + +#songs li a { + flex-grow: 1; + font-size: 1.1em; + color: #333; + font-weight: 400; +} + +#songs li a:hover { + text-decoration: none; + color: #0056b3; +} + +/* --- Edit Icon Button --- */ +.editicon { + background-color: transparent; + border: none; + cursor: pointer; + padding: 0; + margin-right: 1em; /* Spacing between icon and song title */ + display: inline-flex; + align-items: center; + justify-content: center; + opacity: 0.6; + transition: opacity 0.2s ease; +} + +.editicon:hover { + opacity: 1; +} + +.editicon .material-symbols-outlined { + font-size: 20px; + color: #6c757d; + transition: color 0.2s ease; +} + +.editicon:hover .material-symbols-outlined { + color: #007bff; +} + +/* --- Kindle Link Paragraph --- */ +p { + margin-top: 1.5em; + font-style: italic; + color: #6c757d; +} + +/* Optional: Simple styling for the search box */ +.search-container { + background-color: #ffffff; + padding: 1em 1.5em; + margin-top: 2em; + border-radius: 8px; + box-shadow: 0 2px 4px rgba(0,0,0,0.1); +} +.search-label { + display: block; + margin-bottom: 0.5em; + font-weight: 500; + color: #343a40; +} +#songSearch { + width: 100%; + padding: 0.75em; + font-size: 1em; + border: 1px solid #ced4da; + border-radius: 4px; + box-sizing: border-box; /* Ensures padding doesn't affect width */ +} \ No newline at end of file diff --git a/src/html/css/song.css b/src/html/css/song.css new file mode 100644 index 00000000..5e253543 --- /dev/null +++ b/src/html/css/song.css @@ -0,0 +1 @@ +@import url('song_common.css'); \ No newline at end of file diff --git a/src/html/css/song_common.css b/src/html/css/song_common.css new file mode 100644 index 00000000..9c9e5907 --- /dev/null +++ b/src/html/css/song_common.css @@ -0,0 +1,168 @@ +@import url('common.css'); +/* This CSS is included both: In EPUB version as well as the regular HTML version */ + +body { + font-family: sans-serif; +} + +div.song_body { + width: max-content; + display: table; +} + +/* Per block settings - Chorus, Verses, Instrumental */ + +div.verse, div.chorus, div.other { + display: contents; +} + +div.chorus div.row span.lyric { + padding-left: 3ex; +} + +div.block_spacer { + display: table-row; + empty-cells: show; + height: 2.5ex; +} + +/* Per row settings*/ + +div.row { + display: table-row; + page-break-inside: avoid; + page-break-after: avoid; +} + +div.row:last-of-type { + page-break-after: auto; +} + +/* Lyrics */ + +span.block_id, span.lyric, span.chords, span.bis_inactive, span.bis_active, span.chords_ins { + display: table-cell; +} + +span.block_id { + padding-top: 1ex; + page-break-inside: avoid; + page-break-after: avoid; +} +/* margin-right: 0.5em;*/ +/*}*/ + +/* As there is no call-span in CSS we allow the instrumental row to overflow */ +span.chords_ins { + max-width: 5em; + padding-left: 1em; + text-overflow: ellipsis; + white-space: nowrap; +} + +/* Chords above the text */ + +span.lyric span.chunk { + display: inline-table; + /*border: 1px solid green;*/ + vertical-align: bottom; +} + +span.lyric span.chord { + display: table-row; + /*border: 1px solid orange;*/ + max-height: 0; +} + +span.lyric span.chord span.ch{ + display: table-cell; +} + +span.lyric span.content { + display: table-row; + /*border: 1px solid red;*/ + /*overflow-wrap: normal;*/ + /*white-space: nowrap;*/ + /*hyphens: none;*/ +} + +span.lyric span.content-i { + display: table-cell; + /*border: 1px solid red;*/ + white-space: pre-line; + overflow-wrap: normal; + /*white-space: nowrap;*/ + /*empty-cells: show;*/ + hyphens: none; + height: 2.2ex; +} + +span.ws { + display: inline-block; + width: 0.5ex; + opacity: 0; +} + +div.over_false span.lyric span.ch { + display: none; +} + +/*!* Generic styling*!*/ + +h1 { + text-align: left; +} + +span.lyric span.ch { + font-family: sans-serif; + font-size: xx-small; + font-weight: bolder; +} + +span.ch { + font-family: sans-serif; + font-weight: bolder; +} + +span.chords span.ch { + padding-right: 0.3em; +} + +span.chords { + padding-left: 1em; + padding-right: 1em; + max-width: 10em; + overflow-wrap: break-word; + + /* not sure if needed... commenting for now*/ + /* overflow-wrap: break-word;*/ + /* hyphens: none;*/ + /* white-space: nowrap;*/ +} + +span.content_creator { + margin-top: 0.0em; + font-style: italic; + font-weight: bold; + font-size: small; +} + +div.row > span.bis_inactive { + padding-right: 0.4em; + empty-cells: show; + width: 2em; +} + +div.row > span.bis_active { + padding-left: 0.4em; + padding-right: 0.3em; + border-right: solid; + empty-cells: show; + text-align: right; + width: 2em; /* fixed length makes it more likely on kindle to finish at the same place */ +} + +div.comment { + margin-top: 1.2em; + font-style: italic; +} diff --git a/src/html/htmls_generator.py b/src/html/htmls_generator.py new file mode 100644 index 00000000..617c68a1 --- /dev/null +++ b/src/html/htmls_generator.py @@ -0,0 +1,33 @@ +import os +import shutil + +import src.html.create_songs_html as cash +import sys +import src.lib.songbook as sb + +def main(): + target_dir = os.path.join(sb.repo_dir(), "build") # gdzie ma utworzyć epub + songbook_file = os.path.join(sb.repo_dir(), "songbooks/default.songbook.yaml") if len(sys.argv) == 1 else sys.argv[1] + songbook = sb.load_songbook_spec_from_yaml(songbook_file) + + path_songs_html = os.path.join(target_dir, "songs_html") + if os.path.exists(path_songs_html): + shutil.rmtree(path_songs_html) + os.mkdir(path_songs_html) + + cash.create_all_songs_html(songbook.list_of_songs(), path_songs_html) + path_css = os.path.join(path_songs_html, "CSS") + os.mkdir(path_css) + + CSS_FILES = [ + "common.css", + "index.css", + "song_common.css", + "song.css", + ] + for css_file in CSS_FILES: + path_tmp_css = os.path.join(sb.repo_dir(), 'src', 'html', 'css', css_file) + os.symlink(path_tmp_css, os.path.join(path_css, css_file)) + +if __name__ == "__main__": + main() diff --git a/src/html/index_generator.py b/src/html/index_generator.py new file mode 100644 index 00000000..eb121b53 --- /dev/null +++ b/src/html/index_generator.py @@ -0,0 +1,55 @@ +import os +import sys +import src.lib.songbook as sb +from lxml import etree + +# def name_of_file(song): +# return os.path.splitext(os.path.split(song)[1])[0] +def create_index_xhtml(list_of_songs_meta, target_dir): + tmp_path = 'index.xhtml' + out_path = os.path.join(target_dir, tmp_path) + tree = etree.parse(os.path.join(sb.repo_dir(), "./src/html/templates/index.xhtml")) + + # List of songs + ul = tree.getroot().find(".//{http://www.w3.org/1999/xhtml}ul[@id='songs']") + for i in range(len(list_of_songs_meta)): + song = list_of_songs_meta[i] + if song.is_alias(): + continue + li = etree.SubElement(ul, "li") + # + button = etree.SubElement(li, "button") + button.attrib['class'] = 'editicon' + button.attrib['onclick'] = "edit('"+os.path.relpath(song.plik(), start=os.path.join(sb.repo_dir(), "songs"))+"');" + span = etree.SubElement(button, 'span') + span.attrib['class'] = 'material-symbols-outlined' + span.text = 'edit' + a = etree.SubElement(li, "a") + a.attrib['href'] = os.path.join("./songs_html", song.base_file_name() + '.xhtml') + a.text = list_of_songs_meta[i].effectiveTitle() + + # List of songbooks + ul = tree.getroot().find(".//{http://www.w3.org/1999/xhtml}ul[@id='songbooks']") + for songbook in sb.songbooks(): + if not songbook.hidden(): + li = etree.SubElement(ul, "li", attrib={"id": songbook.id()}) + li.text=songbook.title() + ":" + a_epub = etree.SubElement(ul, "a", attrib={"class": "epub", "href": songbook.id()+".epub"}) + a_epub.text = "EPUB (kindle)" + a_a4pdf = etree.SubElement(ul, "a", attrib={"class": "pdf", "href": os.path.join("songs_tex", songbook.id()+"_a4.pdf")}) + a_a4pdf.text = "PDF (a4)" + a_a5pdf = etree.SubElement(ul, "a", attrib={"class": "pdf", "href": os.path.join("songs_tex", songbook.id()+"_a5.pdf")}) + a_a5pdf.text = "PDF (a5)" + et = etree.ElementTree(tree.getroot()) + et.write(out_path, pretty_print=True, method='xml', encoding='utf-8', xml_declaration=True) + + +def main(): + songbook_file = os.path.join(sb.repo_dir(), "songbooks/default.songbook.yaml") if len(sys.argv) == 1 else sys.argv[1] + songbook = sb.load_songbook_spec_from_yaml(songbook_file) + target_dir = os.path.join(sb.repo_dir(), "build") + + create_index_xhtml(songbook.list_of_songs(), target_dir) + os.symlink(os.path.join(sb.repo_dir(), 'src', 'html', 'templates', "index.js"), os.path.join(target_dir, "index.js")) + +main() \ No newline at end of file diff --git a/src/html/templates/index.js b/src/html/templates/index.js new file mode 120000 index 00000000..ea784f8d --- /dev/null +++ b/src/html/templates/index.js @@ -0,0 +1 @@ +../../../_site/index.js \ No newline at end of file diff --git a/src/html/templates/index.xhtml b/src/html/templates/index.xhtml new file mode 100644 index 00000000..c8f0bbdd --- /dev/null +++ b/src/html/templates/index.xhtml @@ -0,0 +1,36 @@ + + + + + Śpiewnik + + + + + + + +

        Śpiewniki

        +
          +
        +

        Wersję na Kindla możesz wgrać używając: https://www.amazon.com/sendtokindle

        + +

        Piosenki

        +
        + + +
        +
          +
        + + \ No newline at end of file diff --git a/src/html/templates/songs_html/CSS/template.css b/src/html/templates/songs_html/CSS/template.css new file mode 120000 index 00000000..86c962d8 --- /dev/null +++ b/src/html/templates/songs_html/CSS/template.css @@ -0,0 +1 @@ +../../../../epub/templates/template.css \ No newline at end of file diff --git a/src/latex/indeks.ist b/src/latex/indeks.ist new file mode 100644 index 00000000..e5350c9c --- /dev/null +++ b/src/latex/indeks.ist @@ -0,0 +1,4 @@ +delim_0 "\\dotfill\ " +delim_1 "\\dotfill\ " +headings_flag 1 +heading_prefix "aaa" \ No newline at end of file diff --git a/src/latex/song2tex.py b/src/latex/song2tex.py new file mode 100644 index 00000000..dd80d57a --- /dev/null +++ b/src/latex/song2tex.py @@ -0,0 +1,263 @@ +# noinspection PyInterpreter +from lxml import etree +from enum import Enum +import traceback +import sys +import jinja2 +import re + + +def tex_escape(text): + """ + :param text: a plain text message + :return: the message escaped to appear correctly in LaTeX + """ + conv = { + '&': r'\&', + '"': "''", + '%': r'\%', + '$': r'\$', + '#': r'\#', + '_': r'\_', + '{': r'\{', + '}': r'\}', + '~': r'\textasciitilde{}', + '^': r'\^{}', + '\\': r'\textbackslash{}', + '<': r'\textless{}', + '>': r'\textgreater{}', + '...': r'{\dots}' + } + if text: + regex = re.compile('|'.join(re.escape(str(key)) for key in sorted(conv.keys(), key=lambda item: - len(item)))) + return regex.sub(lambda match: conv[match.group()], text) + else: + return text + + +class RowChunk: + def __init__(self, chord='', content=None): + self.chord = chord + if content is None: + self.content = '' + else: + self.content = content.strip('\t\n') + + +class RowType(Enum): + FIRST = 'F' + LAST_BUT_ONE = 'P' + LAST = 'L' + INSTRUMENTAL = 'I' + SHORT = 'S' # This is shortened chorus usually + END = 'E' # The very last row of the song + + +class Row: + def __init__(self, row_type='', new_chords=False, bis=False, chunks=[], instr=False, sidechords=None): + self.row_type = row_type + self.new_chords = new_chords + self.chunks = chunks + self.bis = bis + self.instr = instr + self.sidechords = sidechords + + @staticmethod + def parseDOM(root, bis=False): + try: + if root.text: + chunks = [RowChunk(content=tex_escape(root.text))] + else: + chunks = [] + for chunk in root.getchildren(): + chunks.append(RowChunk(chord=tex_escape(chunk.attrib['a']), content=tex_escape(chunk.tail))) + if len(chunks) > 0 and not (chunks[0].content.startswith(' ')): + chunks[0].content = ' ' + chunks[0].content + + instr = root.attrib.get('style', 'normal') == 'instr' + r = Row(new_chords=(root.attrib.get('important_over', 'false')=='true'), bis=bis, chunks=chunks, instr=instr, sidechords=root.attrib.get('sidechords', None)) + if instr: + r.row_type += RowType.INSTRUMENTAL.value + return r + except: + print("ERROR in ROW: " + str(root), file=sys.stderr) + raise + + def clone(self): + return Row(row_type=self.row_type, new_chords=self.new_chords, bis=self.bis, chunks=self.chunks[:], instr=self.instr, sidechords=self.sidechords) + + +class BlockType(Enum): + VERSE = 'V' + CHORUS = 'C' + OTHER = 'O' + + @staticmethod + def parse(s): + return { + 'verse': BlockType.VERSE, + 'chorus': BlockType.CHORUS, + 'other': BlockType.OTHER + }[s] + + +class Block: + def __init__(self, block_type=BlockType.VERSE, rows=[], effective_rows=[]): + self.block_type = block_type + self.rows = rows + self.effective_rows = effective_rows + + @staticmethod + def parseDOM(root, linked=False): + block_type = BlockType.parse(root.attrib['type']) + rows = [] + for child in root.getchildren(): + if child.tag == '{http://21wdh.staszic.waw.pl}bis': + bis_rows = [Row.parseDOM(row, bis=True) for row in child.findall('{*}row')] + bis_times = int(child.attrib.get('times', '2')) + bis_rows[-1].bis = bis_times + rows += bis_rows + else: + rows.append(Row.parseDOM(child)) + if len(rows) > 0: + rows[0].row_type += RowType.FIRST.value + rows[-1].row_type += RowType.LAST.value + if len(rows) >= 2: + rows[-2].row_type += RowType.LAST_BUT_ONE.value + effective_rows=[] + if linked: + for row in rows: + row.new_chords = False + for row in rows: + if not(RowType.INSTRUMENTAL.value in row.row_type): + if len(effective_rows) == 0: + rowclone = row.clone() + rowclone.row_type=RowType.FIRST.value + RowType.LAST.value + RowType.SHORT.value + effective_rows = [rowclone] + else: + effective_rows[0].chunks.append(RowChunk(content=" \dots")) + effective_rows[0].bis=False + effective_rows[0].sidechords="" + break + if len(effective_rows)==0: + effective_rows = rows + else: + effective_rows=rows + return Block(block_type=block_type, rows=rows, effective_rows=effective_rows) + + +def make_one_line(s): + return s.replace('\n', ' ').replace('\r', ' ').replace(r' +', ' ') if s else None + + +class Song: + def __init__(self, title='', text_author='', composer='', artist='', blocks=[], barre=None, metre=None, genre=None, alias=None): + self.title = make_one_line(tex_escape(title)) if title else '' + self.text_author = make_one_line(tex_escape(text_author)) if text_author else '' + self.composer = make_one_line(tex_escape(composer)) if composer else '' + self.artist = make_one_line(tex_escape(artist)) if artist else '' + self.blocks = blocks + self.barre = barre if barre != '' and barre != '0' and barre != 0 else None + self.metre = metre + self.genre = genre + self.alias = make_one_line(tex_escape(alias)) + + @staticmethod + def parseDOM(root): + # A child of 'lyric' element may either be a text block, a reference to a text block (e.g. to a chorus), or a tablature. + text_blocks = root.findall('{*}lyric/{*}block') + flatten = lambda block: Block.parseDOM(block) if 'blocknb' not in block.attrib else Block.parseDOM( + text_blocks[int(block.attrib['blocknb']) - 1], linked=True) + blocks = [flatten(block) for block in root.find('{*}lyric').getchildren() if + block.tag != '{http://21wdh.staszic.waw.pl}tabbs'] + get_text = lambda elem: elem.text if elem is not None else None + get_attrib = lambda attrs: attrs[0] if len(attrs)>0 and attrs[0] else None + if blocks and blocks[-1].effective_rows: + blocks[-1].effective_rows[-1].row_type += RowType.END.value # end row + + return Song( + title=root.get('title'), + alias=get_text(root.find('{*}alias')), + text_author=get_text(root.find('{*}text_author')), + composer=get_text(root.find('{*}composer')), + artist=get_text(root.find('{*}artist')), + blocks=blocks, + barre=get_attrib(root.xpath("./s:music/s:guitar/@barre", namespaces={"s": "http://21wdh.staszic.waw.pl"})), + metre=get_attrib(root.xpath("./s:music/@metre", namespaces={"s": "http://21wdh.staszic.waw.pl"})), + genre=get_text(root.find('{*}genre')) + ) + + +def song2tex(path): + try: + tree = etree.parse(path) + song = Song.parseDOM(tree.getroot()) + + latex_jinja_env = jinja2.Environment( + block_start_string='\BLOCK{', + block_end_string='}', + variable_start_string='\VAR{', + variable_end_string='}', + comment_start_string='\#{', + comment_end_string='}', + line_statement_prefix='%%', + line_comment_prefix='%#', + trim_blocks=True, + lstrip_blocks=True, + autoescape=False, + loader=jinja2.FileSystemLoader(sys.path[0]) + ) + template = latex_jinja_env.get_template('song_template.tex') + res = template.render(song=song) + res = (res.replace('',' ').replace('😷','').replace('е','e').replace('\u200B','').replace('\u0096','').replace('\u0092','').replace('\u0095','').replace('\u0099','') + .replace('\u02B9','').replace('\u0092','').replace('\u0088','').replace('\u0085','').replace('\u0080','').replace('\u0081','').replace('\u0082','').replace('\u0087','').replace('\u0084','').replace('\u0093','').replace('\u0094','').replace('\u0091','').replace('\u0098','').replace('\u009B','') + .replace('\u2028','').replace('\u2005','').replace('\u2003','').replace('\u205F','').replace('\u009F','').replace('\u2502','') + .replace('\u25BC','$\\downarrow$').replace('\u25B2','$\\uparrow$').replace('🔼','$\\uparrow$').replace('⬆','$\\uparrow$') + .replace('️⬇','$\\downarrow$').replace('️⬇','$\\downarrow$').replace('️🔽','$\\downarrow$').replace('⬇','$\\downarrow$').replace('🔽','$\\downarrow$') + .replace('\u02bc','') + .replace('\uFFFD','').replace('\uFE0F','') + .replace('\u1E57','p') + .replace('\uFFFD','#') + .replace('\u009C','') + .replace('','') + .replace('\u99C9','') + .replace('\u2033','"').replace('\u2032',"'") + .replace('\u2075','').replace('\u2009','') + .replace('\u001E','').replace('\uFFFC','').replace('🙂','') + .replace('\u3164','') + .replace('\u001b','') + .replace('\u2212','-')) + if bool(re.search('[\u0400-\u04FF]', res)): + return "" + if bool(re.search('[\u5000-\u50FF]', res)): + return "" + if bool(re.search('[\u3000-\u30FF]', res)): + return "" + if bool(re.search('[\u8A00-\u8AFF]', res)): + return "" + if bool(re.search('[\u6600-\u66FF]', res)): + return "" + if bool(re.search('[\u2600-\u26FF]', res)): + return "" + if bool(re.search('[\u0300-\u03FF]', res)): + return "" + if bool(re.search('[\u0500-\u05FF]', res)): + return "" + if bool(re.search('[\u1000-\u10FF]', res)): + return "" + return res + except Exception as e: + print(path, file=sys.stderr) + print(e, file=sys.stderr) + traceback.print_exc() + return "" + +def main(): + if len(sys.argv) < 2: + print("Wymagana nazwa pliku xml", file=sys.stderr) + exit(1) + song2tex(sys.argv[1]) + + +if __name__ == "__main__": + main() diff --git a/src/song_template.tex b/src/latex/song_template.tex similarity index 53% rename from src/song_template.tex rename to src/latex/song_template.tex index 8f1c7ec1..2cc98670 100644 --- a/src/song_template.tex +++ b/src/latex/song_template.tex @@ -1,9 +1,9 @@ -\begin{song}{\VAR{song.title}}{\VAR{song.text_author}}{\VAR{song.composer}}{\VAR{song.artist}} -\begin{longtable}{l p{0.6\textwidth} l p{1in}} -\endfirsthead &\ldots \endhead &c.d.n. \ldots \endfoot \endlastfoot +\begin{song}{\VAR{song.title}}{\VAR{song.text_author}}{\VAR{song.composer}}{\VAR{song.artist}}{\VAR{song.barre or ''}}{\VAR{song.metre or ''}}{\VAR{song.genre or ''}}{\VAR{song.alias or ''}} +\begin{longtable}[l]{l V{6em} l l@{}} +&\ldots \endfoot \endlastfoot \BLOCK{ for block in song.blocks } - \BLOCK{ for row in block.rows } - \row[\VAR{row.row_type.value}]{\VAR{block.block_type.value}}{\BLOCK{ for chunk in row.chunks } + \BLOCK{ for row in block.effective_rows } + \row[\VAR{row.row_type}]{\VAR{block.block_type.value}}{\BLOCK{ for chunk in row.chunks } \BLOCK{ if not row.new_chords or not chunk.chord -} \VAR{chunk.content} \BLOCK{- else -} @@ -13,9 +13,9 @@ \bis \BLOCK{- elif row.bis > 0 -} \bisl{\VAR{row.bis}} - \BLOCK{- endif }}{\BLOCK{ for chunk in row.chunks -} + \BLOCK{- endif }}{\BLOCK{ if row.sidechords!=None -}\VAR{row.sidechords}\BLOCK{- else -}\BLOCK{ for chunk in row.chunks -} \BLOCK{ if chunk.chord }\VAR{chunk.chord} \BLOCK{ endif } - \BLOCK{- endfor }} + \BLOCK{- endfor }\BLOCK{- endif }}% \BLOCK{ endfor } \BLOCK{ endfor } \end{longtable} diff --git a/src/latex/songbook21wdh.sty b/src/latex/songbook21wdh.sty index 949926cf..8187cf94 100644 --- a/src/latex/songbook21wdh.sty +++ b/src/latex/songbook21wdh.sty @@ -4,6 +4,11 @@ \RequirePackage{conditionals} \RequirePackage{ifthen} +\RequirePackage{xstring} +\RequirePackage{booktabs} +\RequirePackage{array} +\RequirePackage{pbox} +\RequirePackage{varwidth} % must be loaded after array \newcommand{\theSongTitle}{} \newcommand{\theSongLyricist}{} @@ -15,14 +20,15 @@ \newboolean{PrintChordsOn} \newboolean{PrintChordsBehind} +\newboolean{PrintSongNum} \newcommand{\ChBassFont}{\normalsize\bf\sf} % = cmss12 at 12.0pt \newcommand{\SBChordRaise} {2.25ex} -\newcommand{\ChFontOn}{\scriptsize\fontfamily{\sfdefault} +\newcommand{\ChFontOn}{\scriptsize\fontfamily{\sfdefault}% \fontseries{sbc}\fontshape{n}\selectfont} %=cmssbc12 at 14.4pt -\newcommand{\ChFontBh}{\fontfamily{\sfdefault} +\newcommand{\ChFontBh}{\fontfamily{\sfdefault}% \fontseries{sbc}\fontshape{n}\selectfont} %=cmssbc12 at 14.4pt -\newcommand{\ChBkFont}{\ChFont\fontseries{m} +\newcommand{\ChBkFont}{\ChFont\fontseries{m}% \selectfont} % =cmssm12 at 14.4pt \newcommand{\bis}{\vrule} @@ -67,108 +73,132 @@ \setbox1=\hbox{\ChFontOn\sbChord{#1}\relax\strut}% \setbox0=\hbox{#2}% \ifdim\wd1<\wd0% - \strut\raise\SBChordRaise\copy1\kern-\wd1\copy0% + \strut\raise\SBChordRaise\copy1\kern-\wd1{#2}% \else% - \strut\copy0\kern-\wd0\strut\raise\SBChordRaise\copy1% + \strut{#2}\kern-\wd0\strut\raise\SBChordRaise\copy1% \fi% }{#2}% }% -\newcommand{\ChordsBehind}[1]{ - \ifthenelse{\boolean{PrintChordsBehind}}{ - \if\blank{#1}{}\else{%\hskip 0.1cm - \ChFontBh #1}\fi - }{ - } +\newcommand{\ChordsBehind}[1]{% +\ifthenelse{\boolean{PrintChordsBehind}}{% +\if\blank{#1}{}\else{%\hskip 0.1cm +\ChFontBh #1}\fi% +}{% +}% } - \newcommand{\AAndCAndA}[3]{% - \vbox{% - \begin{flushleft}% - \small% - \if\blank{#1}{}\else{\textbf{Słowa:}\ #1 \\}\fi% - \if\blank{#2}{}\else{\textbf{Muzyka:}\ #2 \\}\fi% - \if\blank{#3}{}\else{\textbf{Wykonawca:}\ #3 \\}\fi% - \end{flushleft}%\\ - }% -} + {\IfStrEq{#1#2#3}{}{}{%not empty + \IfStrEq{#1}{#2}{% + \IfStrEq{#2}{#3}{\textbf{Słowa, muzyka i wykonanie:}\ #1}{% + \IfStrEq{#1}{}{}{\textbf{Słowa i muzyka:}\ #1 \IfStrEq{#3}{}{}{\\}}% + \IfStrEq{#3}{}{}{\textbf{Wykonawca:}\ #3}% + }% + }{% + \if\blank{#1}{}\else{\textbf{Słowa:}\ #1 \IfStrEq{#2#3}{}{}{\\}}\fi% + \if\blank{#2}{}\else{\textbf{Muzyka:}\ #2 \IfStrEq{#3}{}{}{\\}}\fi% + \if\blank{#3}{}\else{\textbf{Wykonawca:}\ #3}\fi% + }% + }% + }% +}% + +\newcommand{\AAndCAndAAndMusic}[5]{% + \small % + \begin{tabular}{rl} + \parbox[t][][t]{0.75\textwidth}{\AAndCAndA{#1}{#2}{#3}} & + \parbox[t][][t]{8em}{ + \IfStrEq{#4}{}{}{\raggedright\textbf{Kapodaster:}\ #4 \hfill \\} + \IfStrEq{#5}{}{}{\raggedright\textbf{Metrum:}\ \hfill #5} + } \\ + \end{tabular}% +}% \newcommand{\STitle}[1]{% - \vbox{% - \begin{center}% - {\LARGE{\theSongCnt{}.\ {\bf #1}}\\}% - \end{center} % - }% + {\LARGE\centering% + {\ifthenelse{\boolean{PrintSongNum}}{\theSongCnt{}.\ }{}{\bf #1\\}}}% +}% + +%The macto \firstof returns the first letter (and works with UTF-8 chars). +\makeatletter +\newcommand{\firstof}[1]{\expandafter\checkfirst#1\@nil} +\def\checkfirst#1{% + \ifx\UTFviii@two@octets#1% + \expandafter\gettwooctets + \else + \expandafter\@car\expandafter#1% + \fi +} +\def\gettwooctets#1#2#3\@nil{\UTFviii@two@octets#1#2} + + +\newenvironment{song}[8]{% + \fancyhead[LE,RO]{\truncate{0.5\headwidth}{#1}}% + \setcounter{VerseCnt}{0}% + \renewcommand{\theSongTitle}{#1}% + \renewcommand{\theSongLyricist}{#2}% + \renewcommand{\theSongComposer}{#3}% + \renewcommand{\theSongArtist}{#4}% + \renewcommand{\theLetter}{\firstof{#1}}% + % #7 - alias #8- genre + \addtocounter{SongCnt}{1}% + \IfStrEq{#4}{}{}{\index[wyk]{#4!#1}} + \index[aliases]{#1} + \IfStrEq{#8}{}{}{\index[aliases]{#8!#1}} + \IfStrEq{#7}{}{}{\index[genre]{\makefirstuc{#7}!{#1}}} + \addcontentsline{toc}{section}{\theSongCnt{}. #1}% +% \addcontentsline{toc}{section}{alias title} + \STitle{\theSongTitle}% + \vspace{5pt plus 5pt minus 5pt}% + \AAndCAndAAndMusic{#2}{#3}{#4}{#5}{#6}% + \parindent=0pt% + }{% + \clearpage% } -\newenvironment{song}[4]{ - \clearpage - \fancyhead[LE]{#1} - \fancyhead[RO]{#1} - \setcounter{VerseCnt}{0} - \renewcommand{\theSongTitle}{#1} - \renewcommand{\theSongLyricist}{#2} - \renewcommand{\theSongComposer}{#3} - \renewcommand{\theSongArtist}{#4} - - \addtocounter{SongCnt}{1} - \addcontentsline{toc}{section}{\hspace{-1.5em}#1} - \STitle{\theSongTitle} - \AAndCAndA{#2}{#3}{#4} - }{\vfill} - -\newcommand{\row}[5][M]{ +\newcommand{\calb}[0]{\vline width 2pt {}}% + +% #1 - whether row is instrumental 'I' or/and it's chorus 'C' +% #2 - intended row prefix (|| - for (not short chorus)) +% #3 - verse text +% #4 - chords +\newcommand{\ChordsContext}[4]{% + \IfSubStr{#1}{I}% + {&\multicolumn{2}{#2l}{\ChordsBehind{#4}} & }% + {&\multicolumn{1}{#2l}{\ChordsBehind{#4}} & \IfSubStr{#1}{C}{\hskip 2em}{} #3 & }% +}% + + +\newcommand{\row}[5][M]{% % #1: % "F" <=> (first line of verse (or chorus)) -% "FS" <=> (first special)number and indent the verse or "Ch:" the chorus +% "P" <=> (last but 1 line - we don't page split after it) % "L" <=> (last line) don't try to nobreakline. -% "M" <=> middleline -% "S" <=> singleline +% 'E' <=> The very last verse of the song +% "I" <=> instrumental line +% "S" <=> the only line of verse/chorus +% - you can combine the lines % #2: "C" <=> chorus % "V" <=> verse -% "I" <=> instrumental +% "O" <=> not chorus and not numbered % #3: row_text % #4: bis_text % #5: chords %---------------------------------------------------------- - \ifthenelse{\equal{#1}{L}}{\vspace{3 ex}}{}% - \ifthenelse{\equal{#1}{S}}{\vspace{3 ex}}{}% -% - \ifthenelse{\equal{#1}{FS}}% - { \ifthenelse{\equal{#2}{C}}% - {Ref.:}% - {\ifthenelse{\equal{#2}{V}}{% - \addtocounter{VerseCnt}{1}% - \theVerseCnt{}.% - }{}% - }% - }{}% % - \ifthenelse{\equal{#1}{S}}% - { \ifthenelse{\equal{#2}{C}}% - {Ref:}% - {\ifthenelse{\equal{#2}{V}}{% - \addtocounter{VerseCnt}{1}% - \theVerseCnt{}.% - }{}% - }% - }{} % - & %-------------------------------------------- - \ifthenelse{\equal{#2}{C}}% - {\hskip 0.75 cm}% - {}% - #3 & %----------------------------------------- - \if\blank{#4}{}\else{% \hskip{1cm} - #4}\fi% - & %----------------------------------------- - \ChordsBehind{#5}% - %--------------------------------------- - \ifthenelse{\equal{#1}{L}}% - {\\}% - { \ifthenelse{\equal{#1}{S}}% - {\\}% - {\\*}}% - + \IfSubStr{#1}{F}{% + \IfSubStr{#2}{C}{ Ref:}{}% + \IfSubStr{#2}{V}{ \addtocounter{VerseCnt}{1}\theVerseCnt{}.}{}% + }{}% + \IfSubStr{#2}{C}% + {% + \IfSubStr{#1}{S}% + {\ChordsContext{#1#2}{||}{\pbox[l]{0.6\textwidth}{\phantom{}#3}}{#5}}% + {\ChordsContext{#1#2}{||}{\pbox[l]{0.6\textwidth}{\phantom{}#3}}{#5}}% + }% + {\ChordsContext{#1#2}{}{\pbox[l]{0.6\textwidth}{\phantom{}#3}}{#5}}% + \if\blank{#4}{}\else{#4}\fi% + \IfSubStr{#1}{L}{\IfSubStr{#1}{E}{\\}{\\\vtop{\vskip0.7ex minus 1ex}\\}}{\IfSubStr{#1}{P}{\\*}{\IfSubStr{#1}{F}{\\*}{\\}}} % optionally we could emit \\* on last-by-1 line to prevent 1-line tables. }{} diff --git a/src/latex/songbook2tex.py b/src/latex/songbook2tex.py new file mode 100644 index 00000000..b2ff8be0 --- /dev/null +++ b/src/latex/songbook2tex.py @@ -0,0 +1,70 @@ +"""This code generate one tex plik from n>=1 songs in xml + and gives tex text on stdout""" + +import os +import sys + +import song2tex as s2t +import src.lib.songbook as sb + + +def str2tex(s): + return s.replace("\n", "\\\\").replace("#", "\\#").replace("_", "\\_").replace("...", "…") + +def create_ready_tex(songbook, papersize): + """function create a pdf file in a4 or a5 size + source - one file or list of files or directory path + size - A4 or A5 + title - if source is list of songs you can add a title of songbook, + songbook - Specification of the songbook to generate + """ + source = songbook.list_of_songs() + + list_title_file = [] + + for s in source: + if not s.is_alias(): + title = s.effectiveTitle() + print(s, file=sys.stderr) + list_title_file.append((title, s.plik())) + + if papersize not in ("a4", "a5"): + print("Wrong size of paper!", file=sys.stderr) + exit(1) + + head = f"songbook_p.tex" + foot = f"songbook_s.tex" + + with open("src/formats/" + head) as f: + content = f.read() + + content = (content + .replace(":paper:", "paper" + papersize) + .replace(":fontsize:", "19pt" if papersize == "a4" else "14pt") + .replace(":title:", str2tex(songbook.title())) + .replace(":subtitle:", str2tex(songbook.subtitle())) + .replace(":place:", str2tex(songbook.place() + ", ") if songbook.place() else "") + .replace(":url:", str2tex(songbook.url())) + .replace(":publisher:", str2tex(songbook.publisher())) + .replace(":imagePdfPath:", songbook.imagePdfPath())) + + content += "".join([s2t.song2tex(file) for _, file in list_title_file]) + + with open("src/formats/" + foot) as f: + content += f.read() + + return print(content) + + +def main(): + if len(sys.argv) <= 1: + print("Usage: python3 songbook2tex.py songbook.yaml", file=sys.stderr) + exit(1) + songbook_file = os.path.join(sb.repo_dir(), "songbooks/default.songbook.yaml") if len(sys.argv) == 2 else sys.argv[2] + songbook = sb.load_songbook_spec_from_yaml(songbook_file) + + create_ready_tex(songbook=songbook, papersize=sys.argv[1]) + + +if __name__ == "__main__": + main() diff --git a/src/latex/songs2tex.py b/src/latex/songs2tex.py new file mode 100644 index 00000000..9c87620b --- /dev/null +++ b/src/latex/songs2tex.py @@ -0,0 +1,62 @@ +"""This code generate one tex plik from n>=1 songs in xml + and gives tex text on stdout""" + +import os +import sys + +import song2tex as s2t +import src.lib.songbook as sb +import songbook2tex as sb2t + + +def create_ready_tex(songbook, source, papersize, title_of_songbook=None): + """function create a pdf file in a4 or a5 size + source - one file or list of files or directory path + size - A4 or A5 + title - if source is list of songs you can add a title of songbook, + songbook - True if we want songbook, False if we don't + """ + + if papersize not in ("a4", "a5"): + print("Wrong size of paper!", file=sys.stderr) + exit(1) + + if os.path.isdir(source[0]): + source = [os.path.join(source[0], x) for x in os.listdir(source[0])] + + if songbook: + songbook_file = os.path.join(sb.repo_dir(), "songbooks/default.songbook.yaml") + songbook = sb.load_songbook_spec_from_yaml(songbook_file, + title = title_of_songbook, + songFiles = source) + return sb2t.create_ready_tex(songbook, papersize) + else: + head = f"single_p.tex" + foot = f"single_s.tex" + + with open("src/formats/" + head) as f: + content = f.read() + + content = (content + .replace(":title:", title_of_songbook) + .replace(":paper:", "paper"+ papersize) + .replace(":fontsize:", "19pt" if papersize=="a4" else "14pt")) + + content += "".join([s2t.song2tex(file) for file in source]) + + with open("src/formats/" + foot) as f: + content += f.read() + + return print(content) + + +def main(): + if len(sys.argv) <= 4: + print("Usage: python3 songs2tex.py TITLE XML_SONG_FILES...", file=sys.stderr) + exit(1) + create_ready_tex(sys.argv[1] != 'single', source=sys.argv[4:], papersize=sys.argv[2], + title_of_songbook=sys.argv[3]) + + +if __name__ == "__main__": + main() diff --git a/src/lib/any_index_generator.py b/src/lib/any_index_generator.py new file mode 100644 index 00000000..ed474a79 --- /dev/null +++ b/src/lib/any_index_generator.py @@ -0,0 +1,63 @@ +import os +import sys +import icu +import src.lib.songbook as sb +from lxml import etree + +# def name_of_file(song): +# return os.path.splitext(os.path.split(song)[1])[0] + + +def create_index(list_of_songs_meta, song2key=(lambda x:x.genre()) ): + idx=dict() + + for song in list_of_songs_meta: + key = song2key(song) + if key: + if key in idx: + l = idx[key] + else: + l = [] + idx[key] = l + l.append(song) + return idx + +def index2dom(idx, parent): + keys = list(idx.keys()) + + collator = icu.Collator.createInstance(icu.Locale('pl_PL.UTF-8')) + keys.sort(key=lambda x: collator.getSortKey(x)) + + for k in keys: + v = idx[k] + d = etree.SubElement(parent, "div") + t = etree.SubElement(d, "span") + t.text = k + ul = etree.SubElement(d, "ul") + for song in v: + li = etree.SubElement(ul, "li") + a = etree.SubElement(li, "a", attrib={"href": song.base_file_name()+".xhtml"}) + a.text = song.effectiveTitle() + +def makeIndex(title, list_of_songs_meta, out_path, song2key=(lambda x:x.genre())): + tree = etree.parse(os.path.join(sb.repo_dir(), "./src/epub/templates/index.xhtml")) + body = tree.getroot().find(".//{http://www.w3.org/1999/xhtml}body") + h1 = tree.getroot().find(".//{http://www.w3.org/1999/xhtml}h1") + h1.text = title + idx = create_index(list_of_songs_meta, song2key) + index2dom(idx, body) + et = etree.ElementTree(tree.getroot()) + et.write(out_path, pretty_print=True, method='xml', encoding='utf-8', xml_declaration=True) + + +def main(): + songbook_file = os.path.join(sb.repo_dir(), "songbooks/default.songbook.yaml") if len(sys.argv) == 1 else sys.argv[1] + songbook = sb.load_songbook_spec_from_yaml(songbook_file) + target_dir = os.path.join(sb.repo_dir(), "build") + + makeIndex("Gatunki", songbook.list_of_songs(), os.path.join(target_dir, "genres.html"), lambda x:(x.genre() if not x.is_alias() else None)) + makeIndex("Wykonawcy", songbook.list_of_songs(), os.path.join(target_dir, "artists.html"), lambda x:(x.artist() if not x.is_alias() else None)) + # create_index_xhtml(songbook.list_of_songs(), target_dir) + +if __name__ == '__main__': + main() \ No newline at end of file diff --git a/src/lib/list_of_songs.py b/src/lib/list_of_songs.py new file mode 100644 index 00000000..11bc33f4 --- /dev/null +++ b/src/lib/list_of_songs.py @@ -0,0 +1,101 @@ +from lxml import etree +import os +import icu #do sortowania po polskich znakach + +class SongMeta: + def __init__(self, title='', alias='', path='', genre='', artist=''): + self._title = title if title else '' + self._alias = alias if alias else '' + self._plik = path + self._genre = genre if genre else None + self._artist = artist if artist else None + + def __repr__(self) -> str: + return "{" + "File:{} Title:{} Alias:{} Artist:{} Genre:{}".format(self.plik(), self._title, self._alias, self._artist, self._genre) + "}" + + def base_file_name(self): + return os.path.splitext(os.path.basename(self.plik()))[0] + + @staticmethod + def parseDOM(root, path): + def elementTextOrNone(elem): + return elem.text if elem is not None else None + + return SongMeta( + title=root.get('title'), + alias=elementTextOrNone(root.find('{*}alias')), + path=path, + genre=elementTextOrNone(root.find('{*}genre')), + artist=elementTextOrNone(root.find('{*}artist')), + ) + + def effectiveTitle(self): + return self._title + + def aliases(self): + return [self._alias] if (self._alias and self._alias != "") else [] + + def plik(self): + return self._plik + + def is_alias(self): + return False + + def artist(self): + return self._artist + + def genre(self): + return self._genre + +class AliasMeta: + def __init__(self, alias, song_meta): + self._song_meta = song_meta + self._alias = alias + + def __repr__(self) -> str: + return "{" + "Alias:{}->{}".format(self._alias, self._song_meta) + "}" + + def base_file_name(self): + return self._song_meta.base_file_name() + + def effectiveTitle(self): + return self._alias + + def mainTitle(self): + return self._song_meta.effectiveTitle() + + def aliases(self): + return self._song_meta.aliases() + + def artist(self): + return self._song_meta.artist() + + def genre(self): + return self._song_meta.genre() + + def is_alias(self): + return True + + +def add_song(path, lista): + tree = etree.parse(path) + song = SongMeta.parseDOM(tree.getroot(), path) + for a in song.aliases(): + lista.append(AliasMeta(a, song)) + lista.append(song) + +def list_of_song_from_files(files): + list_od_meta = [] + for file in files: + add_song(file, list_od_meta) + collator = icu.Collator.createInstance(icu.Locale('pl_PL.UTF-8')) + list_od_meta.sort(key=lambda x: collator.getSortKey(x.effectiveTitle())) + return list_od_meta + +def list_of_song(path_in): + files = [] + for song in os.listdir(path_in): + if os.path.splitext(song)[1] == '.xml': + path = path_in + "/" + song + files.append(path) + return list_of_song_from_files(files) \ No newline at end of file diff --git a/src/lib/read_song_xml.py b/src/lib/read_song_xml.py new file mode 100644 index 00000000..bff97f0f --- /dev/null +++ b/src/lib/read_song_xml.py @@ -0,0 +1,148 @@ +# File parsing song in xml + +from lxml import etree +from enum import Enum + +class RowChunk: # obsługuje akordy + def __init__(self, chord='', content=None): + self.chord = chord + if content is None: + self.content = '' + else: + self.content = content.strip('\t\n') + + +class RowType(Enum): + FIRST = 'F' + FIRST_SPECIAL = 'FS' + MIDDLE = 'M' + LAST = 'L' + SINGLE = 'S' + + +class Row: + def __init__(self, row_type=RowType.MIDDLE, new_chords=False, bis=False, chunks=None, instr=False, sidechords=None): + self.row_type = row_type + self.new_chords = new_chords + self.chunks = [] if chunks is None else chunks + self.bis = bis + self.instr = instr + self.sidechords = sidechords + + @staticmethod + def parseDOM(root, bis=False): + if root.text: + chunks = [RowChunk(content=root.text)] + else: + chunks = [] + for chunk in root.getchildren(): + chunks.append(RowChunk(chord=chunk.attrib['a'], content=chunk.tail)) + return Row( + new_chords=root.attrib.get('important_over', 'false')=='true', + bis=bis, + chunks=chunks, + instr=(root.attrib.get('style', '')=='instr'), + sidechords=root.attrib.get('sidechords', None)) + + +class BlockType(Enum): + VERSE = 'V' + CHORUS = 'C' + INSTRUMENTAL = 'I' + OTHER = 'O' + + @staticmethod + def parse(s): + return { + 'verse': BlockType.VERSE, + 'chorus': BlockType.CHORUS, + 'instrumental': BlockType.INSTRUMENTAL, + 'other': BlockType.OTHER + }[s] + + +class Block: + def __init__(self, block_type=BlockType.VERSE, rows=None): + self.block_type = block_type + self.rows = [] if rows is None else rows + + @staticmethod + def parseDOM(root, linked=False): + block_type = BlockType.parse(root.attrib['type']) + rows = [] + for child in root.getchildren(): + if child.tag == '{http://21wdh.staszic.waw.pl}bis': + bis_rows = [Row.parseDOM(row, bis=True) for row in child.findall('{*}row')] + bis_times = int(child.attrib.get('times', '2')) + bis_rows[-1].bis = bis_times + rows += bis_rows + else: + rows.append(Row.parseDOM(child)) + if len(rows) == 1: + rows[0].row_type = RowType.SINGLE + elif len(rows) > 1: + rows[0].row_type = RowType.FIRST_SPECIAL + rows[-1].row_type = RowType.LAST + if linked: + for row in rows: + row.new_chords = False + return Block(block_type=block_type, rows=rows) + + +class Song: + def __init__(self, title='', text_author='', composer='', artist='', original_title='', translator='', alias='', + comment='', music_source='', album='', blocks=None, metre='', barre=''): + self.title = title if title else '' + self.text_author = text_author if text_author else '' + self.composer = composer if composer else '' + self.artist = artist if artist else '' + self.original_title = original_title if original_title else '' + self.translator = translator if translator else '' + self.alias = alias if alias else '' + self.comment = comment if comment else '' + self.blocks = [] if blocks is None else blocks + self.music_source = music_source if music_source else '' + self.album = album if album else '' + self.metre = metre if metre else '' + self.barre = barre if barre else '' + + @staticmethod + def parseDOM(root): + # A child of 'lyric' element may either be a text block, a reference to a text block (e.g. to a chorus), or a tablature. + text_blocks = root.findall('{*}lyric/{*}block') + + def elementTextOrNone(elem): + return elem.text if elem is not None else None + + def get_attrib(elem, a): + return elem.attrib.get(a) if elem is not None else None + + def flatten(block): + return Block.parseDOM(block) if 'blocknb' not in block.attrib else Block.parseDOM( + text_blocks[int(block.attrib['blocknb']) - 1], linked=True) + + blocks = [flatten(block) for block in root.find('{*}lyric').getchildren() if + block.tag != '{http://21wdh.staszic.waw.pl}tabbs'] + + x = root.xpath("./s:music/s:guitar/@barre", namespaces={"s": "http://21wdh.staszic.waw.pl"}) + return Song( + title=root.get('title'), + text_author=elementTextOrNone(root.find('{*}text_author')), + composer=elementTextOrNone(root.find('{*}composer')), + artist=elementTextOrNone(root.find('{*}artist')), + original_title=elementTextOrNone(root.find('{*}original_title')), + translator=elementTextOrNone(root.find('{*}translator')), + comment=elementTextOrNone(root.find('{*}comment')), + alias=elementTextOrNone(root.find('{*}alias')), + blocks=blocks, + metre=get_attrib(root.find('{*}music'), 'metre'), + barre=x[0] if x else None, + album=elementTextOrNone(root.find('{*}album')), + music_source=elementTextOrNone(root.find('{*}music_source')) + ) + + +def parse_song_xml(path): + tree = etree.parse(path) + song = Song.parseDOM(tree.getroot()) + return song diff --git a/src/lib/songbook.py b/src/lib/songbook.py new file mode 100644 index 00000000..a99b0ea3 --- /dev/null +++ b/src/lib/songbook.py @@ -0,0 +1,100 @@ +import yaml +import glob, os +import uuid +import hashlib +import src.lib.list_of_songs as loslib + +def repo_dir(): + return os.path.dirname(os.path.realpath(__file__))+"/../.." + +# If the path starts from "./" we assume its +def resolvePath(path, start): + if path.startswith("./"): + return os.path.join(start, path) + else: + return os.path.join(repo_dir(), path) + +def md5(str): + m = hashlib.md5() + m.update(str.encode('utf-8')) + return m.hexdigest() + +class SongbookSpec: + def __init__(self, spec, specFile): + self.spec = spec["songbook"] + self.basedir = os.path.dirname(specFile) + self.specFile = specFile + + def __str__(self): + return str(self.spec) + + def list_of_songs(self): + files = [] + for s in self.spec["songs"]: + files.extend(glob.glob(os.path.join(repo_dir(), "./" + s["glob"]), recursive=True)) + return loslib.list_of_song_from_files(files) + + def title(self): + return self.spec["title"] if "title" in self.spec else "Śpiewnik" + + def subtitle(self): + return self.spec["subtitle"] if "subtitle" in self.spec else "" + + def url(self): + return self.spec["url"] if "url" in self.spec else "" + + def id(self): + if "id" in self.spec: + return self.spec["id"] + if "uuid" in self.spec: + return self.spec["uuid"] + return md5(self.specFile) + + def uuid(self): + return self.spec["uuid"] if "uuid" in self.spec else uuid.UUID(md5(self.id())) + + def publisher(self): + return self.spec["publisher"] if "publisher" in self.spec else "" + + def place(self): + return self.spec["place"] if "place" in self.spec else "" + + def hidden(self): + return self.spec["hidden"] if "hidden" in self.spec else False + + def imagePdfPath(self): + return resolvePath(self.spec["image"]["pdf"] if "image" in self.spec and "pdf" in self.spec["image"] else "songbooks/wdw21/znak21.pdf", start=self.basedir) + + def imageWebPath(self): + if "image" in self.spec: + if "png" in self.spec["image"]: return resolvePath(self.spec["image"]["png"], start=self.basedir) + if "svg" in self.spec["image"]: return resolvePath(self.spec["image"]["svg"], start=self.basedir) + if "jpg" in self.spec["image"]: return resolvePath(self.spec["image"]["jpg"], start=self.basedir) + return resolvePath("songbooks/wdw21/znak21.jpg", start=self.basedir) + + def imageWebExt(self): + if "image" in self.spec: + if "png" in self.spec["image"]: return "png" + if "svg" in self.spec["image"]: return "svg" + if "jpg" in self.spec["image"]: return "jpg" + return "image/jpeg" + + def imageWebMime(self): + if "image" in self.spec: + if "png" in self.spec["image"]: return "image/png" + if "svg" in self.spec["image"]: return "image/svg+xml" + if "jpg" in self.spec["image"]: return "image/jpeg" + return "image/jpeg" + +def load_songbook_spec_from_yaml(filename, title=None, songFiles=None): + with open(filename) as stream: + songbook = yaml.safe_load(stream) + if title: + songbook["songbook"]["title"] = title + if songFiles: + songbook["songbook"]["songs"] = map(lambda s: {"glob": s}, songFiles) + return SongbookSpec(songbook, specFile=os.path.abspath(filename)) + +def songbooks(): + print("searching: " + os.path.join(repo_dir(), "songbooks/*.yaml")) + return map(load_songbook_spec_from_yaml, glob.glob(os.path.join(repo_dir(), "songbooks/*.yaml"))) diff --git a/src/lib/validate_songs.py b/src/lib/validate_songs.py new file mode 100644 index 00000000..3f6cb466 --- /dev/null +++ b/src/lib/validate_songs.py @@ -0,0 +1,23 @@ +from lxml import etree +import sys + +def validateSongs(files): + xmlschema_doc = etree.parse("./_site/song.xsd") + xmlschema = etree.XMLSchema(xmlschema_doc) + + for file in files: + try: + xml_doc = etree.parse(file) + xmlschema.assertValid(xml_doc) + except etree.DocumentInvalid as e: + print(file,": ", e) + except etree.XMLSyntaxError as e: + print(file,": ", e) + +def main(): + if len(sys.argv)>1: + validateSongs(sys.argv[1:]) + else: + print("list of files required"); + +main() \ No newline at end of file diff --git a/src/song2tex.py b/src/song2tex.py deleted file mode 100644 index 8c8af574..00000000 --- a/src/song2tex.py +++ /dev/null @@ -1,149 +0,0 @@ -from lxml import etree -from enum import Enum -from distutils.util import strtobool -import os, sys -import jinja2 -import re - -def tex_escape(text): - """ - :param text: a plain text message - :return: the message escaped to appear correctly in LaTeX - """ - conv = { - '&': r'\&', - '%': r'\%', - '$': r'\$', - '#': r'\#', - '_': r'\_', - '{': r'\{', - '}': r'\}', - '~': r'\textasciitilde{}', - '^': r'\^{}', - '\\': r'\textbackslash{}', - '<': r'\textless{}', - '>': r'\textgreater{}', - '...': r'{\ldots}' - } - if text: - regex = re.compile('|'.join(re.escape(str(key)) for key in sorted(conv.keys(), key = lambda item: - len(item)))) - return regex.sub(lambda match: conv[match.group()], text) - else: - return text - -class RowChunk: - def __init__(self, chord='', content=None): - self.chord = chord - if content is None: - self.content = '' - else: - self.content = content.strip('\t\n') - -class RowType(Enum): - FIRST = 'F' - FIRST_SPECIAL = 'FS' - MIDDLE = 'M' - LAST = 'L' - SINGLE = 'S' - -class Row: - def __init__(self, row_type=RowType.MIDDLE, new_chords=False, bis=False, chunks=[]): - self.row_type = row_type - self.new_chords = new_chords - self.chunks = chunks - self.bis = bis - - @staticmethod - def parseDOM(root, bis=False): - if root.text: - chunks = [RowChunk(content=tex_escape(root.text))] - else: - chunks = [] - for chunk in root.getchildren(): - chunks.append(RowChunk(chord=tex_escape(chunk.attrib['a']), content=tex_escape(chunk.tail))) - return Row(new_chords=strtobool(root.attrib.get('important_over', 'false')), bis=bis, chunks=chunks) - -class BlockType(Enum): - VERSE = 'V' - CHORUS = 'C' - INSTRUMENTAL = 'I' - OTHER = 'O' - - @staticmethod - def parse(s): - return { - 'verse': BlockType.VERSE, - 'chorus': BlockType.CHORUS, - 'instrumental': BlockType.INSTRUMENTAL, - 'other': BlockType.OTHER - }[s] - -class Block: - def __init__(self, block_type=BlockType.VERSE, rows=[]): - self.block_type = block_type - self.rows = rows - - @staticmethod - def parseDOM(root, linked=False): - block_type = BlockType.parse(root.attrib['type']) - rows = [] - for child in root.getchildren(): - if child.tag == '{http://21wdh.staszic.waw.pl}bis': - bis_rows = [Row.parseDOM(row, bis=True) for row in child.findall('{*}row')] - bis_times = int(child.attrib.get('times', '2')) - bis_rows[-1].bis = bis_times - rows += bis_rows - else: - rows.append(Row.parseDOM(child)) - if len(rows) == 1: - rows[0].row_type = RowType.SINGLE - elif len(rows) > 1: - rows[0].row_type = RowType.FIRST_SPECIAL - rows[-1].row_type = RowType.LAST - if linked: - for row in rows: - row.new_chords = False - return Block(block_type=block_type, rows=rows) - -class Song: - def __init__(self, title='', text_author='', composer='', artist='', blocks=[]): - self.title = tex_escape(title) if title else '' - self.text_author = tex_escape(text_author) if text_author else '' - self.composer = tex_escape(composer) if composer else '' - self.artist = tex_escape(artist) if artist else '' - self.blocks = blocks - - @staticmethod - def parseDOM(root): - # A child of 'lyric' element may either be a text block, a reference to a text block (e.g. to a chorus), or a tablature. - text_blocks = root.findall('{*}lyric/{*}block') - flatten = lambda block: Block.parseDOM(block) if 'blocknb' not in block.attrib else Block.parseDOM(text_blocks[int(block.attrib['blocknb'])-1], linked=True) - blocks = [flatten(block) for block in root.find('{*}lyric').getchildren() if block.tag != '{http://21wdh.staszic.waw.pl}tabbs'] - get_text = lambda elem: elem.text if elem is not None else None - return Song( - title = root.get('title'), - text_author = get_text(root.find('{*}text_author')), - composer = get_text(root.find('{*}composer')), - artist = get_text(root.find('{*}artist')), - blocks = blocks - ) - -tree = etree.parse(sys.argv[1]) -song = Song.parseDOM(tree.getroot()) - -latex_jinja_env = jinja2.Environment( - block_start_string = '\BLOCK{', - block_end_string = '}', - variable_start_string = '\VAR{', - variable_end_string = '}', - comment_start_string = '\#{', - comment_end_string = '}', - line_statement_prefix = '%%', - line_comment_prefix = '%#', - trim_blocks = True, - lstrip_blocks = True, - autoescape = False, - loader = jinja2.FileSystemLoader(sys.path[0]) -) -template = latex_jinja_env.get_template('song_template.tex') -print(template.render(song=song)) diff --git a/src/songbook2id.py b/src/songbook2id.py new file mode 100644 index 00000000..3c627daa --- /dev/null +++ b/src/songbook2id.py @@ -0,0 +1,19 @@ +"""This code generate one tex plik from n>=1 songs in xml + and gives tex text on stdout""" + +import os +import sys + +import src.lib.songbook as sb + +def main(): + if len(sys.argv) < 1: + print("Usage: python3 songbook2id.py songbook.yaml", file=sys.stderr) + exit(1) + songbook_file = os.path.join(sb.repo_dir(), "songbooks/default.songbook.yaml") if len(sys.argv) == 1 else sys.argv[1] + songbook = sb.load_songbook_spec_from_yaml(songbook_file) + print(songbook.id()) + + +if __name__ == "__main__": + main() diff --git a/test_epub.sh b/test_epub.sh new file mode 100755 index 00000000..281e1466 --- /dev/null +++ b/test_epub.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +set -e -x + +./render_epub.sh "${@}" +epubcheck ./build/default_all.epub