File: mkdefaultstyle.tcl

package info (click to toggle)
tk-html3 3.0~fossil20110109-6
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 6,644 kB
  • ctags: 5,882
  • sloc: ansic: 48,994; tcl: 26,030; sh: 1,190; yacc: 161; makefile: 24
file content (39 lines) | stat: -rw-r--r-- 1,149 bytes parent folder | download | duplicates (6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39

proc FileToDefine {file define} {
  set fd [open $file]
  append ret "#define $define \\"
  while {![eof $fd]} {
      set line [string map [list \" \\\" \\ \\\\] [gets $fd]]
      append ret "\n        \"$line\\n\" \\"
  }
  append ret "\n\n\n"

  return $ret
}

proc VersionsToDefine {glob define} {
  set ret "#define $define \\\n"
  foreach file [glob $glob] {
    set fd [open $file]
    set contents [read $fd]
    close $fd
    set DOLLAR $
    set expression \\${DOLLAR}Id:(\[^${DOLLAR}\]*)\\${DOLLAR}
    if {[regexp $expression $contents dummy match]} {
      append ret "    \"[string trim $match]\\n\" \\\n"
    }
  }
  return $ret
}

set css_file    [file join [file dirname [info script]] .. src html.css]
set tcl_file    [file join [file dirname [info script]] .. src tkhtml.tcl]
set quirks_file [file join [file dirname [info script]] quirks.css]
set src_files   [file join [file dirname [info script]] {*.c}]

puts ""
puts [FileToDefine $tcl_file      HTML_DEFAULT_TCL]
puts [FileToDefine $css_file      HTML_DEFAULT_CSS]
puts [FileToDefine $quirks_file   HTML_DEFAULT_QUIRKS]
puts [VersionsToDefine $src_files HTML_SOURCE_FILES]