Skip to content

Commit

Permalink
Add icons & start rescan
Browse files Browse the repository at this point in the history
  • Loading branch information
deanishe committed Mar 31, 2018
1 parent 8027144 commit dadd07f
Show file tree
Hide file tree
Showing 5 changed files with 279 additions and 140 deletions.
64 changes: 46 additions & 18 deletions cli.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,19 @@ import (
"github.com/deanishe/awgo/util"
)

var (
iconReload = &aw.Icon{Value: "icons/reload.png"}
iconDocs = &aw.Icon{Value: "icons/docs.png"}
iconHelp = &aw.Icon{Value: "icons/help.png"}
iconIssue = &aw.Icon{Value: "icons/issue.png"}
iconOff = &aw.Icon{Value: "icons/off.png"}
iconOn = &aw.Icon{Value: "icons/on.png"}
iconTrash = &aw.Icon{Value: "icons/trash.png"}
iconUpdateAvailable = &aw.Icon{Value: "icons/update-available.png"}
iconUpdateOK = &aw.Icon{Value: "icons/update-ok.png"}
iconURL = &aw.Icon{Value: "icons/url.png"}
)

func runConfig() {
log.Printf(`filtering config "%s" ...`, query)
}
Expand All @@ -26,8 +39,6 @@ func runConfig() {
func runScan() {
wf.TextErrors = true

var projs []Project

if force {
if conf.FindInterval != 0 {
conf.FindInterval = time.Nanosecond * 1
Expand All @@ -40,27 +51,24 @@ func runScan() {
}
}

for proj := range scan() {
projs = append(projs, proj)
// log.Println(p)
}

log.Printf("%d project(s)", len(projs))

if err := wf.Cache.StoreJSON("projects.json", projs); err != nil {
sm := NewScanManager(conf)
if err := sm.Scan(); err != nil {
wf.FatalError(err)
}
}

func runSearch() {

var projs []Project
sm := NewScanManager(conf)

log.Printf(`searching for "%s" ...`, query)
if query != "" {
log.Printf(`searching for "%s" ...`, query)
}

// Run "alfsubl rescan" in background if need be
if scanDue() && !aw.IsRunning("rescan") {
log.Println("recanning for projects ...")
if sm.ScanDue() && !aw.IsRunning("rescan") {
log.Println("rescanning for projects ...")
cmd := exec.Command(os.Args[0], "rescan")
if err := aw.RunInBackground("rescan", cmd); err != nil {
log.Printf(`error running "%s rescan": %v`, os.Args[0], err)
Expand All @@ -69,18 +77,38 @@ func runSearch() {
}

// Load data
if wf.Cache.Exists(cacheKey) {
if err := wf.Cache.LoadJSON(cacheKey, &projs); err != nil {
wf.FatalError(err)
}
projs, err := sm.Load()
if err != nil {
wf.FatalError(err)
}

if len(projs) == 0 && aw.IsRunning("rescan") {

wf.Rerun(0.3)

wf.NewItem("Loading projects…").
Subtitle("Results will refresh in a few seconds").
Valid(false).
Icon(iconReload)

wf.SendFeedback()
return
}

for _, proj := range projs {
wf.NewItem(proj.Name()).
it := wf.NewItem(proj.Name()).
Subtitle(util.PrettyPath(proj.Path)).
Valid(true).
Arg(proj.Path).
UID(proj.Path).
IsFile(true)

if len(proj.Folders) > 0 {
it.NewModifier("cmd").
Subtitle("Open project folder").
Arg(proj.Folders[0]).
Valid(true)
}
}

if query != "" {
Expand Down
18 changes: 9 additions & 9 deletions info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -377,63 +377,63 @@ exit $st</string>
<key>0D6DB001-6C1A-4973-BD3C-0CD4706096CB</key>
<dict>
<key>xpos</key>
<integer>320</integer>
<integer>230</integer>
<key>ypos</key>
<integer>50</integer>
</dict>
<key>0F77272E-39A5-44AD-BB24-462F199B5590</key>
<dict>
<key>xpos</key>
<integer>720</integer>
<integer>630</integer>
<key>ypos</key>
<integer>330</integer>
</dict>
<key>1958F9DC-5B69-4F0C-B4DC-FCBAE0AB1EF8</key>
<dict>
<key>xpos</key>
<integer>520</integer>
<integer>430</integer>
<key>ypos</key>
<integer>330</integer>
</dict>
<key>31AB2913-1B83-4976-BE10-2526F543F5E3</key>
<dict>
<key>xpos</key>
<integer>520</integer>
<integer>430</integer>
<key>ypos</key>
<integer>470</integer>
</dict>
<key>36EE8FBB-FCCE-483E-AFCE-AC73906117C3</key>
<dict>
<key>xpos</key>
<integer>320</integer>
<integer>230</integer>
<key>ypos</key>
<integer>470</integer>
</dict>
<key>506077C9-6BF8-401D-B34D-ACAEAA975F30</key>
<dict>
<key>xpos</key>
<integer>520</integer>
<integer>430</integer>
<key>ypos</key>
<integer>50</integer>
</dict>
<key>7D52E522-509F-4E58-8CB7-B705389C78CB</key>
<dict>
<key>xpos</key>
<integer>720</integer>
<integer>630</integer>
<key>ypos</key>
<integer>50</integer>
</dict>
<key>9981F708-6C83-44CD-BC06-B6C10A2B00F6</key>
<dict>
<key>xpos</key>
<integer>320</integer>
<integer>230</integer>
<key>ypos</key>
<integer>330</integer>
</dict>
<key>E934D964-B0B8-4A32-8DF3-4692A8F26E97</key>
<dict>
<key>xpos</key>
<integer>520</integer>
<integer>430</integer>
<key>ypos</key>
<integer>190</integer>
</dict>
Expand Down
4 changes: 2 additions & 2 deletions modd.conf
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,14 @@ icons/icons.txt {

**/*_test.go
!vendor/** {
prep: go test -v @dirmods
prep: go test @dirmods
}

modd.conf
**/*.go
!**/*_test.go
!vendor/** {
prep: go test -v @dirmods && \
prep: go test @dirmods && \
./bin/build && \
./alfsubl search "omegat"
}
Loading

0 comments on commit dadd07f

Please sign in to comment.