1 名前:デフォルトの名無しさん mailto:sage [2007/05/01(火) 14:52:44 ] 【英語サイト】 プロジェクト本拠地 tcl.sourceforge.net/ 最新版ソースコード ftp://ftp.tcl.tk/pub/tcl/nightly-cvs/ The Tcler's Wiki wiki.tcl.tk/ The comp.lang.tcl Newsgroup groups.google.com/group/comp.lang.tcl/ ActiveTcl www.activestate.com/products/activetcl/ 【日本語サイト】 もっとTcl/Tk www.interq.or.jp/japan/s-imai/tcltk/ Tcl/Tk Scripting Laboratory www.geocities.jp/urano343/tcltk.html Tcl/Tk Primer mibai.tec.u-ryukyu.ac.jp/~oshiro/Doc/tcltk_primer/ Tcl 8.4.1 Manual Command Reference www.freesoftnet.co.jp/tclkits/doc/TclCmdRef/tcl_contents_jp.htm CategoryTclTk - mynote reddog.s35.xrea.com/wiki/CategoryTclTk.html 【前スレ】 ●●●●TCL/TKなら俺に聞け●●●● pc11.2ch.net/test/read.cgi/tech/1033628416/
701 名前:本田 [2011/01/16(日) 21:53:27 ] >>693 Database Fishing Tool (DaFT) is a front-end to any database that can be connected to with an ODBC driver. daft.sourceforge.net/ New Version: 1.4.8.1 Released: 08 OCT 2010 This is a minor release, with some major bugfixes. * Fixed an issue with column information with non-English ODBC driver * Fixed the problem with data sheet column headings for new query results
702 名前:本田 [2011/01/21(金) 22:18:38 ] Miscellaneous Tcl packages vectorstream.com/tcl/packages/ Packages using the Tcl >= 8.5 module system
703 名前:本田 [2011/01/24(月) 06:41:26 ] Soar (認知アーキテクチャ) ja.wikipedia.org/wiki/Soar_%28%E8%AA%8D%E7%9F%A5%E3%82%A2%E3%83%BC%E3%82%AD%E3%83%86%E3%82%AF%E3%83%81%E3%83%A3%29 Soar(SOAR)とは、カーネギーメロン大学の John Laird、アレン・ニューウェル、Paul Rosenbloom が作成した認知アーキテクチャの一種。 認識とは何かという観点と、それに基づいた人工知能用のプログラムアーキテクチャの観点から構成される。 1983年に最初に作成され、1987年に論文として発表されて以来、多くの人工知能研究者が人間の行動の様々な観点の認知モデルを作成するのに Soar を用いている。 Welcome to the Soar Home Page sitemaker.umich.edu/soar/home ai.eecs.umich.edu/soar/sitemaker/releases/ Soar is a general cognitive architecture for developing systems that exhibit intelligent behavior. Researchers all over the world, both from the fields of artificial intelligence and cognitive science, are using Soar for a variety of tasks. sourceforge.net/projects/soar/
704 名前:本田 [2011/01/30(日) 12:22:00 ] Tcl 8.5 Network Programming https://www.packtpub.com/tcl-8-5-network-programming/book [PDF] Sample chapter - Tcl 8.5 Network Programming https://www.packtpub.com/sites/default/files/0967-chapter-7-using-common-internet-services.pdf Tcl 8.5 Network Programming [ペーパーバック] www.amazon.co.jp/Tcl-Network-Programming-Wojciech-Kocjan/dp/1849510962/ref=sr_1_1?ie=UTF8&s=english-books&qid=1296357607&sr=1-1
705 名前:デフォルトの名無しさん [2011/02/04(金) 21:47:25 ] wish8.4を使っています。 set pipe [open "|hoge"]とパイプを開いて、 場合によりhogeを途中で終了させたいのですが、 close $pipeやexec kill [pid $pipe]とやると、 どうしてもApplication Errorのダイアログが勝手に出てしまいます。 もう少し穏便に終了させたいのですが、この手のエラーを抑制するにはどうすればよいでしょう?
706 名前:デフォルトの名無しさん mailto:sage [2011/02/04(金) 22:11:44 ] catch
707 名前:デフォルトの名無しさん mailto:sage [2011/02/05(土) 11:36:25 ] 過疎スレ(過疎言語?)かと思ったら質問に20分でレスが付くとは。 GJすぐるw。本人じゃないけど礼を言いたいよ。
708 名前:デフォルトの名無しさん mailto:sage [2011/02/05(土) 14:37:39 ] >>706 ありがとうございます、例外の捕捉ができるのですね。
709 名前:デフォルトの名無しさん mailto:sage [2011/02/05(土) 23:58:42 ] このスレじゃないけど質問から1分で的確な回答が付いてたのを見たことがある
710 名前:デフォルトの名無しさん mailto:sage [2011/02/06(日) 00:03:35 ] そういうのは自演だから
711 名前:本田 [2011/02/06(日) 17:02:07 ] Great Unified Tcl/Tk Extension Repository www.flightlab.com/~joe/gutter/
712 名前:デフォルトの名無しさん mailto:sage [2011/02/13(日) 08:27:10 ] >>707 たまに本田氏が本気を出す時がある。 いりこ出汁的な意味で。
713 名前:デフォルトの名無しさん mailto:sage [2011/02/14(月) 22:33:41 ] 話題は無いけど監視はしてる
714 名前:本田 [2011/02/16(水) 06:58:49 ] My Home Page: Jean-Luc Fontaine jfontain.free.fr/ Software (source, documentation, miscellaneous): For Tcl versions 8.3.x and 8.4.x: tclperl a Perl package for Tcl jfontain.free.fr/tclperl.htm TclPerl/TclPython www.ellogon.org/petasis/index.php?option=com_content&task=view&id=27&Itemid=43 tclpython a Python package for Tcl jfontain.free.fr/tclpython.htm TclPerl/TclPython www.ellogon.org/petasis/index.php?option=com_content&task=view&id=27&Itemid=43
715 名前:本田 [2011/02/19(土) 23:56:32.45 ] Tcl/Tk Stuff www.cs.nott.ac.uk/~nem/tcl/ Tcl interface to the NJS JavaScript interpreter library (see njs-javascript.org). Note: LGPL licensed. www.cs.nott.ac.uk/~nem/tcl/tcljs-1.0.tar.gz
716 名前:本田 [2011/02/20(日) 23:10:04.75 ] downloads.activestate.com/ActiveTcl/releases/8.4.19.5/ActiveTcl8.4.19.5.294332-win32-ix86-threaded.exe downloads.activestate.com/ActiveTcl/releases/8.4.19.5/ActiveTcl8.4.19.5.294317-linux-ix86.tar.gz downloads.activestate.com/ActiveTcl/releases/8.4.19.5/ActiveTcl8.4.19.5.294317-linux-x86_64.tar.gz downloads.activestate.com/ActiveTcl/releases/8.4.19.5/ActiveTcl8.4.19.5.294317-macosx-universal-threaded.dmg downloads.activestate.com/ActiveTcl/releases/8.5.9.2/ActiveTcl8.5.9.2.294317-win32-ix86-threaded.exe downloads.activestate.com/ActiveTcl/releases/8.5.9.2/ActiveTcl8.5.9.2.294317-win32-x86_64-threaded.exe downloads.activestate.com/ActiveTcl/releases/8.5.9.2/ActiveTcl8.5.9.2.294317-macosx10.5-i386-x86_64-threaded.dmg downloads.activestate.com/ActiveTcl/releases/8.5.9.2/ActiveTcl8.5.9.2.294317-linux-ix86-threaded.tar.gz downloads.activestate.com/ActiveTcl/releases/8.5.9.2/ActiveTcl8.5.9.2.294317-linux-x86_64-threaded.tar.gz downloads.activestate.com/ActiveTcl/releases/8.6.0.0b5/ActiveTcl8.6.0.0b5.294318-win32-ix86-threaded.exe downloads.activestate.com/ActiveTcl/releases/8.6.0.0b5/ActiveTcl8.6.0.0b5.294318-win32-x86_64-threaded.exe downloads.activestate.com/ActiveTcl/releases/8.6.0.0b5/ActiveTcl8.6.0.0b5.294318-macosx10.5-i386-x86_64-threaded.dmg downloads.activestate.com/ActiveTcl/releases/8.6.0.0b5/ActiveTcl8.6.0.0b5.294318-linux-ix86-threaded.tar.gz downloads.activestate.com/ActiveTcl/releases/8.6.0.0b5/ActiveTcl8.6.0.0b5.294318-linux-x86_64-threaded.tar.gz
717 名前:本田 [2011/02/22(火) 21:20:38.31 ] >>715 Embed javascript in Tcl code.google.com/p/tcljs/ This project creates a Tcl extension to embed a javascript interpreter (Spidermonkey) in a Tcl/Tk application.
718 名前:本田 [2011/03/26(土) 00:26:40.20 ] Ayam ayam.sourceforge.net/ The current stable version is 1.19, released 16. Mar 2011.
719 名前:デフォルトの名無しさん [2011/04/03(日) 15:32:59.92 ] % puts $tcl_version 8.4 % puts $tcl_patchLevel 8.4.19 % ls -tr a.txt b.txt c.txt % ls -tr *.txt /bin/ls: *.tclにアクセスできません: そのようなファイルやディレクトリはありません child process exited abnormally % exec ls -tr *.txt ls: *.tclにアクセスできません: そのようなファイルやディレクトリはありません なんでダメなの?
720 名前:719 mailto:sage [2011/04/03(日) 15:37:22.20 ] /bin/ls: *.txtにアクセスできません の間違いです。すんません。
721 名前:本田 [2011/04/03(日) 21:24:48.73 ] tkcon.tcl使ってみたら?
722 名前:デフォルトの名無しさん mailto:sage [2011/04/04(月) 23:37:12.86 ] globとか。
723 名前:デフォルトの名無しさん mailto:sage [2011/04/05(火) 22:34:50.19 ] >>719 OSは?
724 名前:デフォルトの名無しさん mailto:sage [2011/04/06(水) 10:52:07.57 ] >>719 eval exec ls [glob *.txt]
725 名前:デフォルトの名無しさん mailto:sage [2011/04/17(日) 23:05:54.75 ] Tcl、GoogleのNative Clientに対応した「NaTcl」を発表 slashdot.jp/developers/11/04/15/181223.shtml > スクリプト言語TclをGoogleのNative Client環境で実行可能な「NaTcl」が発表された。 > NaTclを使用することでTclをWebブラウザ上で実行可能となり、Tclプログラムで > Google ChromeのDOM(Document Object Model)に直接アクセスできる。これにより、 > JavaScriptの代わりにTclでWebアプリケーションを作成することが可能となる。 > また、Natice Client向けのTk、「NaTk」もまもなくリリースされるとのこと。 これでTcl/Tkの新しい本が出るようになるかな?
726 名前:デフォルトの名無しさん [2011/04/17(日) 23:17:37.46 ] 昔Tcletってあったよね。
727 名前:デフォルトの名無しさん mailto:sage [2011/04/18(月) 09:11:17.63 ] >>726 今でもある
728 名前:デフォルトの名無しさん mailto:sage [2011/04/19(火) 00:21:24.65 ] すらどで話題になりなおかつそこそこコメントが付いてることにワシは感動しておるw まだ見放されてなかったw
729 名前:デフォルトの名無しさん mailto:sage [2011/04/20(水) 15:53:49.10 ] ペイントソフトをつくろうと思っています TkCanvasではTkcLine等を用いたベクタ形式の画像処理しかできないようですが BMPファイル画像等の任意のピクセルの値の読み書きといった いわゆるペイント系の処理はどのWidgetを使えば実装できるのでしょうか ご教示お願いします
730 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 20:32:05.36 ] できますよ
731 名前:デフォルトの名無しさん mailto:sage [2011/05/03(火) 23:02:06.65 ] >>729 難しいことなんて何もないよ。 package require Img image create photo image1 -file sample.bmp canvas .c .c configure -width [image width image1] -height [image height image1] .c create image 0 0 -image image1 -anchor nw pack .c set rgb [image1 get 10 10] tk_messageBox -type ok -message "X=10,Y=10のRGB値:$rgb" for {set i 1} {$i < 100} {incr i} { image1 put #ff0033 -to $i $i }
732 名前:デフォルトの名無しさん [2011/05/07(土) 22:56:08.08 ] バイナリファイルを読み込んで、編集して、別名で書き込むにはどうしたら良いでしょうか。 open、binary format、binary scan、puts、getsあたりを使えばできるだろうと思い、試行錯誤したのですが どうしてもうまくいきません。 Tclは書籍(特に和書)が少ないのでwebの情報が頼りですが、 思ったような情報が見つからず困っています。
733 名前:デフォルトの名無しさん mailto:sage [2011/05/08(日) 00:39:37.94 ] そのコマンド列にfconfigureコマンドが無いのが気になった。
734 名前:デフォルトの名無しさん mailto:sage [2011/05/08(日) 00:55:01.94 ] >>733 確かにfconfigureも必要かもしれませんね。 できれば一部のデータを置換して別名で保存するようなサンプルが見てみたいです。
735 名前:デフォルトの名無しさん mailto:sage [2011/05/08(日) 01:34:03.82 ] まず、試行錯誤してみたコードを貼り付けてみたらどうですか 適当な1バイトを読んでその値を2倍して別ファイルに書き込むのは13行くらいでできた。
736 名前:デフォルトの名無しさん mailto:sage [2011/05/08(日) 01:49:08.08 ] ただファイルを読んでそのまま書き込むだけでも失敗してます。 set fileID [open IM000001] set fileID2 [open IM000002 w] fconfigure $fileID -translation binary set strvar [read $fileID] binary scan $strvar H* value set len [string length $value] puts $fileID2 [binary format H$len $value] close $fileID
737 名前:736 mailto:sage [2011/05/08(日) 01:53:11.25 ] ちなみにPythonでは簡単に成功しました。 import re infile = open("IM000000", 'r') outfile = open("COPYDCM", 'w') data = infile.read() data = re.sub("20110214911005", "99887766554433", data) outfile.write(data) infile.close() outfile.close()
738 名前:736 mailto:sage [2011/05/08(日) 01:56:24.08 ] 737のスクリプトはIM000000というファイルの20110214911005を99887766554433に置換して COPYDCMという名前で保存するだけです。 Tclではその程度ですら自分にはできません。
739 名前:デフォルトの名無しさん mailto:sage [2011/05/08(日) 02:01:45.23 ] 少なくとも fileID2 にも -translation binary が必要で、puts に -nonewline オプションが必要だともう。
740 名前:736 [2011/05/08(日) 02:06:42.32 ] >>739 ご指摘の通りにしたら正常に動作しました。 これがわかれば置換等の編集をして保存することも難しくないかもしれません。 頑張ってみます。 ありがとうございました。
741 名前:733 735 739 mailto:sage [2011/05/08(日) 02:15:08.51 ] どういたしまして。 Pythonが使えるのになぜTclなんだという疑問がありますが、Tcl使いが増えるとちょっとうれしい。
742 名前:デフォルトの名無しさん [2011/05/10(火) 20:13:53.27 ] あるディレクトリ内にあるファイルのパス名のリストを得るにはどうしたら良いでしょうか? 同じ階層だけであればglobで簡単にできますが、 下層にあるディレクトリ内のファイルも全て対象にしたいのです。
743 名前:デフォルトの名無しさん mailto:sage [2011/05/10(火) 21:29:56.14 ] globを再帰でつくる とか、 Tcllibパッケージのfileutilを使う package require fileutil ::fileutil::findByPattern . -glob *
744 名前:デフォルトの名無しさん mailto:sage [2011/05/12(木) 00:00:56.94 ] Tcl/Tkによるバイナリエディタ reddog.s35.xrea.com/wiki/bineditor.html
745 名前:デフォルトの名無しさん mailto:sage [2011/05/19(木) 00:16:38.55 ] >>741 自分はこれからTcl/Tkを覚えようかとしてるんですが、この言語けっこう恵まれてません? まぁ、自分のニーズもあるんですが、 ・スクリプトで、GUIを手軽に書ける ・グラフの描画ライブラリがある(クリック可能) ・他言語との連携ができる ・単独で動作するバイナリができる ・言語仕様が簡単 ・クロスプラットフォーム ・オープンソース ・枯れてる この条件だとPythonでもよかったんですが、Pmw.Bltはちと不安で…。 自分でメンテ+拡張しようにも、結局内部でTkコマンド呼んでるだけだったんで、なら、ということで。
746 名前:デフォルトの名無しさん mailto:sage [2011/05/22(日) 00:30:34.87 ] なぜかユーザーは少ない。最近はちょっと増えてきた気もするが 8.3〜8.4のころは本当に見向きもされてなかった
747 名前:デフォルトの名無しさん [2011/05/22(日) 23:15:17.27 ] PythonでTkinterを介してTkを利用するのって難しすぎじゃね? Tcl/Tkに慣れすぎると、Tkinterが煩わしくて仕方ない。 どうしてもPythonを使わざるをえない場合は仕方ないけど できるだけTcl/Tkでやりたくなる。
748 名前:デフォルトの名無しさん [2011/05/23(月) 23:08:54.27 ] まあPython使うときはTk以外の選択肢いっぱいあるのでTk使わなくてもいいんでは
749 名前:デフォルトの名無しさん mailto:sage [2011/06/08(水) 22:15:40.29 ] Tclってfork()できないのがつらい。 TclXはちょっと...
750 名前:デフォルトの名無しさん mailto:sage [2011/06/09(木) 20:54:44.14 ] 誰かWin/Linuxでドラッグ&ドロップができるようになる拡張、 8.5以降に対応しているので知らんかね… とりあえずTkDND 2.2を試して見てるんだけど、8.5には対応 してないらしく、何ヶ所かバグを潰してXConvertSelectionまで 辿り着いたとこで、手詰まった。 ※XConvertSelectionをLD_PRELOADでフックして、ちゃんと Timeを与えるようにしたのにtimeoutになる、なぜだ…
751 名前:デフォルトの名無しさん mailto:sage [2011/06/11(土) 15:06:12.77 ] TkDNDのfixかなり粘ったけど、これは無理。 Tk本体のselection getもtext/uri-listに対応してなかったり、かなり根が深そう。 これ修正するくらいだったら、一から実装したほうが多分早い。くそぅ。
752 名前:デフォルトの名無しさん mailto:sage [2011/06/12(日) 13:33:18.93 ] 誰か詳しい方、Tcl_CreateThreadについて教えてください… 拡張の処理に時間のかかる部分をThread化して、終了をvwait bgstatとかで 待とうとしてるんですけど、www.tcl.tk/ のマニュアルには 「スレッドは親のinterpに触ってはいけない」とか書いてあるんで、スレッドから set bgstatすることはできないようなのです。 このあたり、普通はどういう処理をするんでしょうか? サンプルコードの場所なり、このソース読めば判るんじゃね、でも構わないんで、 なにかヒントをお願いします。 (vwaitのEXAMPLEにあるsocketコマンドは勘弁してください、挫折しました)
753 名前:デフォルトの名無しさん mailto:sage [2011/06/12(日) 17:44:41.87 ] >>752 Tcl_CreateThread()ということは、Cで拡張を書いている? だったら、Tcl_AsyncMark()が使えると思う。 Tclのthreadコマンドだったら、thread(n)に書いてあるように、thread::sendを 使えば、threadの結果をvwait出来ると思う。
754 名前:デフォルトの名無しさん mailto:sage [2011/06/12(日) 18:28:11.50 ] >>753 Thanks! CなのでTcl_AsyncMarkですが、マニュアルを読む限りそれっぽい! とりあえず、何かサンプル書いて確かめてみます。
755 名前:デフォルトの名無しさん mailto:sage [2011/06/12(日) 19:33:11.70 ] …あれ? 自分の理解では、これで合ってるはずなんですが… スレ汚し失礼。 ---------- #include <stdio.h> #include <unistd.h> #include <tcl.h> static Tcl_AsyncHandler async_handle; static int proc_finished(ClientData clientData, Tcl_Interp *interp, int code) { Tcl_SetVar2Ex(interp, "bg_stat", NULL, Tcl_NewIntObj(1), TCL_LEAVE_ERR_MSG); printf("bg_stat has been set to 1.\n."); return code; } Tcl_ThreadCreateType threaded_proc(ClientData clientData) { sleep(5); Tcl_AsyncMark(async_handle); } static int asynctestHandleProc(ClientData data, Tcl_Interp* interp, int objc, Tcl_Obj* CONST objv[]) { Tcl_ThreadId idPtr; Tcl_CreateThread(&idPtr, threaded_proc, NULL, TCL_THREAD_STACK_DEFAULT, TCL_THREAD_JOINABLE); return TCL_OK; }
756 名前:デフォルトの名無しさん mailto:sage [2011/06/12(日) 19:34:05.54 ] DLLEXPORT int Asynctest_Init(Tcl_Interp* interp) { async_handle = Tcl_AsyncCreate(proc_finished, NULL); Tcl_CreateObjCommand(interp, "asynctest", asynctestHandleProc, NULL, NULL); return Tcl_PkgProvide(interp, "asynctest", "0.0.1"); } ---------- #!/usr/bin/env tclsh load [file join . libasynctest[info sharedlibextension]] asynctest set bg_stat 0 set wait_stat 0 asynctest puts "bg_stat is $bg_stat." after 6000 {set wait_stat 1} vwait wait_stat puts "bg_stat is $bg_stat." ---------- $ ./asynctest.tcl bg_stat is 1. セグメンテーション違反です
757 名前:デフォルトの名無しさん mailto:sage [2011/06/12(日) 20:18:25.01 ] Tcl_SetVar2Ex呼ぶとこでinterpがNULLになってる… なんか勘違いしてるっぽいですね。
758 名前:753 mailto:sage [2011/06/12(日) 21:15:52.82 ] >>755 Tcl_AsyncMark(3)の It is also possible for proc to be invoked when no interpreter is active. そのものでは? interp作る場合も注意が必要かな。tcllibとかにも注意。 親Threadにthread::sendでincr varとかを投げるほうが良いような気がしてきたけど。
759 名前:デフォルトの名無しさん mailto:sage [2011/06/12(日) 21:53:20.76 ] >>758 ありがとうございます、仰る通りな気がします。 Tclのソースでも、 generic/tclAsync.c: Tcl_AsyncInvoke() If invoked from Tcl_Eval just after completing a command, points to interpreter. Otherwise it is NULL. generic/tclTest.c: AsyncHandlerProc() this (interp==NULL) should not happen, but by definition of how async handlers are invoked, it's possible. とか書いてありました。 ほぼUndocumentedで、これはない… Tcl覚え始めてから、使う拡張ことごとく酷い目に合わされてるんで、 正直、使う拡張は最低限にしたく。 で、結局Tcl_AsyncCreateの第二引数にinterp渡して、無理矢理 proc_finishedで使えば、とりあえずは動くようです(Evilですが…)。 仕組み上ではこれで悪くないはず?なので、これで行こうと思います。 ほんとにありがとうございます。
760 名前:758 mailto:sage [2011/06/13(月) 00:33:27.18 ] >>759 どこで見たか思い出ないけど、Tcl_AsyncCreate()した時(=拡張のロード時)に interpを保存しておいて、AsyncHandler()の引数がNULLの場合は保存したinterpを 使っていた。同じことをして動いた記憶はある。 引数がNULLということはコマンドを実行していないので、保存していたinterpを 使っても問題にはならないらしい。 逆に、複数のinterpが存在するとAsyncHandler()が呼ばれた時に渡されるinterpが 通知先である保証が無いのかな? NULLでないのは何らかのコマンドが終了した瞬間だから、保存していたinterpを 使っても安全な気もするから、実行するコマンドが絶対に成功するようにすれば それでいいんでは?
761 名前:デフォルトの名無しさん mailto:sage [2011/06/13(月) 23:10:25.66 ] >>760 おぉ、詳細なご説明ありがとうございます。 ぼんやりとしていた理解が、明確になった気がします。 やっぱり同じ事を考えた方はいらっしゃるんですね。 というか、スレッドの終了をvwaitで待ちたいとか割とありえる状況な気がしますが、 ぐぐってもKodersでもまともにヒットしないってどういうこと… この辺がニッチな言語の、もの悲しいとこですね。
762 名前:デフォルトの名無しさん mailto:sage [2011/06/16(木) 00:12:12.28 ] ActiveTcl の8.4 から8.5に移行しようとしてるんだけど、8.5でなんかエクステンションが すごく減ってない? 例えば8.4であったTclXMLが8.5には見当たらない。 インストールしたのは ActiveTcl8.5.9.2.294317-linux-ix86-threaded.tar.gz. ドキュメントにはあるんだけど... docs.activestate.com/activetcl/8.5/tclxml/index.html だいたい、8.4のtar玉は28Mあったのに8.5は20Mしかない downloads.activestate.com/ActiveTcl/releases/8.4.19.5/ downloads.activestate.com/ActiveTcl/releases/8.5.9.2/
763 名前:762 mailto:sage [2011/06/16(木) 02:37:19.87 ] >>116-119 に解答がありました。 失礼しました。
764 名前:天使 ◆uL5esZLBSE mailto:sage [2011/07/05(火) 02:14:58.01 ] ↓↓ 「「「「「「「「「 に解答がありました。 失礼しました。 」」」」」」」」」(爆ッゴミッッ!
765 名前:デフォルトの名無しさん mailto:http://www.geocities.jp/c_zelos/soto/tensi_no_aori.zip [2011/07/06(水) 17:28:55.22 ] ↓ <<<<<<<<<<<<< 「「「「「「「「「 に解答がありました。 失礼しました。 」」」」」」」」」(爆ッゴミッッ! >>>>>>>>>>>>>(キリッ!!!きリッ!!!! ↑↑(きリキリッッ!キリ 土方が何をほざいて(笑) 天使#test_s 「天使の煽り」の提供でお送りしました
766 名前:デフォルトの名無しさん mailto:sage [2011/07/07(木) 21:59:23.84 ] >>763 それは2007年当時の話。今のActiveTclでは teacupで必要な拡張をダウソするのがナウ。
767 名前:本田 [2011/07/11(月) 23:50:09.19 ] [Tcl-announce] ActiveTcl 8.5.10.0 released code.activestate.com/lists/tcl-announce/371/
768 名前:本田 [2011/07/12(火) 00:00:32.94 ] downloads.activestate.com/ActiveTcl/releases/8.5.10.0/ downloads.activestate.com/ActiveTcl/releases/8.5.10.0/ActiveTcl8.5.10.0.294993-html.tar.gz downloads.activestate.com/ActiveTcl/releases/8.5.10.0/ActiveTcl8.5.10.0.294993-linux-ix86-threaded.tar.gz downloads.activestate.com/ActiveTcl/releases/8.5.10.0/ActiveTcl8.5.10.0.294993-linux-x86_64-threaded.tar.gz downloads.activestate.com/ActiveTcl/releases/8.5.10.0/ActiveTcl8.5.10.0.294993-macosx10.5-i386-x86_64-threaded.dmg downloads.activestate.com/ActiveTcl/releases/8.5.10.0/ActiveTcl8.5.10.0.294993-win32-ix86-threaded.exe downloads.activestate.com/ActiveTcl/releases/8.5.10.0/ActiveTcl8.5.10.0.294993-win32-x86_64-threaded.exe downloads.activestate.com/ActiveTcl/releases/8.5.10.0/MD5SUM downloads.activestate.com/ActiveTcl/releases/8.5.10.0/SHA256SUM
769 名前:本田 [2011/07/12(火) 21:01:46.78 ] Teacup wiki.tcl.tk/17305 Teacup provides access to the Tcl Extension Archive. It is the client to the TEApot server. It is distributed with ActiveTcl by ActiveState.
770 名前:デフォルトの名無しさん mailto:sage [2011/07/26(火) 13:53:55.22 ] canvasで書いた円と線の交差判定をしたいです。 計算しなくてもできるって聞いたんですがどうすればいいですか?
771 名前:本田 [2011/07/30(土) 06:39:19.48 ] 円じゃなくて長方形領域ようだけど。 homepage3.nifty.com/kaku-chan/tcl_tk/chapter_231.html pathName addtag tag overlapping x1 y1 x2 y2 x1 y1 x2 y2 を座標とする長方形領域に少しでも重なるアイテムに対して tag で示されるタグを付けます。 x1 は x2 以下、y1 は y2 以下の数値でなければなりません。
772 名前:本田 [2011/07/30(土) 06:43:22.91 ] downloads.activestate.com/ActiveTcl/releases/ downloads.activestate.com/ActiveTcl/releases/8.5.10.1/ downloads.activestate.com/ActiveTcl/releases/8.5.10.1/ActiveTcl8.5.10.1.295062-html.tar.gz downloads.activestate.com/ActiveTcl/releases/8.5.10.1/ActiveTcl8.5.10.1.295062-linux-ix86-threaded.tar.gzhttp://downloads.activestate.com/ActiveTcl/releases/8.5.10.1/ActiveTcl8.5.10.1.295062-linux-x86_64-threaded.tar.gz downloads.activestate.com/ActiveTcl/releases/8.5.10.1/ActiveTcl8.5.10.1.295062-macosx10.5-i386-x86_64-threaded.dmg downloads.activestate.com/ActiveTcl/releases/8.5.10.1/ActiveTcl8.5.10.1.295062-win32-ix86-threaded.exe downloads.activestate.com/ActiveTcl/releases/8.5.10.1/ActiveTcl8.5.10.1.295062-win32-x86_64-threaded.exe downloads.activestate.com/ActiveTcl/releases/8.5.10.1/MD5SUM downloads.activestate.com/ActiveTcl/releases/8.5.10.1/SHA256SUM
773 名前:本田 [2011/07/30(土) 06:52:55.54 ] ×downloads.activestate.com/ActiveTcl/releases/8.5.10.1/ActiveTcl8.5.10.1.295062-linux-ix86-threaded.tar.gzhttp://downloads.activestate.com/ActiveTcl/releases/8.5.10.1/ActiveTcl8.5.10.1.295062-linux-x86_64-threaded.tar.gz downloads.activestate.com/ActiveTcl/releases/8.5.10.1/ActiveTcl8.5.10.1.295062-linux-ix86-threaded.tar.gz downloads.activestate.com/ActiveTcl/releases/8.5.10.1/ActiveTcl8.5.10.1.295062-linux-x86_64-threaded.tar.gz
774 名前:デフォルトの名無しさん mailto:sage [2011/08/03(水) 22:02:33.46 ] Tclって複数行にわたるコメントってできるの?Cの/* ... ... */みたいな。 エディタに頼って全行頭をイゲタるしかないのか。 if 0 { } ってのもなんだかなぁ...
775 名前:デフォルトの名無しさん mailto:sage [2011/08/03(水) 22:39:32.06 ] どこのJava
776 名前:デフォルトの名無しさん mailto:sage [2011/08/05(金) 22:47:02.97 ] >>774 できない。諦めろ。
777 名前:デフォルトの名無しさん mailto:sage [2011/08/05(金) 22:48:49.89 ] proc rem comment {} rem { こめんととめんと こめんとこめんとおおおお!!! }
778 名前:デフォルトの名無しさん mailto:sage [2011/08/06(土) 00:08:22.24 ] コメント途中に閉じ中カッコであぼーん
779 名前:デフォルトの名無しさん mailto:sage [2011/08/06(土) 17:21:09.88 ] # コメント1\ コメント2\ コメント3# でいけそうだけどどうかな? # もコマンドみたいなものだから \ で続けて書けそうな気がする 最後の # は無くてもいいけど終端という意味で
780 名前:デフォルトの名無しさん [2011/08/06(土) 21:28:04.24 ] それは毎行つけるので行頭#とあんまり大差ないな
781 名前:デフォルトの名無しさん mailto:sage [2011/08/07(日) 08:03:02.17 ] Emacsで範囲指定して M-x comment-region
782 名前:デフォルトの名無しさん mailto:sage [2011/08/09(火) 19:15:00.11 ] C風。 proc /* {script} {} proc */ {} {} /* { puts hello puts hello puts hello }; */ HTML風。 proc <!-- {script} {} proc --> {} {} <!-- { puts hello puts hello puts hello }; -->
783 名前:デフォルトの名無しさん mailto:sage [2011/08/09(火) 21:18:47.70 ] set comment { コメント } >>782 と >>777 と同じく、中括弧がバランスしないと破綻する。 中括弧だけなら、 set comment " コメント " という手もあるけど、" と カギ括弧[] を意識しないといけない
784 名前:デフォルトの名無しさん mailto:sage [2011/08/09(火) 21:26:01.94 ] #コマンドの振る舞いって謎だな {}は改行も含めて一つの要素にするはずだから、 # {あほ ばか } で#コマンドは{あほ改行ばか改行}を一つの引数とするはずなのに、{あほ まででコメントが終了しちゃうよね。 set a {あほ ばか } だとちゃんとaに{あほ改行ばか改行}が入るのに
785 名前:デフォルトの名無しさん [2011/08/09(火) 22:50:35.79 ] #はTclにおいてもコマンドではない。が正解。
786 名前:デフォルトの名無しさん mailto:sage [2011/08/10(水) 22:11:16.68 ] なるほど #はコマンドの置ける位置に置かねばならないがコマンドではなく行末までのコメントとして処理されるということか 行末の\継続は生きてる状態で。
787 名前:デフォルトの名無しさん mailto:sage [2011/08/27(土) 23:51:43.68 ] toplevel .w1 bind .w1 <Destroy> "puts destroyed" button .w1.b1 button .w1.b2 pack .w1.b1 .w1.b2 ってやって、.w1を閉じると"destroyed"が3回出てくる。 子持ちウィジェットを閉じると、子供の分まで<Destroy>イベントが発生するらしい。 これって仕様なのかな。
788 名前:デフォルトの名無しさん mailto:sage [2011/08/28(日) 21:06:23.24 ] >>787 仕様。 但し正確には、子供のぶんまでイベントが発生するのではなくて、子供が処理するイベントに toplevelのぶんが含まれている。 "puts destroyed %W" とかするとわかると思う。 あとはbindtagsのman-page参照。
789 名前:デフォルトの名無しさん mailto:sage [2011/08/29(月) 23:40:56.18 ] >> 787 やりたいこととあってるか分からないけど、toplevel限定なら toplevel .w1 proc CLOSE_TOPLEVEL {w} { puts $w } wm protocol .w1 WM_DELETE_WINDOW [list CLOSE_TOPLEVEL .w1] とかはできる。
790 名前:デフォルトの名無しさん mailto:sage [2011/08/29(月) 23:52:37.47 ] AssocQueryStringWというWindows APIが使いたかったので、 msdn.microsoft.com/en-us/library/bb773471 (v=vs.85).aspx package require Ffidl ffidl::callout AssocQueryString {int int pointer-utf8 pointer-utf8 pointer-utf8 int} int [ffidl::symbol shlwapi.dll AssocQueryStringW] としてみたんですが、 set ASSOCF_NOTRUNCATE 32 set ASSOCSTR_EXECUTABLE 2 set pszFile [string repeat \0 255] set dwOut 0 AssocQueryString $ASSOCF_NOTRUNCATE $ASSOCSTR_EXECUTABLE {c:\sample.txt} "open" $pszFile $dwOut => -2147024809 というのが返ってきます。 たぶん、ERROR_INVALID_PARAMETER(0x80070057) のことだと思うんですが、どの辺が間違ってるんでしょうか?
791 名前:デフォルトの名無しさん mailto:sage [2011/08/31(水) 00:16:00.83 ] >>788 >>789 ありがd とりあえず bind .w1 <Destroy> ... のかわりに bind .w1.b1 <Destroy> ... にしたら(子供がいないので)一回だけ処理されるので 目的は達成できてますが、動作が疑問だったんで。
792 名前:デフォルトの名無しさん mailto:sage [2011/09/01(木) 20:45:44.79 ] >>790 1 W系は文字列がUnicode(UTF-16) 2 dwOutが0だと書き込むメモリ領域も0扱い package require Ffidl ffidl::callout AssocQueryString \ {int int pointer-utf16 pointer-utf16 pointer-var int} int \ [ffidl::symbol shlwapi.dll AssocQueryStringW] set ASSOCF_NOTRUNCATE 32 set ASSOCSTR_EXECUTABLE 2 set dwOut 1000 set pszFile [binary format x$dwOut] set result [AssocQueryString \ $ASSOCF_NOTRUNCATE \ $ASSOCSTR_EXECUTABLE \ "c:\\sample.txt" \ "open" \ pszFile \ $dwOut] puts result=$result puts pszFile=[string trim [encoding convertfrom unicode $pszFile] \x00] XPだと動くけど、64bit版Vistaだとクラッシュするのお・・・。
793 名前:デフォルトの名無しさん mailto:sage [2011/09/09(金) 01:55:06.30 ] >>792 どうもありがとう。 32bit版Win7ではクラッシュ。型が違うのかなあ。。。
794 名前:デフォルトの名無しさん mailto:sage [2011/09/09(金) 23:18:14.02 ] >>793 イベントログにはなんて出てる?ワシのは エラー 2011/09/09 22:49:03 Application Error 1000 (100) 障害が発生しているアプリケーション tclsh85.exe、バージョン 8.5.2.2、タイム スタンプ 0x47f30c38、 障害が発生しているモジュール SHELL32.dll、バージョン 6.0.6002.18393、タイム スタンプ 0x4d39b5c7、 例外コード 0xc0000005、障害オフセット 0x00008f1a、 プロセス ID 0x17ec、 アプリケーションの開始時刻 0x01cc6ef73c41e270。 て。ひょっとしてshlwapiが壊れてる?
795 名前:デフォルトの名無しさん mailto:sage [2011/09/10(土) 01:09:56.11 ] 脳が障害を起こしました
796 名前:デフォルトの名無しさん mailto:sage [2011/09/12(月) 00:35:13.36 ] >>794 なんかJITデバッガのせいでイベントログには残らないみたいですが、 デバッガには以下が表示されてました。 wish84.exe の 0x76d93d52 (shell32.dll) でハンドルされていない例外が発生しました: 0xC0000005: 場所 0x000003e8 を読み込み中にアクセス違反が発生しました。 CAssocArray::GetStringという関数でエラーになってるらしいですが、何に使われてるのかは不明。
797 名前:デフォルトの名無しさん mailto:sage [2011/10/22(土) 17:14:45.57 ] Tcl/tkって、伺かみたいなGUIは実現できるのでしょうか?
798 名前:デフォルトの名無しさん mailto:sage [2011/10/25(火) 23:08:12.87 ] > 797 この辺があればできるのではないかと。 二次元キャラ -> Tk canvas + Imgでpngファイルが使える + TkTrans.dllで背景透過 サウンド -> snack Windows API, COMの利用 -> TWAPIとFfidl, tcom 設定画面とかは普通にTkで。垢抜けた見た目を求めるならtile拡張 知識の泉 * ActiveTclに添付のヘルプ * wiki.tcl.tk/ * www.tkdocs.com/ ActiveTclに標準添付じゃない拡張たち TkTrans.dll goo.gl/gwXa1 TWAPI twapi.magicsplat.com/ Ffidl elf.org/ffidl/
799 名前:デフォルトの名無しさん mailto:sage [2011/10/30(日) 13:19:20.79 ] canvasで、ある位置の色を取得したいのですが可能でしょうか? どうすれば取得できるでしょうか?
800 名前:デフォルトの名無しさん mailto:sage [2011/10/31(月) 19:58:14.80 ] > 799 できたよ。 wp.me/pSK5T-4g