Compare commits
4 Commits
413731df47
...
v1.0.1
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a2900682a0 | ||
|
|
9d04d8c711 | ||
|
|
e24922828c | ||
|
|
725d04aeed |
11
.gitattributes
vendored
Normal file
11
.gitattributes
vendored
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
# Keep the release archive to what Sublime actually loads. Package Control
|
||||||
|
# installs whatever the tag's zip contains, and GitHub builds that zip with
|
||||||
|
# git archive, which honours export-ignore.
|
||||||
|
.claude/ export-ignore
|
||||||
|
tests/ export-ignore
|
||||||
|
.gitattributes export-ignore
|
||||||
|
.gitignore export-ignore
|
||||||
|
diff.sublime-project export-ignore
|
||||||
|
TODO.txt export-ignore
|
||||||
|
channel.json export-ignore
|
||||||
|
repository.json export-ignore
|
||||||
@@ -1 +1 @@
|
|||||||
3.8
|
3.14
|
||||||
|
|||||||
54
README.md
54
README.md
@@ -4,18 +4,49 @@ Review what a coding agent changed without leaving Sublime Text: the whole file,
|
|||||||
insertions in green, in the file's own syntax highlighting. Stage, unstage or discard the file, or jump
|
insertions in green, in the file's own syntax highlighting. Stage, unstage or discard the file, or jump
|
||||||
to the real file at the caret's line.
|
to the real file at the caret's line.
|
||||||
|
|
||||||
Install: symlink this directory into `Packages` as `vDiff` (Python 3.8 plugin host, no dependencies).
|
Needs Sublime Text build 4213 or later, the build that replaced the Python 3.8 plugin host with
|
||||||
On first use vDiff writes the scopes it paints changes with into `Packages/User/<your scheme>.sublime-color-scheme`;
|
Python 3.14. No dependencies.
|
||||||
Sublime loads a scheme file it has not seen before only at startup, so restart it once to get the colours.
|
|
||||||
|
|
||||||
Command Palette:
|
## Install with Package Control
|
||||||
|
|
||||||
|
vDiff is distributed through the shared channel at
|
||||||
|
[vaclavt/sublime-chanel](https://github.com/vaclavt/sublime-chanel), not the default one. Open
|
||||||
|
**Preferences → Package Settings → Package Control → Settings** and put the channel URL in the
|
||||||
|
`channels` array of the right-hand (User) pane:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"channels": [
|
||||||
|
"https://packagecontrol.io/channel_v3.json",
|
||||||
|
"https://raw.githubusercontent.com/vaclavt/sublime-chanel/main/channel.json"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
Keep `https://packagecontrol.io/channel_v3.json` in the list — dropping it hides every default
|
||||||
|
package. Then run **Package Control: Install Package** from the Command Palette and pick **vDiff**.
|
||||||
|
Upgrades arrive through **Package Control: Upgrade Package** like any other package.
|
||||||
|
|
||||||
|
## Install from source
|
||||||
|
|
||||||
|
Clone or symlink the repository into the Sublime Text `Packages` directory as `vDiff`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/vaclavt/vdiff.git \
|
||||||
|
"$HOME/Library/Application Support/Sublime Text/Packages/vDiff"
|
||||||
|
```
|
||||||
|
|
||||||
|
Use one method or the other, not both: an unpacked `Packages/vDiff` directory overrides the
|
||||||
|
`vDiff.sublime-package` that Package Control installs.
|
||||||
|
|
||||||
|
## Command Palette
|
||||||
|
|
||||||
- **vDiff: Changed Files** – uncommitted changes (staged, unstaged, untracked). Arrowing through
|
- **vDiff: Changed Files** – uncommitted changes (staged, unstaged, untracked). Arrowing through
|
||||||
the list previews each file; Enter keeps it, Esc goes back to what was shown.
|
the list previews each file; Enter keeps it, Esc goes back to what was shown.
|
||||||
- **vDiff: Recent Commits** – last N commits, then the files of the chosen commit. A key binding to
|
- **vDiff: Recent Commits** – last N commits, then the files of the chosen commit. A key binding to
|
||||||
`vdiff_commits` with `{"sha": "HEAD"}` skips the list and reviews the last commit directly.
|
`vdiff_commits` with `{"sha": "HEAD"}` skips the list and reviews the last commit directly.
|
||||||
|
|
||||||
Keys inside the review view:
|
## Keys inside the review view
|
||||||
|
|
||||||
| key | action |
|
| key | action |
|
||||||
|---|---|
|
|---|---|
|
||||||
@@ -32,3 +63,16 @@ Keys inside the review view:
|
|||||||
| Esc | close the view |
|
| Esc | close the view |
|
||||||
|
|
||||||
The header links do the same with the mouse. Settings: `vDiff.sublime-settings`.
|
The header links do the same with the mouse. Settings: `vDiff.sublime-settings`.
|
||||||
|
|
||||||
|
## The channel
|
||||||
|
|
||||||
|
`repository.json` in this repository is a Package Control **repository** file: its top-level key
|
||||||
|
is `packages`, and it describes vDiff itself — where the code lives and which releases exist.
|
||||||
|
`"tags": true` means Package Control reads the repository's git tags, so publishing a release is
|
||||||
|
just `git tag v1.0.1 && git push --tags`. A package whose tags are all unpushed resolves to zero
|
||||||
|
releases, and Package Control drops it from the list without an error — if vDiff is missing from
|
||||||
|
**Install Package**, check the tags reached GitHub.
|
||||||
|
|
||||||
|
The channel itself — the `channels`-array file listing `repository.json` for vDiff and vaclavt's
|
||||||
|
other packages — lives in [vaclavt/sublime-chanel](https://github.com/vaclavt/sublime-chanel), not
|
||||||
|
here. Add a package there instead of in this repository.
|
||||||
|
|||||||
21
repository.json
Normal file
21
repository.json
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"$schema": "sublime://packagecontrol.io/schemas/repository",
|
||||||
|
"schema_version": "4.0.0",
|
||||||
|
"packages": [
|
||||||
|
{
|
||||||
|
"name": "vDiff",
|
||||||
|
"details": "https://github.com/vaclavt/vdiff",
|
||||||
|
"description": "Review uncommitted changes and commits in Sublime Text: whole files with deletions in red and insertions in green, in the file's own syntax highlighting",
|
||||||
|
"author": "vaclavt",
|
||||||
|
"labels": ["git", "diff", "review", "vcs"],
|
||||||
|
"releases": [
|
||||||
|
{
|
||||||
|
"sublime_text": ">=4213",
|
||||||
|
"platforms": ["*"],
|
||||||
|
"python_versions": ["3.14"],
|
||||||
|
"tags": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user