Split sorting types, methods, and functions into their own file
This commit is contained in:
parent
c57bb9c4c2
commit
602f344654
46
cmd/files.go
46
cmd/files.go
|
@ -40,34 +40,6 @@ type scanStatsChannels struct {
|
||||||
directoriesSkipped chan int
|
directoriesSkipped chan int
|
||||||
}
|
}
|
||||||
|
|
||||||
type splitPath struct {
|
|
||||||
base string
|
|
||||||
number string
|
|
||||||
extension string
|
|
||||||
}
|
|
||||||
|
|
||||||
func (splitPath *splitPath) increment() {
|
|
||||||
length := len(splitPath.number)
|
|
||||||
|
|
||||||
asInt, err := strconv.Atoi(splitPath.number)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
splitPath.number = fmt.Sprintf("%0*d", length, asInt+1)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (splitPath *splitPath) decrement() {
|
|
||||||
length := len(splitPath.number)
|
|
||||||
|
|
||||||
asInt, err := strconv.Atoi(splitPath.number)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
splitPath.number = fmt.Sprintf("%0*d", length, asInt-1)
|
|
||||||
}
|
|
||||||
|
|
||||||
func humanReadableSize(bytes int) string {
|
func humanReadableSize(bytes int) string {
|
||||||
const unit = 1000
|
const unit = 1000
|
||||||
|
|
||||||
|
@ -99,24 +71,6 @@ func kill(path string, cache *fileCache) error {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func split(path string, regexes *regexes) (*splitPath, int, error) {
|
|
||||||
p := splitPath{}
|
|
||||||
|
|
||||||
split := regexes.filename.FindAllStringSubmatch(path, -1)
|
|
||||||
|
|
||||||
if len(split) < 1 || len(split[0]) < 3 {
|
|
||||||
return &splitPath{}, 0, nil
|
|
||||||
}
|
|
||||||
|
|
||||||
p.base = split[0][1]
|
|
||||||
|
|
||||||
p.number = split[0][2]
|
|
||||||
|
|
||||||
p.extension = split[0][3]
|
|
||||||
|
|
||||||
return &p, len(p.number), nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func newFile(list []string, sortOrder string, regexes *regexes, formats *types.Types) (string, error) {
|
func newFile(list []string, sortOrder string, regexes *regexes, formats *types.Types) (string, error) {
|
||||||
path, err := pickFile(list)
|
path, err := pickFile(list)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
@ -12,7 +12,7 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
ReleaseVersion string = "0.97.0"
|
ReleaseVersion string = "0.97.1"
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
|
|
@ -0,0 +1,57 @@
|
||||||
|
/*
|
||||||
|
Copyright © 2023 Seednode <seednode@seedno.de>
|
||||||
|
*/
|
||||||
|
|
||||||
|
package cmd
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
|
||||||
|
"strconv"
|
||||||
|
)
|
||||||
|
|
||||||
|
type splitPath struct {
|
||||||
|
base string
|
||||||
|
number string
|
||||||
|
extension string
|
||||||
|
}
|
||||||
|
|
||||||
|
func (splitPath *splitPath) increment() {
|
||||||
|
length := len(splitPath.number)
|
||||||
|
|
||||||
|
asInt, err := strconv.Atoi(splitPath.number)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
splitPath.number = fmt.Sprintf("%0*d", length, asInt+1)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (splitPath *splitPath) decrement() {
|
||||||
|
length := len(splitPath.number)
|
||||||
|
|
||||||
|
asInt, err := strconv.Atoi(splitPath.number)
|
||||||
|
if err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
splitPath.number = fmt.Sprintf("%0*d", length, asInt-1)
|
||||||
|
}
|
||||||
|
|
||||||
|
func split(path string, regexes *regexes) (*splitPath, int, error) {
|
||||||
|
p := splitPath{}
|
||||||
|
|
||||||
|
split := regexes.filename.FindAllStringSubmatch(path, -1)
|
||||||
|
|
||||||
|
if len(split) < 1 || len(split[0]) < 3 {
|
||||||
|
return &splitPath{}, 0, nil
|
||||||
|
}
|
||||||
|
|
||||||
|
p.base = split[0][1]
|
||||||
|
|
||||||
|
p.number = split[0][2]
|
||||||
|
|
||||||
|
p.extension = split[0][3]
|
||||||
|
|
||||||
|
return &p, len(p.number), nil
|
||||||
|
}
|
Loading…
Reference in New Issue