Skip to content

Commit 295f007

Browse files
authored
Merge pull request #6 from nsumbadze/nlazynpm
Nlazynpm
2 parents 5bb6860 + cddec19 commit 295f007

106 files changed

Lines changed: 5155 additions & 1021 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/cd.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@ jobs:
1010
runs-on: ubuntu-latest
1111
steps:
1212
- name: Checkout code
13-
uses: actions/checkout@v2
13+
uses: actions/checkout@v7
1414
- name: Unshallow repo
1515
run: git fetch --prune --unshallow
1616
- name: Setup Go
17-
uses: actions/setup-go@v1
17+
uses: actions/setup-go@v6
1818
with:
19-
go-version: 1.14.x
19+
go-version: '1.18.x'
2020
- name: Run goreleaser
2121
uses: goreleaser/goreleaser-action@v1
2222
env:

.github/workflows/ci.yml

Lines changed: 17 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -2,35 +2,31 @@ name: Continuous Integration
22

33
on: push
44

5+
permissions:
6+
contents: read
7+
58
jobs:
69
ci:
710
runs-on: ubuntu-latest
11+
strategy:
12+
fail-fast: false
13+
matrix:
14+
go-version:
15+
- '1.18.x'
16+
- 'stable'
817
env:
918
GOFLAGS: -mod=vendor
1019
steps:
1120
- name: Checkout code
12-
uses: actions/checkout@v2
21+
uses: actions/checkout@v7
1322
- name: Setup Go
14-
uses: actions/setup-go@v1
15-
with:
16-
go-version: 1.14.x
17-
- name: Cache build
18-
uses: actions/cache@v1
23+
uses: actions/setup-go@v6
1924
with:
20-
path: ~/.cache/go-build
21-
key: ${{runner.os}}-go-${{hashFiles('**/go.sum')}}
22-
restore-keys: |
23-
${{runner.os}}-go-
24-
- name: Format code
25-
run: |
26-
if [ $(find . ! -path "./vendor/*" -name "*.go" -exec gofmt -s -d {} \;|wc -l) -gt 0 ]; then
27-
find . ! -path "./vendor/*" -name "*.go" -exec gofmt -s -d {} \;
28-
exit 1
29-
fi
25+
go-version: ${{ matrix.go-version }}
26+
cache: true
3027
- name: Test code
31-
run: |
32-
./test.sh
28+
run: go test ./...
29+
- name: Vet code
30+
run: go vet ./...
3331
- name: Build binaries
34-
uses: goreleaser/goreleaser-action@v1
35-
with:
36-
args: --skip-publish --snapshot
32+
run: go build ./...

.gitignore

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,20 @@ TODO.*
1212
# Notes
1313
*.notes
1414

15+
# Local development state
16+
.omo/
17+
.opencode/
18+
.codex/
19+
.claude/
20+
.cursor/
21+
.continue/
22+
.prompts/
23+
.reviews/
24+
.evidence/
25+
.notepads/
26+
.transcripts/
27+
.sessions/
28+
1529
# Tests
1630
test/repos/repo
1731
coverage.txt
@@ -25,4 +39,4 @@ lazynpm
2539
!.circleci/
2640
!.github/
2741

28-
test/git_server/data
42+
test/git_server/data

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,12 @@
44

55
A simple terminal UI for npm commands, written in Go with the [gocui](https://github.com/jroimartin/gocui "gocui") library.
66

7+
This repository is `nsumbadze`'s maintained fork of [`jesseduffield/lazynpm`](https://github.com/jesseduffield/lazynpm). The binary remains `lazynpm`.
8+
9+
## Attribution
10+
11+
`lazynpm` was originally created by Jesse Duffield. This fork preserves the upstream MIT license and copyright attribution; it is maintained independently and doesn't imply upstream endorsement.
12+
713
npm is pretty cool, but some of its workflows are a little too much for somebody with my atrocious short term memory. If I need to link a couple of dependencies to a package I need to do an `npm install` on the package so we're up to date, then cd to each dependency package and `npm install`, then `npm run build`, then `npm link` if it's not already globally linked (and how would I know that it is?) and then cd back to the original package and do `npm link <dependency>` for each dependency. Pretty much every time I'll get halfway through, suspect that I've forgotten a step, then start again from scratch. But who needs a functionining brain when have a tool where every step in the process take one keypress and at a glance you can see how everything is linked up?
814

915
lazynpm is the younger brother of lazygit and lazydocker, and has learnt from both its siblings how best to make life lazier in the terminal so that you can focus on what matters: programming.

docs/Config.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ keybinding:
4949
return: '<esc>' # return to previous menu, will quit if there's nowhere to return
5050
quitWithoutChangingDirectory: 'Q'
5151
togglePanel: '<tab>' # goto the next panel
52+
prevPanel: '<backtab>' # goto the previous panel
5253
prevItem: '<up>' # go one line up
5354
nextItem: '<down>' # go one line down
5455
prevItem-alt: 'k' # go one line up

go.mod

Lines changed: 26 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,53 @@
11
module github.com/jesseduffield/lazynpm
22

3-
go 1.14
3+
go 1.18
44

55
require (
66
github.com/buger/jsonparser v0.0.0-20200322175846-f7e751efca13
77
github.com/cloudfoundry/jibber_jabber v0.0.0-20151120183258-bcc4c8345a21
8-
github.com/creack/pty v1.1.10-0.20191209115840-8ab47f72e854
8+
github.com/creack/pty v1.1.11
99
github.com/fatih/color v1.7.0
1010
github.com/go-errors/errors v1.0.2
11-
github.com/golang/protobuf v1.3.2 // indirect
1211
github.com/integrii/flaggy v1.4.0
1312
github.com/jesseduffield/gocui v0.3.1-0.20200415100931-3c4f0994aca5
1413
github.com/jesseduffield/semver/v3 v3.0.4-0.20200411092651-8f1f2b3d1bc1
15-
github.com/jesseduffield/termbox-go v0.0.0-20200405031649-4dc645f7e8ba // indirect
1614
github.com/kardianos/osext v0.0.0-20190222173326-2bc1f35cddc0
15+
github.com/mattn/go-runewidth v0.0.9
16+
github.com/mgutz/str v1.2.0
17+
github.com/nicksnyder/go-i18n/v2 v2.0.3
18+
github.com/shibukawa/configdir v0.0.0-20170330084843-e180dbdc8da0
19+
github.com/sirupsen/logrus v1.5.0
20+
github.com/spf13/viper v1.6.1
21+
github.com/spkg/bom v0.0.0-20160624110644-59b7046e48ad
22+
github.com/stretchr/testify v1.4.0
23+
github.com/tcnksm/go-gitconfig v0.1.2
24+
golang.org/x/text v0.3.2
25+
gopkg.in/yaml.v2 v2.2.7
26+
)
27+
28+
require (
29+
github.com/davecgh/go-spew v1.1.1 // indirect
30+
github.com/fsnotify/fsnotify v1.4.7 // indirect
31+
github.com/hashicorp/hcl v1.0.0 // indirect
32+
github.com/jesseduffield/termbox-go v0.0.0-20200405031649-4dc645f7e8ba // indirect
1733
github.com/konsorten/go-windows-terminal-sequences v1.0.2 // indirect
1834
github.com/kr/text v0.2.0 // indirect
35+
github.com/magiconair/properties v1.8.1 // indirect
1936
github.com/mattn/go-colorable v0.1.4 // indirect
2037
github.com/mattn/go-isatty v0.0.11 // indirect
21-
github.com/mattn/go-runewidth v0.0.9
22-
github.com/mgutz/str v1.2.0
23-
github.com/nicksnyder/go-i18n/v2 v2.0.3
38+
github.com/mitchellh/mapstructure v1.1.2 // indirect
2439
github.com/niemeyer/pretty v0.0.0-20200227124842-a10e7caefd8e // indirect
2540
github.com/onsi/ginkgo v1.10.3 // indirect
2641
github.com/onsi/gomega v1.7.1 // indirect
2742
github.com/pelletier/go-toml v1.6.0 // indirect
28-
github.com/shibukawa/configdir v0.0.0-20170330084843-e180dbdc8da0
29-
github.com/sirupsen/logrus v1.5.0
43+
github.com/pmezard/go-difflib v1.0.0 // indirect
3044
github.com/spf13/afero v1.2.2 // indirect
45+
github.com/spf13/cast v1.3.0 // indirect
3146
github.com/spf13/jwalterweatherman v1.1.0 // indirect
3247
github.com/spf13/pflag v1.0.5 // indirect
33-
github.com/spf13/viper v1.6.1
34-
github.com/spkg/bom v0.0.0-20160624110644-59b7046e48ad
35-
github.com/stretchr/testify v1.4.0
36-
github.com/tcnksm/go-gitconfig v0.1.2
48+
github.com/subosito/gotenv v1.2.0 // indirect
3749
golang.org/x/net v0.0.0-20200301022130-244492dfa37a // indirect
3850
golang.org/x/sys v0.0.0-20200413165638-669c56c373c4 // indirect
39-
golang.org/x/text v0.3.2
4051
gopkg.in/check.v1 v1.0.0-20200227125254-8fa46927fb4f // indirect
41-
gopkg.in/yaml.v2 v2.2.7
52+
gopkg.in/ini.v1 v1.51.0 // indirect
4253
)

go.sum

Lines changed: 2 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ github.com/coreos/go-semver v0.2.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3Ee
2020
github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e/go.mod h1:F5haX7vjVVG0kc13fIWeqUViNPyEJxv/OmvnBo0Yme4=
2121
github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f/go.mod h1:E3G3o1h8I7cfcXa63jLwjI0eiQQMgzzUDFVpN/nH/eA=
2222
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
23-
github.com/creack/pty v1.1.10-0.20191209115840-8ab47f72e854 h1:NB4neYMzyBsw52kUdkTrQm4Q05ErObCdwLvJptpfJSc=
24-
github.com/creack/pty v1.1.10-0.20191209115840-8ab47f72e854/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
23+
github.com/creack/pty v1.1.11 h1:07n33Z8lZxZ2qwegKbObQohDhXDQxiMMz1NOUGYlesw=
24+
github.com/creack/pty v1.1.11/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
2525
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
2626
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
2727
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
@@ -32,8 +32,6 @@ github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5Kwzbycv
3232
github.com/fsnotify/fsnotify v1.4.7 h1:IXs+QLmnXW2CcXuY+8Mzv/fWEsPGWxqefPtCP5CnV9I=
3333
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
3434
github.com/ghodss/yaml v1.0.0/go.mod h1:4dBDuWmgqj2HViK6kFavaiC9ZROes6MMH2rRYeMEF04=
35-
github.com/go-errors/errors v1.0.1 h1:LUHzmkK3GUKUrL/1gfBUxAHzcev3apQlezX/+O7ma6w=
36-
github.com/go-errors/errors v1.0.1/go.mod h1:f4zRHt4oKfwPJE5k8C9vpYG+aDHdBFUsgrm6/TyX73Q=
3735
github.com/go-errors/errors v1.0.2 h1:xMxH9j2fNg/L4hLn/4y3M0IUsn0M6Wbu/Uh9QlOfBh4=
3836
github.com/go-errors/errors v1.0.2/go.mod h1:psDX2osz5VnTOnFWbDeWwS7yejl+uV3FEWEp4lssFEs=
3937
github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
@@ -47,8 +45,6 @@ github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef/go.mod h1:cIg4er
4745
github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
4846
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
4947
github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
50-
github.com/golang/protobuf v1.3.2 h1:6nsPYzhq5kReh6QImI3k5qWzO4PEbvbIW2cwSfR/6xs=
51-
github.com/golang/protobuf v1.3.2/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
5248
github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ=
5349
github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=
5450
github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1 h1:EGx4pi6eqNxGaHF6qqu48+N2wcFQ5qg5FXgOdqsJ5d8=
@@ -63,16 +59,6 @@ github.com/hpcloud/tail v1.0.0 h1:nfCOvKYfkgYP8hkirhJocXT2+zOD8yUNjXaWfTlyFKI=
6359
github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU=
6460
github.com/integrii/flaggy v1.4.0 h1:A1x7SYx4jqu5NSrY14z8Z+0UyX2S5ygfJJrfolWR3zM=
6561
github.com/integrii/flaggy v1.4.0/go.mod h1:tnTxHeTJbah0gQ6/K0RW0J7fMUBk9MCF5blhm43LNpI=
66-
github.com/jesseduffield/gocui v0.3.1-0.20200405034337-066b5b6ca1ba h1:hHITZ7ar+Ann6hJnoOsKTwjtTIsNN4+4tmUQ0CsI810=
67-
github.com/jesseduffield/gocui v0.3.1-0.20200405034337-066b5b6ca1ba/go.mod h1:2RtZznzYKt8RLRwvFiSkXjU0Ei8WwHdubgnlaYH47dw=
68-
github.com/jesseduffield/gocui v0.3.1-0.20200411093505-aaa030344787 h1:c2+NmVOLsmH9GNKfv8uO/M1rlPkPZHipWNqKlyUAIBI=
69-
github.com/jesseduffield/gocui v0.3.1-0.20200411093505-aaa030344787/go.mod h1:2RtZznzYKt8RLRwvFiSkXjU0Ei8WwHdubgnlaYH47dw=
70-
github.com/jesseduffield/gocui v0.3.1-0.20200413000446-b3ab1240f59e h1:VbSini2EPChm0p4jJDC/xec2IlZKsdmhV9Ki3MYV434=
71-
github.com/jesseduffield/gocui v0.3.1-0.20200413000446-b3ab1240f59e/go.mod h1:2RtZznzYKt8RLRwvFiSkXjU0Ei8WwHdubgnlaYH47dw=
72-
github.com/jesseduffield/gocui v0.3.1-0.20200413011022-782bc212753a h1:9GBaTx6DOEmeqxpB1xnCeqduSF7gzIw/OTxGTIMMv9c=
73-
github.com/jesseduffield/gocui v0.3.1-0.20200413011022-782bc212753a/go.mod h1:2RtZznzYKt8RLRwvFiSkXjU0Ei8WwHdubgnlaYH47dw=
74-
github.com/jesseduffield/gocui v0.3.1-0.20200414115507-5369cdacafa8 h1:Wibt+XTNbVVs6WppRQwi3hKGosm7ivDJ4yFBWwKJCxc=
75-
github.com/jesseduffield/gocui v0.3.1-0.20200414115507-5369cdacafa8/go.mod h1:2RtZznzYKt8RLRwvFiSkXjU0Ei8WwHdubgnlaYH47dw=
7662
github.com/jesseduffield/gocui v0.3.1-0.20200415100931-3c4f0994aca5 h1:LA4n/0Uq26VSL9w+4cLa76BB1W4E90BQk8b0lIME1nE=
7763
github.com/jesseduffield/gocui v0.3.1-0.20200415100931-3c4f0994aca5/go.mod h1:2RtZznzYKt8RLRwvFiSkXjU0Ei8WwHdubgnlaYH47dw=
7864
github.com/jesseduffield/semver/v3 v3.0.4-0.20200411092651-8f1f2b3d1bc1 h1:dYbhdQfMw+9HmcPw53EffJusPOHRRzVuFgt1Q4TQ1OQ=
@@ -91,10 +77,8 @@ github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxv
9177
github.com/konsorten/go-windows-terminal-sequences v1.0.2 h1:DB17ag19krx9CFsz4o3enTrPXyIXCl+2iCXH/aMAp9s=
9278
github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
9379
github.com/kr/logfmt v0.0.0-20140226030751-b84e30acd515/go.mod h1:+0opPa2QZZtGFBFZlji/RkVcI2GknAs/DXo4wKdlNEc=
94-
github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI=
9580
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
9681
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
97-
github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE=
9882
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
9983
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
10084
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
@@ -213,10 +197,6 @@ golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7w
213197
golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
214198
golang.org/x/sys v0.0.0-20190507160741-ecd444e8653b/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
215199
golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
216-
golang.org/x/sys v0.0.0-20200331124033-c3d80250170d h1:nc5K6ox/4lTFbMVSL9WRR81ixkcwXThoiF6yf+R9scA=
217-
golang.org/x/sys v0.0.0-20200331124033-c3d80250170d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
218-
golang.org/x/sys v0.0.0-20200409092240-59c9f1ba88fa h1:mQTN3ECqfsViCNBgq+A40vdwhkGykrrQlYe3mPj6BoU=
219-
golang.org/x/sys v0.0.0-20200409092240-59c9f1ba88fa/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
220200
golang.org/x/sys v0.0.0-20200413165638-669c56c373c4 h1:opSr2sbRXk5X5/givKrrKj9HXxFpW2sdCiP8MJSKLQY=
221201
golang.org/x/sys v0.0.0-20200413165638-669c56c373c4/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
222202
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=

0 commit comments

Comments
 (0)