Исправлено некорректное определение типа файла при открытии.
This commit is contained in:
parent
3ee60f48c3
commit
09d8a06f9e
|
@ -31,6 +31,7 @@ namespace eval FileOper {
|
||||||
|
|
||||||
# lappend cmd $activeProject
|
# lappend cmd $activeProject
|
||||||
lappend cmd $fileFullPath
|
lappend cmd $fileFullPath
|
||||||
|
# puts $cmd
|
||||||
catch $cmd pipe
|
catch $cmd pipe
|
||||||
# puts $pipe
|
# puts $pipe
|
||||||
if [regexp -nocase -- {(\w+)/([\w\-_\.]+); charset=([[:alnum:]-]+)} $pipe m fType fExt fCharset] {
|
if [regexp -nocase -- {(\w+)/([\w\-_\.]+); charset=([[:alnum:]-]+)} $pipe m fType fExt fCharset] {
|
||||||
|
@ -43,12 +44,15 @@ namespace eval FileOper {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
# линуксовый file не всегда корректно определяет тип файла
|
||||||
|
# используем пакет из tcl
|
||||||
|
lassign [::fileutil::fileType $fileFullPath] fType fBinaryType fBinaryInterp
|
||||||
|
puts "File type is $fType, $fBinaryType, $fBinaryInterp"
|
||||||
|
|
||||||
switch $fType {
|
switch $fType {
|
||||||
"application" {
|
"binary" {
|
||||||
if {$fExt ne "json"} {
|
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
}
|
|
||||||
"text" {
|
"text" {
|
||||||
return text
|
return text
|
||||||
}
|
}
|
||||||
|
@ -393,7 +397,7 @@ namespace eval FileOper {
|
||||||
if {[file exists $fileFullPath] == 0} {
|
if {[file exists $fileFullPath] == 0} {
|
||||||
return false
|
return false
|
||||||
} else {
|
} else {
|
||||||
# puts [::fileutil::magic::filetype $fileFullPath]
|
puts "$fileFullPath File type [::fileutil::magic::filetype $fileFullPath]"
|
||||||
set fileType [FileOper::GetFileMimeType $fileFullPath]
|
set fileType [FileOper::GetFileMimeType $fileFullPath]
|
||||||
}
|
}
|
||||||
switch $fileType {
|
switch $fileType {
|
||||||
|
|
|
@ -20,6 +20,7 @@ dict set lexers GO commentMultilineSymbolEnd {*/}
|
||||||
dict set lexers GO procFindString {func.*?PROCNAME}
|
dict set lexers GO procFindString {func.*?PROCNAME}
|
||||||
dict set lexers GO procRegexpCommand {regexp -nocase -all -- {\s*?func\s*?(\(\w+\s*?\**?\w+\)|)\s*?(\w+)\((.*?)\)\s+?([a-zA-Z0-9\{\}\[\]\(\)-_.]*?|)\s*?\{} $line match linkName procName params returns}
|
dict set lexers GO procRegexpCommand {regexp -nocase -all -- {\s*?func\s*?(\(\w+\s*?\**?\w+\)|)\s*?(\w+)\((.*?)\)\s+?([a-zA-Z0-9\{\}\[\]\(\)-_.]*?|)\s*?\{} $line match linkName procName params returns}
|
||||||
dict set lexers GO varRegexpCommand {regexp -nocase -all -line -- {^\s*?var\s+([a-zA-Z0-9\-_$]+)\s+(.+?)(\s*$)} $line match varName varType lineEnd}
|
dict set lexers GO varRegexpCommand {regexp -nocase -all -line -- {^\s*?var\s+([a-zA-Z0-9\-_$]+)\s+(.+?)(\s*$)} $line match varName varType lineEnd}
|
||||||
|
|
||||||
#--------------------------------------------------
|
#--------------------------------------------------
|
||||||
# SHELL (Bash)
|
# SHELL (Bash)
|
||||||
dict set lexers SH commentSymbol {#}
|
dict set lexers SH commentSymbol {#}
|
||||||
|
@ -43,6 +44,7 @@ dict set lexers RB tabSize 2
|
||||||
dict set lexers RB procFindString {(def |class )\s*?PROCNAME}
|
dict set lexers RB procFindString {(def |class )\s*?PROCNAME}
|
||||||
dict set lexers RB procRegexpCommand {regexp -nocase -all -- {^\s*?(def|class)\s([a-zA-Z0-9\-_:\?]+?)($|\s|\(.+?\))} $line match keyWord procName params}
|
dict set lexers RB procRegexpCommand {regexp -nocase -all -- {^\s*?(def|class)\s([a-zA-Z0-9\-_:\?]+?)($|\s|\(.+?\))} $line match keyWord procName params}
|
||||||
dict set lexers RB varRegexpCommand {regexp -nocase -all -line -- {^\s*?(\w+)\s*=\s*(.+)($)} $line match varName varValue lineEnd}
|
dict set lexers RB varRegexpCommand {regexp -nocase -all -line -- {^\s*?(\w+)\s*=\s*(.+)($)} $line match varName varValue lineEnd}
|
||||||
|
|
||||||
#--------------------------------------------------
|
#--------------------------------------------------
|
||||||
# YAML (ansible)
|
# YAML (ansible)
|
||||||
dict set lexers YML commentSymbol {#}
|
dict set lexers YML commentSymbol {#}
|
||||||
|
@ -95,6 +97,8 @@ dict set lexers HTM tabSize 4
|
||||||
dict set lexers HTM procFindString {<h[0-9]>(<.+>|)PROCNAME(</.+>|)</h[0-9]>}
|
dict set lexers HTM procFindString {<h[0-9]>(<.+>|)PROCNAME(</.+>|)</h[0-9]>}
|
||||||
dict set lexers HTM procRegexpCommand {regexp -nocase -all -- {<h[0-9]>(<.+>|)(.+?)(</.+>|)</h[0-9]>} $line match v1 procName v2}
|
dict set lexers HTM procRegexpCommand {regexp -nocase -all -- {<h[0-9]>(<.+>|)(.+?)(</.+>|)</h[0-9]>} $line match v1 procName v2}
|
||||||
|
|
||||||
|
#--------------------------------------------------
|
||||||
|
# LUA
|
||||||
dict set lexers LUA commentSymbol {--}
|
dict set lexers LUA commentSymbol {--}
|
||||||
dict set lexers LUA procFindString {function\s*?PROCNAME}
|
dict set lexers LUA procFindString {function\s*?PROCNAME}
|
||||||
dict set lexers LUA procRegexpCommand {regexp -nocase -all -- {^(local|)\s*?(function)\s([a-zA-Z0-9\-_:]+?)\s+\((.+?)\)} $line match v1 keyWord procName params}
|
dict set lexers LUA procRegexpCommand {regexp -nocase -all -- {^(local|)\s*?(function)\s([a-zA-Z0-9\-_:]+?)\s+\((.+?)\)} $line match v1 keyWord procName params}
|
||||||
|
|
|
@ -10,7 +10,7 @@ exec wish "$0" -- "$@"
|
||||||
######################################################
|
######################################################
|
||||||
# Version: 2.0.0
|
# Version: 2.0.0
|
||||||
# Release: alpha
|
# Release: alpha
|
||||||
# Build: 27072023125916
|
# Build: 17052024103352
|
||||||
######################################################
|
######################################################
|
||||||
|
|
||||||
# определим текущую версию, релиз и т.д.
|
# определим текущую версию, релиз и т.д.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user