From 4bdb7d53a43f3abc65b78bde997793f8022b2432 Mon Sep 17 00:00:00 2001 From: kamil Date: Mon, 7 Oct 2019 14:37:34 +0000 Subject: lang/tcltutor: import tcltutor-30b7 This is a package designed to teach the Tcl programming language in a quick and easy manner. The goal is to teach the minimal amount of Tcl syntax, commands and options that are necessary to write useful programs. You are encouraged to use the man pages and books to augment this tutorial. --- lang/tcltutor/DESCR | 7 ++ lang/tcltutor/Makefile | 57 ++++++++++++++++ lang/tcltutor/PLIST | 112 +++++++++++++++++++++++++++++++ lang/tcltutor/distinfo | 7 ++ lang/tcltutor/patches/patch-TclTutor.tcl | 82 ++++++++++++++++++++++ 5 files changed, 265 insertions(+) create mode 100644 lang/tcltutor/DESCR create mode 100644 lang/tcltutor/Makefile create mode 100644 lang/tcltutor/PLIST create mode 100644 lang/tcltutor/distinfo create mode 100644 lang/tcltutor/patches/patch-TclTutor.tcl (limited to 'lang') diff --git a/lang/tcltutor/DESCR b/lang/tcltutor/DESCR new file mode 100644 index 00000000000..47c614d3bd7 --- /dev/null +++ b/lang/tcltutor/DESCR @@ -0,0 +1,7 @@ +This is a package designed to teach the Tcl programming language in a +quick and easy manner. The goal is to teach the minimal amount of Tcl +syntax, commands and options that are necessary to write useful +programs. + +You are encouraged to use the man pages and books to augment this +tutorial. diff --git a/lang/tcltutor/Makefile b/lang/tcltutor/Makefile new file mode 100644 index 00000000000..fcddec68e5b --- /dev/null +++ b/lang/tcltutor/Makefile @@ -0,0 +1,57 @@ +# $NetBSD: Makefile,v 1.1 2019/10/07 14:37:34 kamil Exp $ + +DISTNAME= tcltutor30b7 +PKGNAME= ${DISTNAME:S/tcltutor/tcltutor-/} +CATEGORIES= lang +MASTER_SITES= ${MASTER_SITE_OPENBSD:=distfiles/} +EXTRACT_SUFX= .tgz + +MAINTAINER= kamil@NetBSD.org +HOMEPAGE= http://www.msen.com/~clif/TclTutor.html +COMMENT= Learn Tcl interactively +LICENSE= isc + +WRKSRC= ${WRKDIR}/TclTutor + +SUBST_CLASSES+= fix-wish +SUBST_STAGE.fix-wish= pre-configure +SUBST_MESSAGE.fix-wish= Fixing tcl wish +SUBST_FILES.fix-wish+= TclTutor.tcl +SUBST_SED.fix-wish+= -e 's,exec wish,exec ${PREFIX}/bin/wish,' + +SUBST_CLASSES+= fix-data +SUBST_STAGE.fix-data= pre-configure +SUBST_MESSAGE.fix-data= Fixing libdatadir +SUBST_FILES.fix-data+= TclTutor.tcl +SUBST_SED.fix-data+= -e 's,@TCLTUTOR_LIBDATADIR@,${PREFIX}/${TCLTUTOR_LIBDATADIR},' + +NO_BUILD= yes + +USE_TOOLS+= pax:build wish:run + +TCLTUTOR_LIBDATADIR= share/tcltutor +TCLTUTOR_DOCDIR= share/doc/tcltutor + +INSTALLATION_DIRS+= bin ${TCLTUTOR_LIBDATADIR} ${TCLTUTOR_DOCDIR} + +pre-configure: + ${RUN} cd ${WRKSRC} && ${FIND} . -type d -name 'CVS' | ${XARGS} ${RM} -fr + +do-install: + ${RUN} cd ${WRKSRC} && \ + ${INSTALL_SCRIPT} TclTutor.tcl ${DESTDIR}${PREFIX}/bin/tcltutor +.for i in balloon.tcl htmllib.tcl images.tcl options.tcl simpleTop.tcl + ${RUN} cd ${WRKSRC} && \ + ${INSTALL_DATA} ${i} ${DESTDIR}${PREFIX}/${TCLTUTOR_LIBDATADIR} +.endfor +.for i in NOTICE README + ${RUN} cd ${WRKSRC} && \ + ${INSTALL_DATA} ${i} ${DESTDIR}${PREFIX}/${TCLTUTOR_DOCDIR} +.endfor +.for i in Tcl_English Tcl_Portuguese + ${INSTALL_DATA_DIR} ${DESTDIR}${PREFIX}/${TCLTUTOR_LIBDATADIR}/lesson/${i} + ${RUN} cd ${WRKSRC}/lesson/${i} && \ + ${PAX} -wr * ${DESTDIR}${PREFIX}/${TCLTUTOR_LIBDATADIR}/lesson/${i} +.endfor + +.include "../../mk/bsd.pkg.mk" diff --git a/lang/tcltutor/PLIST b/lang/tcltutor/PLIST new file mode 100644 index 00000000000..95e1602455a --- /dev/null +++ b/lang/tcltutor/PLIST @@ -0,0 +1,112 @@ +@comment $NetBSD: PLIST,v 1.1 2019/10/07 14:37:34 kamil Exp $ +bin/tcltutor +share/doc/tcltutor/NOTICE +share/doc/tcltutor/README +share/tcltutor/balloon.tcl +share/tcltutor/htmllib.tcl +share/tcltutor/images.tcl +share/tcltutor/lesson/Tcl_English/TclLesson.dmy +share/tcltutor/lesson/Tcl_English/Tcl_English.cfg +share/tcltutor/lesson/Tcl_English/Tcl_English0.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English1.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English10.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English11.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English12.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English13.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English14.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English15.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English16.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English17.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English18.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English19.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English2.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English20.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English21.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English22.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English23.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English24.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English25.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English26.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English27.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English28.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English29.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English3.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English30.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English31.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English32.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English33.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English34.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English35.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English36.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English37.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English38.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English39.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English4.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English40.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English41.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English42.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English43.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English44.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English45.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English46.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English47.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English5.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English6.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English7.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English8.lsn +share/tcltutor/lesson/Tcl_English/Tcl_English9.lsn +share/tcltutor/lesson/Tcl_English/about.html +share/tcltutor/lesson/Tcl_English/help.html +share/tcltutor/lesson/Tcl_Portuguese/AVISO +share/tcltutor/lesson/Tcl_Portuguese/LEIAME +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese.cfg +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese0.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese1.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese10.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese11.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese12.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese13.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese14.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese15.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese16.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese17.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese18.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese19.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese2.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese20.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese21.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese22.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese23.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese24.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese25.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese26.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese27.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese28.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese29.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese3.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese30.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese31.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese32.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese33.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese34.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese35.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese36.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese37.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese38.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese39.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese4.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese40.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese41.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese42.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese43.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese5.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese6.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese7.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese8.lsn +share/tcltutor/lesson/Tcl_Portuguese/Tcl_Portuguese9.lsn +share/tcltutor/lesson/Tcl_Portuguese/about.html +share/tcltutor/lesson/Tcl_Portuguese/help.html +share/tcltutor/lesson/Tcl_Portuguese/htmllib.tcl +share/tcltutor/lesson/Tcl_Portuguese/scaler.tcl +share/tcltutor/options.tcl +share/tcltutor/simpleTop.tcl diff --git a/lang/tcltutor/distinfo b/lang/tcltutor/distinfo new file mode 100644 index 00000000000..327d9c9910e --- /dev/null +++ b/lang/tcltutor/distinfo @@ -0,0 +1,7 @@ +$NetBSD: distinfo,v 1.1 2019/10/07 14:37:34 kamil Exp $ + +SHA1 (tcltutor30b7.tgz) = 6dfa79b50189dbb3e5a1f004e0f711cd1fc2a90d +RMD160 (tcltutor30b7.tgz) = 02f389c5b5835f5280c20594be5b5415c2ef7e54 +SHA512 (tcltutor30b7.tgz) = 17af025b192eefcfde03bf4f9dc173030a0048e84de4ef42c4525f645e5b5067d9209af0da4b1bc632cfbc6faf9703b96eaf9148324c63e4a3d367671756f0f9 +Size (tcltutor30b7.tgz) = 263363 bytes +SHA1 (patch-TclTutor.tcl) = edc20e3bc3c8175f8feaa38befbed8537bd42514 diff --git a/lang/tcltutor/patches/patch-TclTutor.tcl b/lang/tcltutor/patches/patch-TclTutor.tcl new file mode 100644 index 00000000000..d3d0ce1915f --- /dev/null +++ b/lang/tcltutor/patches/patch-TclTutor.tcl @@ -0,0 +1,82 @@ +$NetBSD: patch-TclTutor.tcl,v 1.1 2019/10/07 14:37:34 kamil Exp $ + +- fix shebang +- disable logUsage+mailLog +- overwrite data dir + +--- TclTutor.tcl.orig 2014-03-20 14:27:20.000000000 +0000 ++++ TclTutor.tcl +@@ -1,8 +1,8 @@ +-package provide app-tcltutor 1.0 + #!/bin/sh + # \ + exec wish "$0" "$@" + ++package provide app-tcltutor 1.0 + package require Tk + + ;# NAME: TclTutor.tcl +@@ -139,8 +139,8 @@ proc parseArgs {stateVar {throwError 1}} + + switch $tcl_platform(platform) { + "unix" { +- set Tutor(sourceHome) [file dirname $argv0] +- set Tutor(lessonHome) [file dirname $argv0]/lesson ++ set Tutor(sourceHome) @TCLTUTOR_LIBDATADIR@ ++ set Tutor(lessonHome) @TCLTUTOR_LIBDATADIR@/lesson + set Tutor(rcHome) $env(HOME) + set Tutor(rcfile) [file join $Tutor(rcHome) .tcltutorrc] + set Tutor(logFileName) [file join $Tutor(rcHome) .tcltutoract] +@@ -160,8 +160,8 @@ proc parseArgs {stateVar {throwError 1}} + } + "macintosh" - + "mac" { +- set Tutor(sourceHome) [file dirname $argv0] +- set Tutor(lessonHome) [file dirname $argv0]/lesson ++ set Tutor(sourceHome) @TCLTUTOR_LIBDATADIR@ ++ set Tutor(lessonHome) @TCLTUTOR_LIBDATADIR@/lesson + set Tutor(rcHome) [file dirname $argv0] + set Tutor(rcfile) [file join $Tutor(rcHome) tcltutor.rc] + set Tutor(logFileName) [file join $Tutor(rcHome) tcltutor.act] +@@ -174,7 +174,7 @@ proc parseArgs {stateVar {throwError 1}} + } + } + +-set Tutor(noSaves) {sourceHome lessonHome} ++set Tutor(noSaves) {sourceHome lessonHome logUsage mailUsage} + + # + # check if a Scripted Document +@@ -694,7 +694,7 @@ proc createDisplay {} { + $mbf.file add command -label $l -command $l2 + } + +- if {[string match $tcl_platform(platform) "unix"]} { ++ if {0 && [string match $tcl_platform(platform) "unix"]} { + if {$Tutor(logUsage)} { + $mbf.file add command -label "Disable activity log" -command {set Tutor(logUsage) 0} + } else { +@@ -1153,6 +1153,8 @@ proc SetFontSize {} { + # + proc logUsage {str} { + global Tutor ++ ++ return + + if {$Tutor(logUsage) == 0} {return} + +@@ -1180,6 +1182,9 @@ proc logUsage {str} { + # + proc mailLog {} { + global Tutor tcl_platform ++ ++ return ++ + catch {close $Tutor(logFile)} + + switch $tcl_platform(platform) { +@@ -1388,4 +1393,3 @@ selectCourse [file join \ + [format "%s.%s" $Tutor(courseName) cfg]] + + applyOptions +- -- cgit v1.2.3