From ac7b6e04a95586cd319c909799c869760a450807 Mon Sep 17 00:00:00 2001 From: "jan.nijtmans" Date: Tue, 16 Apr 2024 11:34:18 +0000 Subject: Add "-encoding utf-8" to auto_mkindex stuff --- library/auto.tcl | 3 +- library/init.tcl | 4 +- library/tclIndex | 148 +++++++++++++++++++++++++++---------------------------- 3 files changed, 78 insertions(+), 77 deletions(-) diff --git a/library/auto.tcl b/library/auto.tcl index dd76c1a..bae44c3 100644 --- a/library/auto.tcl +++ b/library/auto.tcl @@ -214,6 +214,7 @@ proc auto_mkindex {dir args} { auto_mkindex_parser::cleanup set fid [open "tclIndex" w] + fconfigure $fid -encoding utf-8 puts -nonewline $fid $index close $fid cd $oldDir @@ -531,7 +532,7 @@ proc auto_mkindex_parser::indexEntry {name} { set filenameParts [file split $scriptFile] append index [format \ - {set auto_index(%s) [list source [file join $dir %s]]%s} \ + {set auto_index(%s) [list source -encoding utf-8 [file join $dir %s]]%s} \ $name $filenameParts \n] return } diff --git a/library/init.tcl b/library/init.tcl index 1107381..a6745ab 100644 --- a/library/init.tcl +++ b/library/init.tcl @@ -498,7 +498,7 @@ proc auto_load_index {} { continue } else { set error [catch { - fconfigure $f -eofchar "\x1A {}" + fconfigure $f -eofchar "\x1A {}" -encoding utf-8 set id [gets $f] if {$id eq "# Tcl autoload index file, version 2.0"} { eval [read $f] @@ -510,7 +510,7 @@ proc auto_load_index {} { } set name [lindex $line 0] set auto_index($name) \ - "source [file join $dir [lindex $line 1]]" + "source -encoding utf-8 [file join $dir [lindex $line 1]]" } } else { error "[file join $dir tclIndex] isn't a proper Tcl index file" diff --git a/library/tclIndex b/library/tclIndex index 5ce28a1..9784265 100644 --- a/library/tclIndex +++ b/library/tclIndex @@ -6,80 +6,80 @@ # element name is the name of a command and the value is # a script that loads the command. -set auto_index(auto_reset) [list source [file join $dir auto.tcl]] -set auto_index(tcl_findLibrary) [list source [file join $dir auto.tcl]] -set auto_index(auto_mkindex) [list source [file join $dir auto.tcl]] -set auto_index(auto_mkindex_old) [list source [file join $dir auto.tcl]] -set auto_index(::auto_mkindex_parser::init) [list source [file join $dir auto.tcl]] -set auto_index(::auto_mkindex_parser::cleanup) [list source [file join $dir auto.tcl]] -set auto_index(::auto_mkindex_parser::mkindex) [list source [file join $dir auto.tcl]] -set auto_index(::auto_mkindex_parser::hook) [list source [file join $dir auto.tcl]] -set auto_index(::auto_mkindex_parser::slavehook) [list source [file join $dir auto.tcl]] -set auto_index(::auto_mkindex_parser::command) [list source [file join $dir auto.tcl]] -set auto_index(::auto_mkindex_parser::commandInit) [list source [file join $dir auto.tcl]] -set auto_index(::auto_mkindex_parser::fullname) [list source [file join $dir auto.tcl]] -set auto_index(::tcl::history) [list source [file join $dir history.tcl]] -set auto_index(history) [list source [file join $dir history.tcl]] -set auto_index(::tcl::HistAdd) [list source [file join $dir history.tcl]] -set auto_index(::tcl::HistKeep) [list source [file join $dir history.tcl]] -set auto_index(::tcl::HistClear) [list source [file join $dir history.tcl]] -set auto_index(::tcl::HistInfo) [list source [file join $dir history.tcl]] -set auto_index(::tcl::HistRedo) [list source [file join $dir history.tcl]] -set auto_index(::tcl::HistIndex) [list source [file join $dir history.tcl]] -set auto_index(::tcl::HistEvent) [list source [file join $dir history.tcl]] -set auto_index(::tcl::HistChange) [list source [file join $dir history.tcl]] -set auto_index(::tcl::HistNextID) [list source [file join $dir history.tcl]] -set auto_index(::tcl::Pkg::CompareExtension) [list source [file join $dir package.tcl]] -set auto_index(pkg_mkIndex) [list source [file join $dir package.tcl]] -set auto_index(tclPkgSetup) [list source [file join $dir package.tcl]] -set auto_index(tclPkgUnknown) [list source [file join $dir package.tcl]] -set auto_index(::tcl::MacOSXPkgUnknown) [list source [file join $dir package.tcl]] -set auto_index(::pkg::create) [list source [file join $dir package.tcl]] -set auto_index(parray) [list source [file join $dir parray.tcl]] -set auto_index(::safe::InterpStatics) [list source [file join $dir safe.tcl]] -set auto_index(::safe::InterpNested) [list source [file join $dir safe.tcl]] -set auto_index(::safe::interpCreate) [list source [file join $dir safe.tcl]] -set auto_index(::safe::interpInit) [list source [file join $dir safe.tcl]] -set auto_index(::safe::CheckInterp) [list source [file join $dir safe.tcl]] -set auto_index(::safe::interpConfigure) [list source [file join $dir safe.tcl]] -set auto_index(::safe::InterpCreate) [list source [file join $dir safe.tcl]] -set auto_index(::safe::InterpSetConfig) [list source [file join $dir safe.tcl]] -set auto_index(::safe::interpFindInAccessPath) [list source [file join $dir safe.tcl]] -set auto_index(::safe::interpAddToAccessPath) [list source [file join $dir safe.tcl]] -set auto_index(::safe::InterpInit) [list source [file join $dir safe.tcl]] -set auto_index(::safe::AddSubDirs) [list source [file join $dir safe.tcl]] -set auto_index(::safe::interpDelete) [list source [file join $dir safe.tcl]] -set auto_index(::safe::setLogCmd) [list source [file join $dir safe.tcl]] -set auto_index(::safe::SyncAccessPath) [list source [file join $dir safe.tcl]] -set auto_index(::safe::PathToken) [list source [file join $dir safe.tcl]] -set auto_index(::safe::TranslatePath) [list source [file join $dir safe.tcl]] -set auto_index(::safe::Log) [list source [file join $dir safe.tcl]] -set auto_index(::safe::CheckFileName) [list source [file join $dir safe.tcl]] -set auto_index(::safe::AliasFileSubcommand) [list source [file join $dir safe.tcl]] -set auto_index(::safe::AliasGlob) [list source [file join $dir safe.tcl]] -set auto_index(::safe::AliasSource) [list source [file join $dir safe.tcl]] -set auto_index(::safe::AliasLoad) [list source [file join $dir safe.tcl]] -set auto_index(::safe::FileInAccessPath) [list source [file join $dir safe.tcl]] -set auto_index(::safe::DirInAccessPath) [list source [file join $dir safe.tcl]] -set auto_index(::safe::BadSubcommand) [list source [file join $dir safe.tcl]] -set auto_index(::safe::AliasEncoding) [list source [file join $dir safe.tcl]] -set auto_index(::safe::AliasExeName) [list source [file join $dir safe.tcl]] -set auto_index(::safe::RejectExcessColons) [list source [file join $dir safe.tcl]] -set auto_index(::safe::VarName) [list source [file join $dir safe.tcl]] -set auto_index(::safe::Setup) [list source [file join $dir safe.tcl]] -set auto_index(::tcl::tmpath) [list source [file join $dir tm.tcl]] -set auto_index(::tcl::tm::add) [list source [file join $dir tm.tcl]] -set auto_index(::tcl::tm::remove) [list source [file join $dir tm.tcl]] -set auto_index(::tcl::tm::list) [list source [file join $dir tm.tcl]] -set auto_index(::tcl::tm::UnknownHandler) [list source [file join $dir tm.tcl]] -set auto_index(::tcl::tm::Defaults) [list source [file join $dir tm.tcl]] -set auto_index(::tcl::tm::roots) [list source [file join $dir tm.tcl]] -set auto_index(::tcl::UpdateWordBreakREs) [list source [file join $dir word.tcl]] -set auto_index(tcl_wordBreakAfter) [list source [file join $dir word.tcl]] -set auto_index(tcl_wordBreakBefore) [list source [file join $dir word.tcl]] -set auto_index(tcl_endOfWord) [list source [file join $dir word.tcl]] -set auto_index(tcl_startOfNextWord) [list source [file join $dir word.tcl]] -set auto_index(tcl_startOfPreviousWord) [list source [file join $dir word.tcl]] +set auto_index(auto_reset) [list source -encoding utf-8 [file join $dir auto.tcl]] +set auto_index(tcl_findLibrary) [list source -encoding utf-8 [file join $dir auto.tcl]] +set auto_index(auto_mkindex) [list source -encoding utf-8 [file join $dir auto.tcl]] +set auto_index(auto_mkindex_old) [list source -encoding utf-8 [file join $dir auto.tcl]] +set auto_index(::auto_mkindex_parser::init) [list source -encoding utf-8 [file join $dir auto.tcl]] +set auto_index(::auto_mkindex_parser::cleanup) [list source -encoding utf-8 [file join $dir auto.tcl]] +set auto_index(::auto_mkindex_parser::mkindex) [list source -encoding utf-8 [file join $dir auto.tcl]] +set auto_index(::auto_mkindex_parser::hook) [list source -encoding utf-8 [file join $dir auto.tcl]] +set auto_index(::auto_mkindex_parser::slavehook) [list source -encoding utf-8 [file join $dir auto.tcl]] +set auto_index(::auto_mkindex_parser::command) [list source -encoding utf-8 [file join $dir auto.tcl]] +set auto_index(::auto_mkindex_parser::commandInit) [list source -encoding utf-8 [file join $dir auto.tcl]] +set auto_index(::auto_mkindex_parser::fullname) [list source -encoding utf-8 [file join $dir auto.tcl]] +set auto_index(::tcl::history) [list source -encoding utf-8 [file join $dir history.tcl]] +set auto_index(history) [list source -encoding utf-8 [file join $dir history.tcl]] +set auto_index(::tcl::HistAdd) [list source -encoding utf-8 [file join $dir history.tcl]] +set auto_index(::tcl::HistKeep) [list source -encoding utf-8 [file join $dir history.tcl]] +set auto_index(::tcl::HistClear) [list source -encoding utf-8 [file join $dir history.tcl]] +set auto_index(::tcl::HistInfo) [list source -encoding utf-8 [file join $dir history.tcl]] +set auto_index(::tcl::HistRedo) [list source -encoding utf-8 [file join $dir history.tcl]] +set auto_index(::tcl::HistIndex) [list source -encoding utf-8 [file join $dir history.tcl]] +set auto_index(::tcl::HistEvent) [list source -encoding utf-8 [file join $dir history.tcl]] +set auto_index(::tcl::HistChange) [list source -encoding utf-8 [file join $dir history.tcl]] +set auto_index(::tcl::HistNextID) [list source -encoding utf-8 [file join $dir history.tcl]] +set auto_index(::tcl::Pkg::CompareExtension) [list source -encoding utf-8 [file join $dir package.tcl]] +set auto_index(pkg_mkIndex) [list source -encoding utf-8 [file join $dir package.tcl]] +set auto_index(tclPkgSetup) [list source -encoding utf-8 [file join $dir package.tcl]] +set auto_index(tclPkgUnknown) [list source -encoding utf-8 [file join $dir package.tcl]] +set auto_index(::tcl::MacOSXPkgUnknown) [list source -encoding utf-8 [file join $dir package.tcl]] +set auto_index(::pkg::create) [list source -encoding utf-8 [file join $dir package.tcl]] +set auto_index(parray) [list source -encoding utf-8 [file join $dir parray.tcl]] +set auto_index(::safe::InterpStatics) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::InterpNested) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::interpCreate) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::interpInit) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::CheckInterp) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::interpConfigure) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::InterpCreate) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::InterpSetConfig) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::interpFindInAccessPath) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::interpAddToAccessPath) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::InterpInit) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::AddSubDirs) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::interpDelete) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::setLogCmd) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::SyncAccessPath) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::PathToken) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::TranslatePath) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::Log) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::CheckFileName) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::AliasFileSubcommand) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::AliasGlob) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::AliasSource) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::AliasLoad) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::FileInAccessPath) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::DirInAccessPath) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::BadSubcommand) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::AliasEncoding) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::AliasExeName) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::RejectExcessColons) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::VarName) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::safe::Setup) [list source -encoding utf-8 [file join $dir safe.tcl]] +set auto_index(::tcl::tmpath) [list source -encoding utf-8 [file join $dir tm.tcl]] +set auto_index(::tcl::tm::add) [list source -encoding utf-8 [file join $dir tm.tcl]] +set auto_index(::tcl::tm::remove) [list source -encoding utf-8 [file join $dir tm.tcl]] +set auto_index(::tcl::tm::list) [list source -encoding utf-8 [file join $dir tm.tcl]] +set auto_index(::tcl::tm::UnknownHandler) [list source -encoding utf-8 [file join $dir tm.tcl]] +set auto_index(::tcl::tm::Defaults) [list source -encoding utf-8 [file join $dir tm.tcl]] +set auto_index(::tcl::tm::roots) [list source -encoding utf-8 [file join $dir tm.tcl]] +set auto_index(::tcl::UpdateWordBreakREs) [list source -encoding utf-8 [file join $dir word.tcl]] +set auto_index(tcl_wordBreakAfter) [list source -encoding utf-8 [file join $dir word.tcl]] +set auto_index(tcl_wordBreakBefore) [list source -encoding utf-8 [file join $dir word.tcl]] +set auto_index(tcl_endOfWord) [list source -encoding utf-8 [file join $dir word.tcl]] +set auto_index(tcl_startOfNextWord) [list source -encoding utf-8 [file join $dir word.tcl]] +set auto_index(tcl_startOfPreviousWord) [list source -encoding utf-8 [file join $dir word.tcl]] if {[namespace exists ::tcl::unsupported]} { set auto_index(timerate) {namespace import ::tcl::unsupported::timerate} } -- cgit v0.12