Jelajahi Sumber

Refactorings

Jguer 8 tahun lalu
induk
melakukan
5787b3e5d3
3 mengubah file dengan 32 tambahan dan 13 penghapusan
  1. 16 5
      src/aur.go
  2. 12 5
      src/main.go
  3. 4 3
      src/repo.go

+ 16 - 5
src/aur.go

@@ -3,7 +3,6 @@ package main
 import (
 	"encoding/json"
 	"fmt"
-	c "github.com/fatih/color"
 	"net/http"
 	"sort"
 )
@@ -64,20 +63,32 @@ func searchAurPackages(pkg string) (search AurSearch) {
 }
 
 func (r AurSearch) printSearch(index int) (err error) {
-	yellow := c.New(c.FgYellow).SprintFunc()
-	green := c.New(c.FgGreen).SprintFunc()
 
 	for i, result := range r.Results {
 		if index != SearchMode {
-			fmt.Printf("%d aur/%s %s (%d)\n    %s\n", i+index, yellow(result.Name), green(result.Version), result.NumVotes, result.Description)
+			fmt.Printf("%d aur/\x1B[33m%s\033[0m \x1B[36m%s\033[0m (%d)\n    %s\n",
+				i+index, result.Name, result.Version, result.NumVotes, result.Description)
 		} else {
-			fmt.Printf("aur/%s %s (%d)\n    %s\n", yellow(result.Name), green(result.Version), result.NumVotes, result.Description)
+			fmt.Printf("aur/\x1B[33m%s\033[0m \x1B[36m%s\033[0m (%d)\n    %s\n",
+				result.Name, result.Version, result.NumVotes, result.Description)
 		}
 	}
 
 	return
 }
 
+func (r AurSearch) installAurArray(num []int, index int) (err error) {
+	for _, i := range num {
+		fmt.Printf("%+v\n\n", r.Results[i-index])
+		err = r.Results[i-index].installResult()
+		if err != nil {
+			return err
+		}
+	}
+
+	return err
+}
+
 func (a AurResult) installResult() error {
 	return nil
 }

+ 12 - 5
src/main.go

@@ -4,7 +4,6 @@ import (
 	"bufio"
 	"flag"
 	"fmt"
-	c "github.com/fatih/color"
 	"os"
 	"strconv"
 	"strings"
@@ -16,11 +15,15 @@ const PacmanBin string = "/usr/bin/pacman"
 // SearchMode is search without numbers
 const SearchMode int = -1
 
+// BuildDir is the root for package building
+const BuildDir string = "/tmp/yay/"
+
+// BaseURL givers the AUR default address
+const BaseURL string = "https://aur.archlinux.org"
+
 func getNums() (numbers []int, err error) {
 	var numberString string
-	green := c.New(c.FgGreen).SprintFunc()
-
-	fmt.Printf("%s\nNumbers:", green("Type numbers to install. Separate each number with a space."))
+	fmt.Printf("\x1B[32m%s\033[0m\nNumbers:", "Type numbers to install. Separate each number with a space.")
 	reader := bufio.NewReader(os.Stdin)
 	numberString, err = reader.ReadString('\n')
 	if err != nil {
@@ -45,14 +48,18 @@ func getNums() (numbers []int, err error) {
 func defaultMode(pkg string) {
 	aurRes := searchAurPackages(pkg)
 	repoRes, err := SearchPackages(pkg)
+	if repoRes.Resultcount == 0 && aurRes.Resultcount == 0 {
+		os.Exit(1)
+	}
 	repoRes.printSearch(0)
 	err = aurRes.printSearch(repoRes.Resultcount)
+
 	nums, err := getNums()
 	if err != nil {
 		fmt.Println(err)
 		os.Exit(1)
 	}
-	fmt.Println(nums)
+	aurRes.installAurArray(nums, repoRes.Resultcount)
 
 }
 

+ 4 - 3
src/repo.go

@@ -57,7 +57,6 @@ func SearchPackages(pkg string) (search RepoSearch, err error) {
 			i = true
 		}
 	}
-
 	return
 }
 
@@ -67,9 +66,11 @@ func (s RepoSearch) printSearch(index int) (err error) {
 
 	for i, result := range s.Results {
 		if index != SearchMode {
-			fmt.Printf("%d %s/%s %s\n%s\n", i, result.Repository, yellow(result.Name), green(result.Version), result.Description)
+			fmt.Printf("%d %s/\x1B[33m%s\033[0m \x1B[36m%s\033[0m\n%s\n",
+				i, result.Repository, result.Name, result.Version, result.Description)
 		} else {
-			fmt.Printf("%s/%s %s\n%s\n", result.Repository, yellow(result.Name), green(result.Version), result.Description)
+			fmt.Printf("%s/\x1B[33m%s\033[0m \x1B[36m%s\033[0m\n%s\n",
+				result.Repository, yellow(result.Name), green(result.Version), result.Description)
 		}
 	}