From c9acdc9fffd55143738352cbbddebfb7e8306ac4 Mon Sep 17 00:00:00 2001 From: Dylan Knutson Date: Fri, 29 Aug 2025 17:34:56 +0000 Subject: [PATCH] delta diff tool --- .devcontainer/Dockerfile.devcontainer | 18 ++++++++++++- .devcontainer/devcontainer.json | 37 ++++++++++++--------------- 2 files changed, 33 insertions(+), 22 deletions(-) diff --git a/.devcontainer/Dockerfile.devcontainer b/.devcontainer/Dockerfile.devcontainer index d854144..268346f 100644 --- a/.devcontainer/Dockerfile.devcontainer +++ b/.devcontainer/Dockerfile.devcontainer @@ -1,6 +1,22 @@ FROM mcr.microsoft.com/devcontainers/rust:1-1-bookworm RUN sudo apt update && \ - sudo apt install -qqy --no-install-recommends --no-install-suggests sqlite3 && \ + sudo apt install -qqy --no-install-recommends --no-install-suggests \ + sqlite3 \ + && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* + +# Install & configure delta diff tool +RUN wget -O- https://github.com/dandavison/delta/releases/download/0.18.2/git-delta_0.18.2_$(dpkg --print-architecture).deb > /tmp/git-delta.deb && \ + sudo dpkg -i /tmp/git-delta.deb && \ + rm /tmp/git-delta.deb + +RUN git config --system core.pager "delta" && \ + git config --system interactive.diffFilter "delta --color-only" && \ + git config --system delta.navigate "true" && \ + git config --system delta.dark "true" && \ + git config --system delta.side-by-side "true" && \ + git config --system merge.conflictstyle "zdiff3" && \ + git config --system diff.algorithm "histogram" && \ + git config --system diff.colorMoved "default" diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index 1c7cb5e..9106480 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,8 +1,7 @@ // For format details, see https://aka.ms/devcontainer.json. For config options, see the // README at: https://github.com/devcontainers/templates/tree/main/src/rust { - "name": "Rust", - // Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile + "name": "Pawctioneer Dev Container", "build": { "dockerfile": "Dockerfile.devcontainer", "context": "." @@ -17,28 +16,24 @@ "customizations": { "vscode": { "extensions": [ + "eamodio.gitlens", + "ms-azuretools.vscode-docker", + "qwtel.sqlite-viewer", + "rust-lang.rust-analyzer", "serayuzgur.crates", - "tamasfe.even-better-toml", - "eamodio.gitlens" + "tamasfe.even-better-toml" ] } }, - // Use 'mounts' to make the cargo cache persistent in a Docker Volume. - // "mounts": [ - // { - // "source": "devcontainer-cargo-cache-${devcontainerId}", - // "target": "/usr/local/cargo", - // "type": "volume" - // } - // ] - // Features to add to the dev container. More info: https://containers.dev/features. - // "features": {}, - // Use 'forwardPorts' to make a list of ports inside the container available locally. - // "forwardPorts": [], - // Use 'postCreateCommand' to run commands after the container is created. + "containerEnv": { + "GIT_EDITOR": "cursor --wait" + }, + "mounts": [ + { + "source": "devcontainer-cargo-cache-${devcontainerId}", + "target": "/usr/local/cargo", + "type": "volume" + } + ], "postCreateCommand": "sudo apt update && sudo apt install -y sqlite3" - // Configure tool-specific properties. - // "customizations": {}, - // Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root. - // "remoteUser": "root" } \ No newline at end of file