From ced544890ab9915f9b7fd477616e6d1f665e8a4c Mon Sep 17 00:00:00 2001 From: Albert Cervin Date: Mon, 8 Apr 2024 10:57:01 +0200 Subject: [PATCH] Github CI --- .github/workflows/checks.yaml | 27 +++++++++++++++++++ .github/workflows/manpage.yaml | 49 ++++++++++++++++++++++++++++++++++ dged.1 | 9 +++++++ flake.nix | 7 +++-- mandoc.css | 22 +++++++++++++++ 5 files changed, 112 insertions(+), 2 deletions(-) create mode 100644 .github/workflows/checks.yaml create mode 100644 .github/workflows/manpage.yaml create mode 100644 mandoc.css diff --git a/.github/workflows/checks.yaml b/.github/workflows/checks.yaml new file mode 100644 index 0000000..882dd2a --- /dev/null +++ b/.github/workflows/checks.yaml @@ -0,0 +1,27 @@ +name: Checks + +on: [push] + +concurrency: + group: '${{ github.ref_name }}-checks' + cancel-in-progress: true + +jobs: + build: + strategy: + matrix: + compiler: [ gcc, clang ] + + name: Build dged with ${{ matrix.compiler }} + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v4 + + - name: Install Nix + uses: cachix/install-nix-action@v26 + with: + install_url: https://releases.nixos.org/nix/nix-2.18.1/install + + - name: Build + run: nix build -L .#${{ matrix.compiler }} diff --git a/.github/workflows/manpage.yaml b/.github/workflows/manpage.yaml new file mode 100644 index 0000000..80473e5 --- /dev/null +++ b/.github/workflows/manpage.yaml @@ -0,0 +1,49 @@ +name: Manpage + +on: + - push +# push: +# branches: +# - trunk + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Install Nix + uses: cachix/install-nix-action@v26 + with: + install_url: https://releases.nixos.org/nix/nix-2.18.1/install + + - name: Build Man Page to HTML + run: | + mkdir -p dist + nix run -L nixpkgs#mandoc -- -T html -O style=mandoc.css ./dged.1 > dist/dged.1.html + cp mandoc.css dist/ + + - name: Upload Artifact + uses: actions/upload-pages-artifact@v3 + with: + path: ./dist/ + + deploy: + needs: build + + # Grant GITHUB_TOKEN the permissions required to make a Pages deployment + permissions: + pages: write # to deploy to Pages + id-token: write # to verify the deployment originates from an appropriate source + + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + + runs-on: ubuntu-latest + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/dged.1 b/dged.1 index 3e9102d..12a3628 100644 --- a/dged.1 +++ b/dged.1 @@ -125,6 +125,9 @@ Write the active buffer to Open a file in a new buffer, relative to current working directory. .It find-file-relative Open a file in a new buffer, relative to the active buffer. +.It kill-buffer +Close the buffer and remove it from the editor. Does nothing to the +file on disk. .It switch-buffer Switch to another open buffer. .It buffer-list @@ -160,6 +163,12 @@ described in invoke-command .It C-g abort +.It C-x C-f +find-file +.It C-x C-g +find-file-relative +.It C-k +kill-buffer .It C-x-0 window-close .It C-x-1 diff --git a/flake.nix b/flake.nix index 6f9c8be..522b24d 100644 --- a/flake.nix +++ b/flake.nix @@ -10,8 +10,11 @@ pkgs = nixpkgs.legacyPackages."${system}"; in { - packages.default = pkgs.callPackage ./dged.nix { }; - packages.clang = pkgs.callPackage ./dged.nix { stdenv = pkgs.clangStdenv; }; + packages = rec { + default = pkgs.callPackage ./dged.nix { }; + gcc = default; + clang = pkgs.callPackage ./dged.nix { stdenv = pkgs.clangStdenv; }; + }; } ); } diff --git a/mandoc.css b/mandoc.css new file mode 100644 index 0000000..159b7eb --- /dev/null +++ b/mandoc.css @@ -0,0 +1,22 @@ +:root { + --bg-color: #222; + --fg-color: #ddd; + + --link-color: #eee; + --link-color-hover: #aaa; +} + +body { + background-color: var(--bg-color); + color: var(--fg-color); + padding-left: 2em; + max-width: 72em; +} + +a { + color: var(--link-color); +} + +a:hover { + color: var(--link-color-hover); +}