summaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/lang.tcl
diff options
context:
space:
mode:
Diffstat (limited to 'SQLiteStudio3/lang.tcl')
-rwxr-xr-xSQLiteStudio3/lang.tcl17
1 files changed, 16 insertions, 1 deletions
diff --git a/SQLiteStudio3/lang.tcl b/SQLiteStudio3/lang.tcl
index d169450..52661f3 100755
--- a/SQLiteStudio3/lang.tcl
+++ b/SQLiteStudio3/lang.tcl
@@ -14,6 +14,21 @@ if {$::tcl_platform(platform) == "windows"} {
set ERR_NULL "2>/dev/null"
}
+proc find {dir mask} {
+ set results [list]
+ foreach f [glob -nocomplain -directory $dir *] {
+ if {[file isdirectory $f]} {
+ lappend results {*}[find $f $mask]
+ continue;
+ }
+
+ if {[string match $mask [lindex [file split $f] end]]} {
+ lappend results $f
+ }
+ }
+ return $results
+}
+
proc countstrings {data search} {
set l [string length $search]
set count 0
@@ -27,7 +42,7 @@ proc countstrings {data search} {
proc scanLangs {} {
set langs [dict create]
- foreach f [exec find .. -name "*.ts"] {
+ foreach f [find .. "*.ts"] {
set lang [lindex [regexp -inline {[^_]*_(\w+(\w+)?).ts$} $f] 1]
if {[dict exists $langs $lang]} {
set langDict [dict get $langs $lang]