add ignore suffix of the listener file
This commit is contained in:
parent
da54305188
commit
8dc1ebe6d9
@ -95,6 +95,11 @@ monitor:
|
|||||||
# .* 所有的文件更改都会执行 command 中的命令
|
# .* 所有的文件更改都会执行 command 中的命令
|
||||||
types:
|
types:
|
||||||
- .go
|
- .go
|
||||||
|
|
||||||
|
# 不监听文件的格式,此类文件更改不会执行 command 中的命令
|
||||||
|
# .DS_Store 后缀为 .DS_Store 的文件更改,不会执行 command 中的命令
|
||||||
|
types:
|
||||||
|
- .DS_Store
|
||||||
|
|
||||||
# 监听的事件类型,发生此类事件才执行 command 中的命令
|
# 监听的事件类型,发生此类事件才执行 command 中的命令
|
||||||
# 没有该配置默认监听所有事件
|
# 没有该配置默认监听所有事件
|
||||||
|
@ -92,6 +92,11 @@ monitor:
|
|||||||
# .* all file changes execute commands in the command
|
# .* all file changes execute commands in the command
|
||||||
types:
|
types:
|
||||||
- .go
|
- .go
|
||||||
|
|
||||||
|
# ignore the suffix of the listener file, which changes the file not to execute commands
|
||||||
|
# .DS_Store file changes suffixed with .go not execute commands
|
||||||
|
types:
|
||||||
|
- .DS_Store
|
||||||
|
|
||||||
# the type of event to listen to. Only when such an event occurs can the command in command be executed
|
# the type of event to listen to. Only when such an event occurs can the command in command be executed
|
||||||
# without this configuration, all events will be monitored by default
|
# without this configuration, all events will be monitored by default
|
||||||
|
13
fileboy.go
13
fileboy.go
@ -72,6 +72,7 @@ func parseConfig() {
|
|||||||
}
|
}
|
||||||
// init map
|
// init map
|
||||||
cfg.Monitor.TypesMap = map[string]bool{}
|
cfg.Monitor.TypesMap = map[string]bool{}
|
||||||
|
cfg.Monitor.ExceptTypesMap = map[string]bool{}
|
||||||
cfg.Monitor.IncludeDirsMap = map[string]bool{}
|
cfg.Monitor.IncludeDirsMap = map[string]bool{}
|
||||||
cfg.Monitor.ExceptDirsMap = map[string]bool{}
|
cfg.Monitor.ExceptDirsMap = map[string]bool{}
|
||||||
cfg.Monitor.IncludeDirsRec = map[string]bool{}
|
cfg.Monitor.IncludeDirsRec = map[string]bool{}
|
||||||
@ -83,6 +84,9 @@ func parseConfig() {
|
|||||||
for _, v := range cfg.Instruction {
|
for _, v := range cfg.Instruction {
|
||||||
cfg.InstructionMap[v] = true
|
cfg.InstructionMap[v] = true
|
||||||
}
|
}
|
||||||
|
for _, v := range cfg.Monitor.ExceptTypes {
|
||||||
|
cfg.Monitor.ExceptTypesMap[v] = true
|
||||||
|
}
|
||||||
log.Printf("%+v", cfg)
|
log.Printf("%+v", cfg)
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -92,8 +96,13 @@ func eventDispatcher(event fsnotify.Event) {
|
|||||||
}
|
}
|
||||||
ext := path.Ext(event.Name)
|
ext := path.Ext(event.Name)
|
||||||
if len(cfg.Monitor.Types) > 0 &&
|
if len(cfg.Monitor.Types) > 0 &&
|
||||||
!keyInMonitorTypesMap(".*", cfg) &&
|
!keyInMonitorTypesMap(".*", cfg.Monitor.TypesMap) &&
|
||||||
!keyInMonitorTypesMap(ext, cfg) {
|
!keyInMonitorTypesMap(ext, cfg.Monitor.TypesMap) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if len(cfg.Monitor.ExceptTypes) > 0 &&
|
||||||
|
keyInMonitorTypesMap(ext, cfg.Monitor.ExceptTypesMap) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -6,11 +6,13 @@ type FileGirl struct {
|
|||||||
}
|
}
|
||||||
Monitor struct {
|
Monitor struct {
|
||||||
Types []string `yaml:"types"`
|
Types []string `yaml:"types"`
|
||||||
|
ExceptTypes []string `yaml:"exceptTypes"`
|
||||||
IncludeDirs []string `yaml:"includeDirs"`
|
IncludeDirs []string `yaml:"includeDirs"`
|
||||||
ExceptDirs []string `yaml:"exceptDirs"`
|
ExceptDirs []string `yaml:"exceptDirs"`
|
||||||
Events []string `yaml:"events"`
|
Events []string `yaml:"events"`
|
||||||
// convert to
|
// convert to
|
||||||
TypesMap map[string]bool `yaml:"-"`
|
TypesMap map[string]bool `yaml:"-"`
|
||||||
|
ExceptTypesMap map[string]bool `yaml:"-"`
|
||||||
IncludeDirsMap map[string]bool `yaml:"-"`
|
IncludeDirsMap map[string]bool `yaml:"-"`
|
||||||
ExceptDirsMap map[string]bool `yaml:"-"`
|
ExceptDirsMap map[string]bool `yaml:"-"`
|
||||||
DirsMap map[string]bool `yaml:"-"`
|
DirsMap map[string]bool `yaml:"-"`
|
||||||
|
5
raw.go
5
raw.go
@ -31,6 +31,11 @@ monitor:
|
|||||||
# .* 所有的文件更改都会执行 command 中的命令
|
# .* 所有的文件更改都会执行 command 中的命令
|
||||||
types:
|
types:
|
||||||
- .go
|
- .go
|
||||||
|
|
||||||
|
# 不监听文件的格式,此类文件更改不会执行 command 中的命令
|
||||||
|
# .DS_Store 后缀为 .DS_Store 的文件更改,不会执行 command 中的命令
|
||||||
|
types:
|
||||||
|
- .DS_Store
|
||||||
|
|
||||||
# 监听的事件类型,发生此类事件才执行 command 中的命令
|
# 监听的事件类型,发生此类事件才执行 command 中的命令
|
||||||
# 没有该配置默认监听所有事件
|
# 没有该配置默认监听所有事件
|
||||||
|
Loading…
Reference in New Issue
Block a user