Skip to content

Commit

Permalink
refactor: 鈾伙笍 move filter/content to new package (#148)
Browse files Browse the repository at this point in the history
  • Loading branch information
Equationzhao committed Jan 16, 2024
1 parent 39a340f commit 2794645
Show file tree
Hide file tree
Showing 23 changed files with 115 additions and 109 deletions.
2 changes: 1 addition & 1 deletion internal/cli/display.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ import (
"errors"
"fmt"

"github.com/Equationzhao/g/internal/content"
"github.com/Equationzhao/g/internal/display"
"github.com/Equationzhao/g/internal/filter/content"
"github.com/Equationzhao/g/internal/theme"
"github.com/urfave/cli/v2"
)
Expand Down
2 changes: 1 addition & 1 deletion internal/cli/filtering.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ import (
"strings"
"time"

"github.com/Equationzhao/g/internal/content"
"github.com/Equationzhao/g/internal/filter"
"github.com/Equationzhao/g/internal/filter/content"
"github.com/gabriel-vasile/mimetype"
"github.com/urfave/cli/v2"
)
Expand Down
47 changes: 23 additions & 24 deletions internal/cli/g.go
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,12 @@ import (
"sync"
"time"

"github.com/Equationzhao/g/internal/const"

"github.com/Equationzhao/g/internal/align"
"github.com/Equationzhao/g/internal/config"
"github.com/Equationzhao/g/internal/const"
contents "github.com/Equationzhao/g/internal/content"
"github.com/Equationzhao/g/internal/display"
"github.com/Equationzhao/g/internal/filter"
filtercontent "github.com/Equationzhao/g/internal/filter/content"
"github.com/Equationzhao/g/internal/index"
"github.com/Equationzhao/g/internal/item"
"github.com/Equationzhao/g/internal/render"
Expand All @@ -40,8 +39,8 @@ import (

var (
itemFilterFunc = make([]*filter.ItemFilterFunc, 0)
contentFunc = make([]filter.ContentOption, 0)
noOutputFunc = make([]filter.NoOutputOption, 0)
contentFunc = make([]contents.ContentOption, 0)
noOutputFunc = make([]contents.NoOutputOption, 0)
r = render.NewRenderer(&theme.DefaultAll)
p = display.NewFitTerminal()
timeFormat = "02.Jan'06 15:04"
Expand All @@ -50,20 +49,20 @@ var (
// 1 if minor problems (e.g., cannot access subdirectory),
// 2 if serious trouble (e.g., cannot access command-line argument).
ReturnCode = 0
contentFilter = filter.NewContentFilter()
contentFilter = contents.NewContentFilter()
sort = sorter.NewSorter()
timeType = []string{"mod"}
sizeUint = filtercontent.Auto
sizeEnabler = filtercontent.NewSizeEnabler()
blockEnabler = filtercontent.NewBlockSizeEnabler()
ownerEnabler = filtercontent.NewOwnerEnabler()
groupEnabler = filtercontent.NewGroupEnabler()
gitEnabler = filtercontent.NewGitEnabler()
gitRepoEnabler = filtercontent.NewGitRepoEnabler()
sizeUint = contents.Auto
sizeEnabler = contents.NewSizeEnabler()
blockEnabler = contents.NewBlockSizeEnabler()
ownerEnabler = contents.NewOwnerEnabler()
groupEnabler = contents.NewGroupEnabler()
gitEnabler = contents.NewGitEnabler()
gitRepoEnabler = contents.NewGitRepoEnabler()
depthLimitMap map[string]int
limitOnce = util.Once{}
hookOnce = util.Once{}
duplicateDetect = filtercontent.NewDuplicateDetect()
duplicateDetect = contents.NewDuplicateDetect()
hookPost = make([]func(display.Printer, ...*item.FileInfo), 0)
pool *ants.Pool
)
Expand Down Expand Up @@ -415,7 +414,7 @@ var logic = func(context *cli.Context) error {

path := context.Args().Slice()

nameToDisplay := filtercontent.NewNameEnable()
nameToDisplay := contents.NewNameEnable()
if !context.Bool("no-icon") && (context.Bool("icon") || context.Bool("all")) {
nameToDisplay.SetIcon()
}
Expand Down Expand Up @@ -524,7 +523,7 @@ var logic = func(context *cli.Context) error {
header := context.Bool("header")
footer := context.Bool("footer")
if context.Bool("statistic") {
nameToDisplay.SetStatistics(&filtercontent.Statistics{})
nameToDisplay.SetStatistics(&contents.Statistics{})
}

hyperlink := context.String("hyperlink")
Expand Down Expand Up @@ -587,7 +586,7 @@ var logic = func(context *cli.Context) error {
if err != nil {
panic(err)
}
filter.Pool = pool
contents.Pool = pool
}

for i := 0; i < len(path); i++ {
Expand Down Expand Up @@ -865,7 +864,7 @@ var logic = func(context *cli.Context) error {

if total, ok := sizeEnabler.Total(); ok {
s, unit := sizeEnabler.Size2String(total)
s = r.Size(s, filtercontent.Convert2SizeString(unit))
s = r.Size(s, contents.Convert2SizeString(unit))

if isJsonPrinter {
jp.Extra = append(
Expand All @@ -884,8 +883,8 @@ var logic = func(context *cli.Context) error {
if isJsonPrinter {
jp.Extra = append(
jp.Extra, struct {
Time string `json:"underwent"`
Statistic *filtercontent.Statistics `json:"statistic"`
Time string `json:"underwent"`
Statistic *contents.Statistics `json:"statistic"`
}{
Time: t,
Statistic: s,
Expand Down Expand Up @@ -938,7 +937,7 @@ var logic = func(context *cli.Context) error {
for _, part := range allPart {
content, _ := it.Get(part)
l := 0
if part != filtercontent.NameName {
if part != contents.NameName {
l = display.WidthNoHyperLinkLen(content.String())
} else {
l = display.WidthLen(content.String())
Expand All @@ -952,9 +951,9 @@ var logic = func(context *cli.Context) error {
// after the first time, expand the length of each part
for _, it := range infos {
for _, part := range allPart {
if part != filtercontent.NameName {
if part != contents.NameName {
content, _ := it.Get(part)
if part != filtercontent.NameName {
if part != contents.NameName {
l = display.WidthNoHyperLinkLen(content.String())
} else {
l = display.WidthLen(content.String())
Expand Down Expand Up @@ -1003,7 +1002,7 @@ var logic = func(context *cli.Context) error {
for _, it := range infos {
content, _ := it.Get(s)
toAddNum := 0
if s != filtercontent.NameName {
if s != contents.NameName {
toAddNum = len(s) - display.WidthNoHyperLinkLen(content.String())
} else {
toAddNum = len(s) - display.WidthLen(content.String())
Expand Down
2 changes: 1 addition & 1 deletion internal/cli/sort.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import (
"slices"
"strings"

"github.com/Equationzhao/g/internal/filter/content"
"github.com/Equationzhao/g/internal/content"
"github.com/Equationzhao/g/internal/sorter"
"github.com/gabriel-vasile/mimetype"
"github.com/urfave/cli/v2"
Expand Down
Loading

0 comments on commit 2794645

Please sign in to comment.