Purpose: to collect information about the implementation of the [Wikit] being used to present the content of this web site. To prevent this page growing too large it has been split into a number of smaller pages. New suggestions should be added to this page. Other suggestions are available in: * [Suggestions for Wikit Diffs Discussion] created February 23 2005 * [Suggestions for Wiki Diffs Discussion] * [Suggestions for Wikit Archive 1] created September 9, 2003. (older suggestions) ---- **POSTING AT THE BOTTOM PLEASE** DCP: 12/05/05: OK, Could you make the page open at the bottom so that I see the most recent news/changes without having to scroll around! Those who post to this page do not seem to agree whether new posts should be made '''on top''' or '''at the bottom''' of the page... [LV] That's true of most of this web site... '''LET'S POST AT THE BOTTOM FROM NOW ON...''' [LV] I have, at times, wished that the wiki by default placed comments on the page (time stamping them), on its own, so the issue was moot. If it did, I'd advocate the comments being added at the top of the page - less scrolling that way. ---> Indeed but please check first in this page and the other pages mentioned on the very top if your suggestion has not been given by someone else. In that case, add your comments to the existing suggestion. Thanks! ---- **A table of contents** 2004/11/2 [sheila] Is there a way to generate a table of contents similar to the %TOC% in twiki? 23 February 2005 [unperson] '''Here is the answer Sheila''' 20041216 [RA2] What is the link to click on to get a list of all pages on WikiT. Thanks! [aa] - A typical Wikit stores its pages in a [Metakit] database. See [Some Wikit scripts] for ways to extract information from one. The first script on that page can be trivially modified to give a list of all pages. (Oh, and it's spelled '''Wikit'''. It isn't the word "Wiki" followed by a capital T. It's a blend of '''Wiki''' and '''kit''', because it's usually implemented as a [Starkit].) [RA2] Thanks Allan but I'm afraid I don't have that programming knowledge and talent for I'm not a programmer. I thought there was an index of all pages function here like on all wikis... I guess not... But thanks anyway... [aa] - Pardon? I thought I showed you where to find the programming knowledge you seemed to want. You want an index of all pages in a [Wikit]? Use the first of [some Wikit scripts] to get it. The trivial modification I mentioned is merely to change a reference from '''db.scripts''' to '''db.pages''' and remove anything related to '''text''' (i.e. the last three lines of the '''mk::loop''' body). Change the '''puts''' line if you want the index to be in a particular format. If you're "not a programmer", it seems rather odd that you'd be frequenting a Wiki dedicated to a programming language. (Oh, and it's spelled '''Alan'''.) [RA2] Well it is not that odd. I am a software designer, an architect, a non-coding project manager you might say. In the old days the term was "analyst". My interest is more in designing algorithms, writing pseudo-code, interfaces and of course managing computing projects. I am primarly a linguist, a computational linguist (translation by computer). In any case, I could certainly try to modify the script you suggest and maybe I'll make an exe out of it and ask JCW to put it on the site so that others don't have to go through the same hassle everytime they need a list of all pages. Especially non-programmers like me. :-) Thanks Alan (with one "l") :-) and happy new year! '''It would be great to have this index among the functions on the bottom of the page!''' [LV] The topic of a master index of pages for the wiki has come up before. The owner of the wiki so far has not created that. However, you can generate an index without writing any code. Take a look at [wikitool], which has a wonderful set of various functions, such as generating cross references, indexes, extracting and updating pages, etc. [DKF] ''(11-11-2007)'': Can now have within-page TOC (used in this page). A whole-wiki TOC is something else entirely... ---- **A wiki with sections in different languages** [LES] on June 05, 2004: Someone (not me) has started to provide the translation of a few pages into Portuguese, like [after PT] e [Boas PrĂ¡ticas]. The intention is good, but I fear for the sanity of this wiki if many people start doing it. A Tower of Babel it will be. So I suggest, like the new '''/tcl/revs/''' sub-section, language-specific sub-sections: '''/tcl/pt/''', '''/tcl/fr/''', '''/tcl/jp/''' etc. This page in Portuguese would be found at http://wiki.tcl.tk/pt/19 , for example. ''I fear for a tower of Babel too. Can't easily do language subdirs. My vote would be to keep this wiki mostly English, with pointers to everything else. -[jcw]'' ---- **A create a new page function** [LV] One thing that might make it easier for new users to get involved in contributed new material on the wiki would be a new function on each page called ''Create a new page''. My first thought of how that might work would be this. Upon activation, a form would come up. On that form would be the following info: Title: Entry field with the words "Replace this text with your new page title" Body: A text entry box with a dozen lines or so See also: Entry box with the title of the previous page in [[brackets]], but with room for more references. Category: current categories listed as checkboxes Save button Cancel button [DKF] ''(11-11-2007)'': That would make it too easy to create unlinked pages. OTOH, the current form for going from an empty to a non-empty page makes a number of things easy to fill in. ---- **Patch for a Preview** [sm] January 23, 2004 A number of people at our site have requested a "Preview" button on the Edit page. I've seen this requested on the Tclers Wiki as well. So, I've created a patch that adds this functionality at [Wikit web Preview button]. ---- **Patch to rename pages** [AKG] September 26, 2003 I've extended the patch in [Wikit web Cancel button] to allow pages to be renamed. As with the Tk interface, all references to the page are updated. ---- ***Another Patch of wikit.kit to rename pages*** [DQ] January 08, 2007 Add a textarea in the 'Edit' page. When 'Save' the page, get the new name and replace... Index: wikit.vfs\lib\wikit\web.tcl 267a268,271 > ## added 2007-01-08 - get new name from textarea B > if {![catch {import B}] && [import B] != ""} { > set name $B > } 406a411,412 > textarea B=$name rows=1 cols=72 wrap=virtual \ > style=width:100% ---- **Synchronization of the lap-top and pocket pc** [AKG] September 1, 2003 (updated September 9, 2003) I would like to synchronise my personal Wikit database between my laptop and PocketPC. The major stumbling block at the moment seems to be the lack of Metakit on PocketPC. Pages could then be viewed and edited using the Tk interface on the PocketPC. [jcw] - FWIW, there's a build of the Mk4tcl.dll for WinCE 3 (i.e. Pocket/PC 2002) ARM at [http://www.equi4.com/pub/mk/mk-2.4.9.2-wince/Mk4tcl.dll]. Still young... [AKG] (September 9, 2003) Thanks! I have a basic version of Wikit up and running on my iPAQ 5450 using the Tk interface. I had to modify Wikit to not use gbutton's since IncrTcl isn't available on the PocketPC (unless I've missed it). A description of how to get Wikit running on the PocketPC is available at [Wikit on PocketPC]. Still hoping that someone can fix the menu's on PocketPC :-) (it's annoying to go and edit a page and not be able to get the keyboard up). P.S. I've also put two other patches/suggestions up: [Wikit web Cancel button] and [Wikit web Search prompt]. [jcw] Thank you! I've integrated the two patches, running in this wiki as well, now :) - for the gbutton changes, I suggest contacting [Steve Landers], the author. I for one wouldn't mind adopting this in wikit too, since it drops the only dependency on incrTcl. Feel free to email Steve/me, and I'll do my best get it all in there :) [AKG] See [Wikit on PocketPC]. This may not be what you want since it doesn't modify gbutton, but rather replaces them with standard buttons. ''Note that you can easily update your local copy of wikit.kit with "sdx update wikit.kit" ... (yes, this is a plug for "[starsync]")'' [gg] There is an [[incr Tcl]] available for the pocket PC (well, sort of). Take a look at [tcl++] for a pure-Tcl version of [[incr Tcl]] which should work on the pocket PC as well. ---- **A wikipedia style markup** [AKG] August 28, 2003 (updated August 29, 2003) I second the support for wikipedia [http://wikipedia.org] style markup. In particular the headlines, lists and alternate labels for references. You can obtain my patch for alternate labels from [Wikit Reference Formatting]. [lv] [[http://www.wikipedia.org/wiki/Wikipedia:How_to_edit_a_page]] appears to be the page that discusses the markup. After looking at the material, it seems unlikely that all of the wikipedia markup will be supported here. The goal for this software is simplicity rather than a wide variety of features. That's not to say that things here couldn't be made more simple. But the goal, at least to date, seems to have been to keep the number of formatting options to a minimum so that users can keep them in mind. I know I have suggested in the past taking a look at things like setext or one of the other ''plain text'' markup languages to see if there might be a few other '''natural''' markup additions that could be added with minimal code and that would be intuitive to someone writing. [AKG] I agree with you, in the sense that we don't want the formatting rules to become too complicated, and I'm not really interested in everything that wikipedia provides. I disagree in that I'd like to see the items I listed above. It's always nice to have consistent user requirements. :-) Thanks for the reply. [escargo] 29 Aug 2003 - I came across a place where a nonbreaking space would have been really handy, but I haven't seen that for any other wiki markup. 01sep03 [jcw] - Perhaps the best way forward would be to discuss this on the [tclerswiki] mailing list. Headlines ought to be easy to introduce - changing list formating (would be nice) would be quite a bit more involved, due to the need to fixup all existing pages (and people's habits). ---- ***In favour of Wikipedia-style mark-up*** [Ckohl] July 16, 2003 Concerning wiki-markup: Would you consider supporting wikipedia [http://wikipedia.org] style markup in future releases? It would be nice to have markup for headlines for example. I also think wikipedia's list-syntax is easier to use. ---- **Organization of code** [LV] July 11, 2003 I keep wondering about the wonderful content on the wiki. If someday I ever have the privledge of having a personal machine on which I can develop Tcl code, I would like to benefit from all the wonderful code here on the wiki. One useful project would probably be to begin locating code here and trying to figure out how to organize it into a format that I, as a Tcl developer, would be able to use in my programs. Perhaps, as this progresses, the result would be something suitable for [tcllib], [tklib], [tclapps], or a similar project. I don't know ... [TV] You mean like you'd have a list of applets, full blown programs, procedures? I mean I guess the distinction would be minimal from a list of 'programs' or libraries. Or a way to (as I never tried) 'reap' code from the friendly pages, maybe a program that makes that more comfortable, automatic blocks with single click select/deselect or so. It's great fun simply cut-and-pasting a nice piece of code and seeing what it does, I have to say, and it makes points well, even when sometimes wrestling with them when they are incomplete or refering to other functions. Maybe one could have a parallel page where the code is easily obtainable, too, which can be read by a simple tcl program. Many 'wonderful' pieces of code, and imo not necessarily less important 'hard line' pieces of essentials and great inventions could maybe be traced to assuming a certain environment: machine kind, tcl version, assumed existing libraries. And expected interaction from the programmer/code user. [Luciano ES] Maybe pages could be downloaded in a suitable format for the excellent [Notebook App] to import them. ''[escargo] 13 Jul 2003'' - While I was out for a walk this evening, I was thinking perhaps that one answer might be for the wiki itself to have code to transform a page with embedded to into a page with nothing but code on it (like this page is http://mini.net/tcl/19@ when it is being edited, some other special suffix that could be used when the '''code-only''' version of the page was requested. That way the markup needed for code would be restricted to the wiki itself and not any external programs. [lv] What I was thinking about was to take each page of this wiki, and where a stand alone application is found, place it into a flat file into some sort of directory structure. When encountering a full package, place it and a pkgIndex.tcl into an appropriately named lib directory. When encountering other code (clippings?) place into some sort of appropriate directory that perhaps Komodo or one of the free editors recognize. Then, turn the entire created directory hierarchy into a .zip/.tar/.kit type format for distribution, so that others do not need to do the same. The problem comes in tracking changes to the wiki'd version of the code as well as changes needed for the extracted code. I wonder - perhaps if the wiki itself is a starkit, then the files could be put into the [vfs], then managed from there. [lv] 2006-Feb-04 Here we are, 2-3 years later. The wiki continues to grow in terms of code contributions. And that's wonderful. And some effort has been made, by a number of code writers, to contribute packages to [tcllib] and [tklib]. I just keep thinking about use of the code posted here. Having source that one can look at is great. However, this web site isn't really designed as a primary source code repository. Functionaly for turn the code from this site into a series of modules and applications, and the tracking changes to the code here so that one can be alerted of differences is still missing . ---- **Other lists of Recent Changes** [TV] ''Apr 17 03'' Because timing is often an easy way to search, isn't it a good idea to have the older '[http://wiki.tcl.tk/_/recent%|%recent changes]' pages available somehow? And maybe also a list per creation period? I'm not sure this is the right page for content suggestions. ''[escargo]'' There are a couple of features I was wondering about. 1. Global search and replace. Let the Wikit itself search and replace strings (such as page titles with typographical errors in them), so that links can be added or repaired. 1. A numerical index, where all page titles can be listed ''in numerical order.'' ---- **Leveraging X Link and X pointer** April 10, 2003: Anyone thought how [XLink] and/or [XPointer] might be leveraged into some useful Wiki facilities? ---- **Notification of changes to a page** ''[escargo] 18 Mar 2003'' - How hard would it be to add a mechanism to register an e-mail address to send notifications to when a page changes? (Actually, I can see where it might be pretty hard. You would need an open-ended data base to handle the mapping of pages to e-mail addresses; ideally people could only put their own e-mail addresses on the list and only remove their own e-mail addresses from the list. It might be handy, but it might not be worth the trouble. I thought I would at least bring up the idea.) [jcw] - David, as you point out, some of the complexity is going to be the social/organizational aspect. My suggestion would be to try to come up with a design on *top* of the wiki, possibly even implemented on another server while it evolves. Once it's stable and enough people feel it is worth bringing it over, I'm all for doing so (you'll probably also want to think about aspects such as abuse, admin, vacations). It's a bit like Pascal Scheffer's [wikidiff], I suppose... ''[escargo]'' - The toughest nut to crack is the mailing list management part. There is nothing like mailman[http://www.gnu.org/software/mailman/mailman.html] in Tcl, is there? I can see for some Wikis that this service would be really useful (especially if there was also a notion of page ownership). In terms of partitioning the work, I guess I see three branches. 1. User registration (users being able to add and delete themselves from an address data base) 1. Per page registration (users being able to subscribe and unsubscribe from different pages) 1. Change notice distribution (where registered users are notified of a change) Restricting users to a single e-mail address for changes simplifies things a bit. Per page registration just links up a registered user to a change notice for a page. The integration of the Wiki with change notification should really be at the level where there is a link on the bottom of each page where you can register to recieve notification of changes. That's less practical with something built and maintained separately. [LV] Two observations - if this facility enables pests to register someone else's email, then it is going to quickly be a target. Second, there was (perhaps still is) a facility that was out on the net to monitor changing pages of a web site. It quickly was overwhelmed by the massive number of pages it had to check, by huge numbers of emails that had to be generated, bouncing email addresses, etc. I think a separate facility is a great idea - since one can fetch the wikit data at any point (ala wikidiff), then the resources and management thereof can be handled by someone interested in championing such a thing. The old service was called NetMind - that is gone now, but a two tiered service at http://www.changedetect.com/ provides web page monitoring. Perhaps people could just use it? ''[escargo] 27 Dec 2006'' - Perhaps the more modern approach would be to generate an [RSS] feed from [http://wiki.tcl.tk/_/recent%|%Recent Changes]. It's not the same as sending e-mail, but still useful. [DKF] ''(11-11-2007)'': Recent Changes has been an RSS feed for a while now. ---- **Scrolling through Wiki pages vertically** 22 Jan 2003 [TR] - I have a suggestion here. In local mode it is not possible to scroll through the wiki pages vertically using the keyboard since the used text widget is in -disable state. By adding these four lines of code in the file wikit.vfs/lib/wikit/gui.tcl after the creation of the text widget $top.scroll (line 325 in my copy), we can get that ability back again: bind . "$top.details yview scroll 1 pages" bind . "$top.details yview scroll -1 pages" bind . "$top.details yview scroll -1 units" bind . "$top.details yview scroll 1 units" I found this very handy since I use the keyboard much for scrolling. The only drawback is, it makes the window scroll twice when in edit mode. How can this be avoided? ---- **A Blogkit** 20jan2003 [Dossy]: Has anyone started work on a Wikit-derivative BlogKit? Maybe I'm treading dangerous ground by suggesting it ... but with blogs being "all the craze" perhaps there's significant interest in a BlogKit? What kind of features would/could it possibly need that Wikit doesn't have out-of-the-box? I imagine just HTTP auth protecting the Wikit "Edit" functionality would be enough to make it a "personal" wiki -- read-only, except for the authorized users who know the correct username/password. Just a thought ... 05feb03 [jcw] - If password protection is all you need extra, then it can be done right now. The trick is to launch the public wikit normally, but append "-readonly" on the command line. The Equi4 website [http://www.equi4.com/4] runs that way. In addition, I've set up a second CGI access pass with Apache user authentication turned on. That is set up to launch wikit on the same datafile, but in r/w mode. Bingo - remote editing of what is essentially a read-only site. The Equi4 website takes this one step further, in that it uses an error redirect to mix static pages with wiki pages. All pages which exist "normally" are served as is, while all the rest becomes a search into a "backing wikit". It's very flexible - I've been able to re-engineer the Equi4 website gradually, by taking away pages, and adding new ones with the same name in wikit. For another (starkit-, metakit-, tclkit-based) wiki implementation, with more authentication built in, see Mark Roseman's [ProjectForum]. 26mar2003 [sm]: Using Apache's user authentication as described above provided what we wanted to do. In addition, we wanted to see who had changed a page last, in addition to the IP address the change was made from. That was easy to do -- in the source of web.tcl, I added in the following line to the Wikit::ProcessCGI proc, just after the host variable gets set via "set host $::env(REMOTE_HOST)". catch {set host "$::env(REMOTE_USER)@$host"} If user authentication isn't being used, REMOTE_USER isn't set, so the behaviour is as it was before. ---- **Wiki developed as a TCL Kit optionally** Ya know, if the Wiki were developed as a Tcl CGI script, and were available as a Tclkit '''optionally''', it would be a lot easier to contribute and support the darn thing. As it is, I have given it up for the usemodwiki Perl script, which in spite of being Perl, is easy to fiddle with, since it is a standalone script. This whole Starkit business is fine, but only as a way to package up something for release... it totally screws up development!! ''-sluggo'' 10dec02 [jcw] - On the contrary, Phil: starkits are designed to ''ease'' development. Do "sdx unwrap wikit.kit", launch as "tclkit wikit.vfs/main.tcl", and you'll be running the whole thing in unpacked mode... trivial to edit, tweak, and wrap up again. As a matter of fact, you can grab the CVS sources, run unpacked, and never ever see a starkit or touch "sdx". 31oct03 [rph] - I have to agree with ''-sluggo'' - The Starkit business does not really ''ease'' development. One should not have to "unwrap" something. While I guess grabing from the CVS sources might be an option, some of us (myself) would really prefer to be able to download a good old fashioned .tar.gz file and work from there. 14jun06 ngps - Come now. "tar xzf wikit.tar.gz" versus "sdx unwrap wikit.kit". What's the difference? If that is the case, then something has gone by the wayside between design and implementation. The documentation for manipulating the wikit.kit is distributed throughout this wiki, and is unified nowhere. The command line interface to sdx seems only to be documented in the source, and the distributed tclkit's, wikit's, and starkits have no version numbers and often come with the admonishment: '''"requires a recent version of ***kit"''', a rather elastic form of version specification. The API has a habit of going through violent gyrations in very short periods of time also. And always without warning in the form of comments on the download page or via version changes. ---- **Pasting HTML** OMAR: I'm sure that this has been brought up, but it would be nice to be able to paste html into the editing window and have it appear within the saved page. -- is there anything preventing the adaptation of this ability ? ''Won't work in the local-mode and embedded uses of wikit, neither of which are HTML-based -[jcw]'' So if you have a particular wikit that you'll only use over the net, you could paste in HTML and it will work? Only then if you try to look at it in local mode you'll see a mess. A particular wikit that you intend to use in more than one mode shouldn't use HTML, it's only when you're willing to give up the other modes that HTML makes sense. Right? -JET ---- **Against square braces for titles** ZB: I think that putting square braces inside titles not only kills the title, but makes it impossible to get back to the malformed page, leaving a zombie page lying around for posterity... ''29nov02 [jcw] - You can always force an edit for page, say 1234, using the manually entered URL http://mini.net/tcl/1234@ (note the trailing at sign) to try and fix the page.'' Or '''YOU''' could fix your badly damaged use of '''regsub''' for updating titles... if you feel obliged to use regsub then pre-treat the title string by backslash escaping all nasty characters first: proc safeRxPat { string } { set pat_rx {[\(\)\{\}\[\]\.\+\-\*\?]} regsub -all $pat_rx $string {\\&} string return $string } ---- **Http proxy support** 16mar2004 [daapp]: How about http proxy support in wikit.kit? I make it yesterday during 10 minutes. Recipe: * '''sdx unwrap wikit.kit''' * add [uri] (from [tcllib]) and [autoproxy] libraries to directory ''lib'' (in my case i take it from sdx.kit :) * in file ''wikit.vfs/lib/wikit/utils.tcl'' replace package require http with package require http package require autoproxy autoproxy::init * '''sdx wrap wikit''' Thats all!!! I test new [wikit] in Win2000 to update my local copy of [wiki]. Works fine. [autoproxy] takes proxy settings from [IE]. ---- **Re: the search mechanism** [LES] on Apr 10 2004: What I don't like in wikit is the "guessing" mechanism. I try http://wiki.tcl.tk/interactive* and it gives me [interactive command composer] and no alternative to actually look for "interactive" inside pages. I try http://wiki.tcl.tk/shell* and gives me [shell] and no alternative to actually look for "shell" inside pages. Grrr... [KPV] This bugged me too until I figured out a neat trick: search for "'''2?shell*'''" instead of just "'''shell'''" and it will always give you a list of hits instead of actually going to a matching page. (I'll leave it as a fun exercise to figure out why this works.) ----- **A facelift for WikiT** [nl] on Apr 10 2004: What about a small facelift for the old wiki. The style below is about as creative as I can get, but i am sure there are some creative people out there waiting for thier chance to make things look better. [DKF] ''(11-11-2007)'': There's been a lot of work in this area recently. ----- **Preventing the edit page to be included in the back history** Sep 29 2004: I have a habit of using 'Back' on my browser, and have often found myself re-editing a page by accident. Is there a way to modify ''Wikit'' to prevent the edit page from being included in the 'Back' history? ---- **How to change the language in Wikit: hard coded or source code?** [LES] on 20 Oct 2004: all wikit's pages come from a template and therefore have some text in common: "Updated on...", "Last saved on...", "Edit", "Search", "Revisions" etc. I wonder if that is hard-coded. More specifically, if someone wanted to implement wikit somewhere in another language, like Portuguese or Spanish, is that provided already or do we have to hack into the source? [Kroc] - You'll have to edit source. I've done it for the french tcl'ers wiki: http://wfr.tcl.tk [DKF]: Perhaps it ought to be [msgcat]-enabled? ---- **Miscellaneous notes** A few suggestions gleaned from the "Ask and it shall be given" ordeal: '''Subpages''', '''Formal Comment System''', '''Tables of Contents''', and '''Preview'''. ***About Sub-pages** '''Subpages''' are a feature of some wiki programs, but not currently Wikit, that allow you to define a pages in an abstract hierarchical relationship, much like a file system, that augments the free-flow of hypertext linkage with page-level structure. Typically with other wiki programs this is done with a link like [[/Tcl Advocacy/Companies that use Tcl]] and [[/Tcl Advocacy/Articles]] that shows up in a page like a normal [[Companies that use Tcl]] and [[Articles]] links. In the referenced page its self, the title shows up as normal or may contain each of the path elements depending on software, but generally provides a link to the parent (as if [[Tcl Advocacy]] in this case). It also allows another page (such as [[Tcl Advocacy]] its self) to embed a single tag that gets replaced automatically by the software listing each of the subpages of that page. This is similar to the current Category system in that it groups page relationships, but different in a number of ways. First, it allows finer granularity in the groupings. Second, it's not flat: the current system provides a list of pages in a category and a list of all categories, but nothing in between. (The category system its self could be augmented by grouping categories, which are nothing more than regular pages with [Category Category] in them.) Third, it works to a degree in reverse of the Category system: where categories are are large-grained groups of pages in a general topic that you get to from a page in that category (somewhat like a "See Also" link), subpages allow you to find a page by starting with a general topic and getting increasingly specific. This leads to Fourth, which is that the tag (if any - it could just be a given that subpages are always listed) creates a maintainence free Site Map type navigational hierarchy. It "just happens" that if you create a page via [[/Tcl Advocacy/Companies that use Tcl/Acme Widget Co.]] that [[Companies that use Tcl]] is listed in the subpages for [[Tcl Advocacy]] and [[Acme Widget Co.]] is listed in the subpages for [[Companies that use Tcl]]. ----- **A formal comment system** A '''Formal Comment System''' would provide some automatic structure and standardization in commentary such as who made a comment, when it was made, and keep them in chronological order to avoid confusion (especially with regards to who's making the comment versus to whom the comment is made). It would also allow pages to be a little more formal and documentation-like in their content rather than informal chats. Whether they're read-only, who could delete them, etc. are matters for discussion and implementation. In the simplest implementation (not necessarily the only/best), it would simply work just like the normal page edit, but would always append rather than modify and use a common format that includes author and date, and maybe some other coloring to set it off from content, and then it could be edited or deleted with the rest of the page contents like normal. Another would be that they would be read-only, but could be voted off the page or expire after some time. The idea is that a person could/would make comments on a page's contents that would be incorporated into the contents as appropriate, after which the commentary aspect of it is no longer relevant or needed. One possible use would be as an alternative to [Ask and it shall be given]. A person might use it to post a question on a page that they think is most appropriate for the topic, like a "How to" question on a particular widget. It would stand out and be spotted due to coloring and formatting. A person "in the know" would then come along, write about that topic in the contents of the page, answering the question in the process, after which the question could be deleted. Someone else might say "this URL is no longer valid; does anyone have a current one?" and then someone else who has a current one would know to fix it and delete the question when they come across it. [DKF] ''(11-11-2007)'': You mean something more like projectforum? ----- **Table of contents** '''Tables of Contents''' would add a few formatting rules similar to automatic numbering that allow a page to have a flow similar to a numbered outline. Numbers are automatically assigned to sections headings in the page through tags like === # Some Section Title ===, and a special tag can be placed in the document that provides an outline showing each of these section headings with in-page anchor links to jump to the section. (Suggest using the ~ heading format, like the tip format) [DKF] ''(11-11-2007)'': Something like this has been implemented recently. ----- **Preview** '''Preview''' would provide an additional button with Save/Cancel when editing a page that, instead of saving, would show the page as it would appear if it were saved along with the text field with the current unsaved edit. This would allow a person editing a page to optionally check their changes for formatting, spelling, grammar, etc. before saving. minimizing the number of saves for such minor things, and improving the usefulness of revision diffs. ---- **The no follow feature against spam has been added** [KBK] 2005-01-20: Google has announced that it will honor links ... so that a site like this can make sure that there's no benefit to comment spam. See [http://www.google.com/googleblog/2005/01/preventing-comment-spam.html] for details. ''[jcw] - Added!'' ----- **Line breaks** [VK] 2005-02-14: All is good, but I can't do without line breaks (
tag); sometimes it is desired to split a sentence but not to start new paragraph. Another my thought is to (optionally) allow user to enter raw HTML markup. This must prohibited in public place, like Tcl-ers wiki, but could be extremely handy for those who uses wiki as a speedup for creation of ordinary HTML pages. For some reason, on my Mobile-2003 PocketPC, search page http://wiki.tcl.tk/2 displays ''without'' entry for entering a search expression, all other pages look beautifull, even editing entries in multiline entry works perfectly. [LV] Just this week (Feb 23, 2005) , someone on the [lynx] developer mailing list mentioned that the search page for this wiki uses an HTML feature which http://www.htmlcodetutorial.com/forms/_ISINDEX.html declares obsolete. Perhaps the browser on your PocketPC just doesn't provide support for it any longer. [DKF] ''(11-11-2007)'': This now supported (slightly different syntax). ----- **Description area for each page + anchors** [sheila] 2004/04/14 I use another wiki that is implemented with [http://www.usemod.com/cgi-bin/wiki.pl?UseModWiki] Use Mod Wiki. there are a few features from it that I would like see here. * when editing a page, you are allowed to write a small description of your change or designate it as a minor change. This will show up in the Recent Changes page. (for example, [http://www.usemod.com/cgi-bin/wiki.pl?RecentChanges] though they don't use it as well as they could) * people are allowed to create anchors in the page and link to them. Is that possible here? I didn't find it in the text formatting rules. [unperson] What are anchors? (Excuse my ignorance! :-)) [DKF] ''(11-11-2007)'': It's possible to link to (sub)-sections, but since they're just numbered the sectioning can't be considered stable yet. Use XPointer/XLink instead so you can refer to the contents of the section headings, which ''are'' stable. ---- **Problem with the search field** [MSW] (2004-03-16) A little annoyance: The search field on the search page doesn't remember its last content yet it gets erased when the results are displayed. I suggest the search field should still contain the string which lead to the result page being displayed. [DKF] ''(11-11-2007)'': The search field in the body of the page now remembers. ---- **A mark-up for tt text** [UKo] 2005-01-19: May I suggest a markup for tt text? And then I second all the wishes for structural markup that most likely will give support for a toc! And there is a problem with linebreaks in bullet lists (or enumerations): It is not possible to begin a new paragraph inside the list (and it is also impossible to make nested lists) [DKF] ''(11-11-2007)'': This can be done by enclosing the text in `backtick` characters. ----- **Right justification for the highlighted text** [unperson] 23 February 2005 I find the wikit works pretty well.. Very well indeed. The navigation is excellent. A list of all pages could be useful as pointed out by [Sheila] on top. A comment line to be added with each edit also... A small change I would recommend would be to right-justify the highlighted text (when we put a few spaces + an asterisk (*). Right now we can't read beyond a certain column and it's pretty annoying... * That's because you're formatting wrong. * You're doing this, which is preformatted text. ----- [CLN] Can we make initials/signatures link to authors' wiki pages? I was just trying to chase down "lwv" and found that his wiki page is "lv". I had to search for "lwv*" to get there. Or maybe this is Larry's fault for being "LV" and "lwv" ;-) ----- [SS] 11Mar2005: I may like to see this feature: when a user saves an edited page, he can select a checkbox ''don't show in recent changes'', that avoid that the change is shown. This because sometimes there are users that add categories to many pages every day, and this makes the recent changes page almost useless. [DKF] ''(11-11-2007)'': Only problem with this is that it can lead to people making changes maliciously in a way that won't show up so that people can spot them and back them out. Ergo needs proper accounts and authorization, etc. Lot of work. ---- **Change the style sheet** [Sarnold] Is it possible to change the style sheet to have a fresh look on something like Code like that is not looking as good as in http://wikipedia.org or http://wiki.gnuarch.org Of course, this is just a question about look'n'feel, sure it won't change the behavior of the wiki of which I am happy. It is so good to be able to cut and paste pieces of code ! [DKF] ''(11-11-2007)'': Style sheet was changed recently. ---- **Changes to a page: why do they take so long to appear?** [MG] I've never looked at the code for Wikit, so there may well be a good reason for this that I'm not aware of. But why does it take some time (how long I'm not sure) for changes to a page to appear on the revision history? I can't think of any reason it would happen, but like I said, I've not seen the code... And the suggestion that bought that question on - would it be possible to add the number of the latest revision for a page to the Recent Changes page, either before or after the IP address? Very often when my connection's flaky I sit and wait for a long page to load just to find that I've already seen everything on it a few hours ago, and it's just at the top of the Recent Changes list because it's been a quiet night, and that seems like an easy (?) way to 'fix' that... [LV] The owner of this web site currently has things configured (see [Wikit configuration]) so that a [cron] job runs once a night to check each page change into the revision CVS. That's why the changes that are made on one day don't generally appear until the next day. [MG] Ah, I see. Thanks, Larry :) [DKF] ''(11-11-2007)'': Current implementation (in [Wub]) is quick to generate diffs. ----- **Search results truncated** Why does the wiki search mechanism truncate the search results ? When I see (Remaining matches omitted...), I feel cheated ! [LV] March 25, 2005 I agree with the previous poster. If nothing else, how about a secondary, specialized search that returns all hits. For instance, just searching for the word Category in wikit page titles now exceeds the search return number. [DKF] ''(11-11-2007)'': I believe you can search further back now. ---- **Larry's dream: Building TCL modules** [LV] April 14, 2005 One of my dreams is, one day in the future (when I get a decent computer that I can connect to the internet) is to begin taking, page by page, the code on the wiki and building [Tcl modules] out of them. But, to maintain currency, I really need some method of notification when a page that I've used has been updated. Given the hundreds of pages of code on this wiki, simply depending on me noticing an updated page probably isn't sufficient. Is anyone aware of any programs that have been written to monitor an RSS stream and compare the results against some sort of local database? I could see something similar being useful to monitor [Freshmeat] as well. [jcw] - Grab http://mini.net/tclhist/index (which is static, i.e. quick, and updated once a day), and compare all entries over time. Lines contain: page#, pagerev, modtime. That's how "wikit -update" works. [LV] Great! Thanks - I didn't know about that one! ---- **Chronological sort of pages that belong to a category** ''[escargo] 05/05/05'' - The Category systems works, but there does not appear to be a way to chronologically sort pages that appear when clicking on a Category; you only get an alphabetically sorted list. Is there a way to get the same page references but sorted chronologically? [LV] I'm not certain that the category scheme really works, but perhaps it is better than nothing. As for alternative methods of sorting, I don't believe there is any support for such a thing within the wikit. One could try writing some sort of application that grabs the wikit data, uses [wikitool] or similar code to perform some sort of searching and sorting. What kind of chronological sorting did you have in mind - by date of last modification, I presume? One of the issues that exist as well is that there is no way to indicate the number of search hits you wish returned. This results in useful searches not returning all relevant hits. [escargo] Some searches ought to always be complete, category references being one of them (or at least divided into multiple pages for presentation). In my case, category references sorted like "Recent Changes" would be what I want. [DKF] ''(11-11-2007)'': I believe "references" searches are now chronological. Might also be complete; haven't checked. ---- **Links on the Recent Changes** [MG] 12 May 2005 - Even though I'm using http://wiki.tcl.tk/, the links on the Recent Changes page all seem to be pointing to the http://wiki.tcl.tk site today. Maybe I'm being extremely dumb again, but I'm sure it never used to do that. Is this an error, or just a change I hadn't read about? [LV] hmm - the wiki.tcl.tk name is just an alias for mini.net/tcl - but in the past, as you implied, if someone comes in with one, the references stay in that format. ''Uh oh - mea culpa - I changed it. Trying to reduce the clutter of having two parallel URL hierarchies. Is it a problem? -[jcw]'' [LV] Not for me right now. However, I guess it will be a problem when the .tk domain is down, which used to happen at least once a month. I don't recall how long it has been since that happened though. [MG] - The only difference it makes to me is that the cookies that mark pages I edit with my initials need re-doing for the other domain, and pages aren't marked as visited any more (link-color-wise) - neither are exactly the end of the world. [LV]'s point is a good one, though - if it's no more hassle from the POV of maintaining it (since it seems both domains still work entirely anyway?), it could be better from the user POV to have both still point their links to their own respective domains. [DKF] ''(11-11-2007)'': Only wiki.tcl.tk works now; change of wiki maintainer/hoster. ---- **A Find function** [Stefan Vogel] 19 May 2005 - Isn't anyone else using this Wikit in local mode? I'm using it all the time to grow some sort of personal "knowledge-base". It's pretty handy, especially because I only have to take one file along with me. Now that pages are growing more and more I'd like to have some kind of ''find'' inside the pages. Similar to the "browsers"-find but only in local mode. ---- '''Add a page to the list of protected pages''' [PJR] 27 May 2005 - Is there a way to add a page to the list of ''protected pages'' ? I'd like to do this for my own wikis but I don't know how. Perhaps an environment variable at startup? ''Not from the web - you have to edit the wiki in local (Tk) mode -[jcw]'' ---- **File extension for inline images** [MG] June 8th 2005 - Inline images on the Wiki (with JPGs, at least) seem to only work if the file extension is lower-case, otherwise it just produces the '[[ n ]]' style link. Any chance that could be changed, if there's no particular reason for it being that way? ---- **Syntax for a deleted page** [Lars H], 31 July 2005: This is perhaps mostly a suggestion for the Tcler's Wiki, but since there seems to be no page particularly for such matters, I enter it here instead. Although I haven't seen it explicitly documented anywhere, there seems to be a custom that if a page should be deleted (usually because the title was wrong in some way, but perhaps also when the contents are just nonsense), the contents for that page are replaced by the word "delete". Presumably the site administrator (working in local mode) occationally goes through the Wiki and deletes such pages. I have no idea how difficult it is, but scripting it should simplify the task. The markup is not all that self-explanatory however, so it occurred to me that maybe it would be better if it was done as a category -- there could be a '''Category KindlyDeleteThisPage''' for those pages someone would like to nominate for deletion. Not having a fixed content that signals deletion would make it possible for users to also give a short explanation of why they think the page should be deleted, such as : Spelling mistake. Contents are now at page [[...]]. [jcw] - ''Pages never go away in wikit, the way to get them to be ignored is to 1) store just a space or some such in them, '''and''' 2) remove all references to them on other wiki pages. The page will show up one last time in the recent changes list (no longer as a link), but for all practical purposes it will be gone. Just like links to pages which have never been filled in.'' [DKF] ''(11-11-2007)'': There's a special history of deleted pages now. ---- **Wiki Code and HTML output for a revision** [MG] August 10th 2005 - When you're viewing the revisions for a page, it would be handy if you could see the Wiki code for a particular revision, as well as the HTML output (for restoring defaced pages, etc).. ''- Available (a bit tedious I admit) via http://mini.net/tclhist/ -[jcw]'' [DKF] ''(11-11-2007)'': Available much more easily from the page history page. ---- **Revision links for a page** [MG] This is a Tcl Wiki "issue", not the Wikit implementation. The revisions links for a page all seem to go to the mini.net/tcl/ site, even though all the other links use the wiki.tcl.tk site. Not sure if that's a bug/oversite, or deliberate, but thought I'd point it out. ''- Thanks. Oversight. Fixed. -[jcw]'' ---- **Miscellaneous suggestions from [HJG]** [HJG] 2006-02-04 My suggestions: * '''Search''': Remembering the text in the input-field would be nice and useful. * Maybe also a checkbox for "match / ignore case". * Markup for '''lists''': just "* " at start of line should be enough. * Add some markup for '''line breaks'''. Maybe allow some specific HTML-markup, such as "
". * Add some markup for '''headings''', i.e. "===" at start of line, like wikipedia-markup. * For the reaper, it would be nice to have some "" .. "" markup. This would avoid excessive "if 0 {...}" suites. * Maybe a bug: I get the impression that the '''Revision History''' is updated only with a long delay, as in "days". ''([MG] The Revisions are only updated once a day, on a cron job, not instantly when the page is updated)'' ''Agreed, good points - I'll see if/when I can some of this in, thx. -[jcw]' ---- **Log entries** I suggest we ask the user that modifies a page to fill a little log entry to explain his changes. Then the ''Recent Changes'' page could show the latest log line. (examples : "Spam removed", "Page deleted", "URL updated", "Link added", "New question about xx topic"...) -- [Sarnold] 20060525 ---- **HTML please** [PN] 2006-06-20 I want to use wikit for wikis that will appeal to children. The wiki is to be written by adults and read by children. For this I want to have html content. I see protestations above, - but frankly pages are just as easy to edit locally on a webbrowser as on the Tk text widget. The only necessary reason to use the Tk edit is to change page titles. I looked at how to change wikit to allow html. I figured a line beginning with a "<" could signal text with html content. I looked at recognising this in the text and creating a stream type for it and doing clever things with it at the other end. It all started to look too complicated, so I opted for a one line change instead. In wikit.vfs/wikit/format.tcl I added a line at the top of the quote proc. proc quote {q} { if { [ string index $q 0] == "<" } { return $q } ; # Changed PN 20060620 regsub -all {&} $q {\&} q regsub -all {"} $q {\"} q ; # " regsub -all {<} $q {\<} q regsub -all {>} $q {\>} q regsub -all {&(#\d+;)} $q {\&\1} q return $q } This works for basic html BUT link URLs still get turned into and image URLs get turned into and gets trashed and the URL's in embed and object get mangled. So this is NOT the ideal quickfix. [LV] If you have total control over who is adding content to your pages, and they know what they are doing, then input of html is okay, I guess. Each time we talk about adding HTML here, though, we decide that the negatives far outweight the positives. With HTML supported, you have to worry more about phishing, page hijacking, viral javascripting, and many more security/policing matters. [unperson] Very well summed up, Larry: ''the negatives far outweight the positives''. I'll add this to your excellent conclusion: what is to be gained by implementing HTML anyway? What don't we have already? Well the colour of fonts maybe. ----- **Diffs** [unperson] Often I see a page at Recent Changes, I want to read it but I have no clue what has been added. I don't read the page. I'll pass.. (Some may say it is a good thing however. :-)) We can't write text anywhere. We add stuff on the bottom of the page, on the top etc. There is a big debate about that. As I said the very first day I entered this site: a diffs is the minimum of minimums. Without a diffs, a wiki is close to non-functional. I understand a diffs is not easy to program. I know an excellent professional programmer who has programmed a great diffs for his wiki written in Python. If anyone is interested, I'll ask him to post his algorithm on WikiT and anyone could work on the code. [DKF] ''(11-11-2007)'': Current implementation has a "last change diffs" link for each changed page on the Recent Changes page, plus access to a full history page. ---- [NEM] ''21 Sept 2006'': Is there an easy way to get the wiki markup for a given revision of a page? That would be useful when manually reverting pages after vandalism etc. [Lars H]: Yes, there is. First view the revision you're interested in. Then change the "tclrevs" part of the URL to "tclhist". Everything below the first empty line is the wiki markup for that revision of the page. [DKF] ''(11-11-2007)'': See appropriate column of page history page table. ---- [Sarnold] ''2 Oct 2006'': I often use diffs to get the latest changes (yesterday vs. now most frequently). Shouldn't it be a shortcut at the bottom of the page? [DKF] ''(11-11-2007)'': There's a "Latest Change" link in the sidebar. ---- [LWV] Any chance of enhancing the Wiki's search to include, on the search page, a special link to the next set of hits, when the number of hits are more than currently are returned? An example of a common place I hit the limit is searching for "Category" in page titles... there's now over 130 category pages, apparently. ---- [DKF] 8-Oct-2006: It would be nice the line of "category" links (plus separator above it) at the bottom of the page was drawn specially. It would still be edited as normal wiki text, but if in a particular form it would appear as part of the structure of the page and not as part of the content. [LWV] That would be nice - sort of page metadata... [DKF] ''(11-11-2007)'': Can now do that using centred table headers. Excellent! ---- **Including other pages** [dizzy] 8 Nov 2006: it would be nice to be able to include other pages from the wiki in the current page. This could be useful for defining a common header/trailer for all pages of a wiki. For example: [@include common_header] page content... [@include common_trailer] I have implemented the above syntax with this simple patch but maybe there is a better way to do it: --- lib/wikit/format.tcl.orig 2005-07-23 22:44:08.000000000 +0200 +++ lib/wikit/format.tcl 2006-11-07 12:19:05.342326520 +0100 @@ -109,6 +109,12 @@ foreach line [split $text \n] { # Per line, classify the it and extract the main textual information. + # Expand included pages: [@include Other Page] + if {[regexp {^\[@include (.*)\]$} $line - arg]} { + eval lappend irep [IncludeStream $arg] + continue + } + foreach {tag depth txt aux} [linetype $line] break ; # lassign # Classification tags @@ -622,6 +647,33 @@ StreamToHTML [TextToStream $str] $::env(SCRIPT_NAME) [list ::Wikit::InfoProc $db] } + # Return expanded stream for included page + proc IncludeStream {arg} { + set arg [string trim $arg] + # Avoid infinite recursion + if {[info level] > 100} { + puts stderr "IncludeStream: infinite recursion on $arg" + return {} + } + if {![regexp {^[0-9]+$} $arg]} { + # Search page by name + set pages [mk::select wdb.pages name $arg] + if {[set num [llength $pages]] != 1} { + puts stderr "IncludeStream: $num pages for $arg" + return {} + } + set arg [lindex $pages 0] + } + if {$arg < 10} { + # Don't include reserved pages + puts stderr "IncludeStream: invalid include $arg" + return {} + } + set page [Wikit::GetPage $arg] + set stream [TextToStream $page] + return $stream + } + # ========================================================================= # Output specific conversion. Takes a token stream and converts this This feature could also be used to create aliases of existing pages. For example the page [jcw] could be defined as alias of [Jean-Claude Wippler] with: [@include Jean-Claude Wippler] ---- **Comments in page code** [dizzy] 8 Nov 2006: it would be nice to be able to include comments in the page source which are not included in the output page. I have implemented it with this trivial patch which simply discards any line staring with '###' in column 1: --- lib/wikit/format.tcl.orig 2005-07-23 22:44:08.000000000 +0200 +++ lib/wikit/format.tcl 2006-11-07 12:19:05.342326520 +0100 @@ -109,6 +109,12 @@ foreach line [split $text \n] { # Per line, classify the it and extract the main textual information. + # Skip comments: ### comment + if {[regexp {^###} $line]} { + #debug "comment $line" + continue + } + foreach {tag depth txt aux} [linetype $line] break ; # lassign # Classification tags ---- **Optional config files** [dizzy] 8 Nov 2006: it would be nice to be able to load optional Tcl config files at program startup. These could contain config settings, local hacks or a quick load of a file for testing or debugging a wikit source without needing to rewrap the whole starkit. I have added this code to my wikit: --- lib/app-wikit/start.tcl.orig 2005-11-03 22:21:05.000000000 +0100 +++ lib/app-wikit/start.tcl 2006-11-07 12:14:07.719572056 +0100 @@ -3,6 +3,17 @@ package provide app-wikit 0.1 package require Mk4tcl +# Load optional Tcl config files +if {[file exists /etc/wikit.conf]} { + source /etc/wikit.conf +} +if {[file exists ~/.wikit.conf]} { + source ~/.wikit.conf +} +if {[info exists env(WIKIT_CONFIG)] && [file exists $env(WIKIT_CONFIG)]} { + source $env(WIKIT_CONFIG) +} + set roflag [lsearch -exact $argv "-readonly"] if {$roflag >= 0} { set argv [lreplace $argv $roflag $roflag] ---- **Configurable timezone in timestamps** [dizzy] 8 Nov 2006: it would be nice to be able to change the format of the update time at the bottom of the page. The timezone, which is currently forced to GMT, could be the local timezone or a timezone specified by the env(TZ) variable: --- lib/wikit/web.tcl.orig 2005-02-02 00:45:03.000000000 +0100 +++ lib/wikit/web.tcl 2006-11-07 12:20:35.256657464 +0100 @@ -343,7 +350,8 @@ if {$N == 4} { set Changes "" } if {$date != 0} { - set date [clock format $date -gmt 1 -format {%e %b %Y, %R GMT}] + # Removed -gmt option, use env(TZ) or localtime instead + set date [clock format $date -format {%e %b %Y, %R %Z}] } set updated "Updated [cgi_font size=-1 $date]" You need also this patches to search.tcl and utils.tcl: --- lib/wikit/search.tcl.orig 2004-10-01 00:16:03.000000000 +0200 +++ lib/wikit/search.tcl 2006-12-03 11:40:58.000000000 +0100 @@ -30,7 +30,8 @@ proc GetTimeStamp {{t ""}} { if {$t == ""} { set t [clock seconds] } - clock format $t -gmt 1 -format {%Y/%m/%d %T} + # Removed -gmt option, use env(TZ) or localtime instead + clock format $t -format {%Y/%m/%d %T} } proc SearchResults {rows {db wdb}} { --- lib/wikit/utils.tcl.orig 2006-01-12 23:46:00.000000000 +0100 +++ lib/wikit/utils.tcl 2006-12-03 11:53:35.517665376 +0100 @@ -25,7 +25,8 @@ if {$id == 2 || $id == 4} continue # only report last change to a page on each day - set day [expr {$date/86400}] + # Count days accordingly to env(TZ) or localtime + set day [clock format $date -format {%Y%m%d}] #insert a header for each new date incr count @@ -37,7 +38,8 @@ } set lastDay $day - append result "'''[clock format $date -gmt 1 -format {%B %e, %Y}]'''\n" + # Removed -gmt option, use env(TZ) or localtime instead + append result "'''[clock format $date -format {%B %e, %Y}]'''\n" } append result " * \[$name\] . . . $who\n" @@ -90,7 +92,7 @@ proc AddLogEntry {id db} { upvar #0 env(WIKIT_HIST) ewh - set fmt {%e %b %Y %H:%M:%S GMT} + set fmt {%e %b %Y %H:%M:%S %Z} pagevarsDB $db $id date page who name @@ -100,7 +102,7 @@ set fd [open $ewh/$id-$date-$who w] fconfigure $fd -encoding utf-8 ;# 2006-01-12 ticket #1 puts $fd "Title:\t$name" - puts $fd "Date:\t[clock format $date -gmt 1 -format $fmt]" + puts $fd "Date:\t[clock format $date -format $fmt]" puts $fd "Site:\t$who" puts $fd "" puts $fd $t ---- **Show modifications of Search and Recent changed pages** [dizzy] 8 Nov 2006: it would be nice to be able to change the content of the [Search] and Recent changes pages. The pages can actually be changed but the content is ignored by GetPage which returns the computed results instead. A better solution would be appending the results to the (user editable) page content: --- lib/wikit/db.tcl.orig 2005-01-07 23:15:31.000000000 +0100 +++ lib/wikit/db.tcl 2006-11-07 11:54:47.000000000 +0100 @@ -149,12 +149,14 @@ return $title } + # Show user content in Search and Recent Changes pages proc GetPage {id {db wdb}} { + set page [mk::get $db.pages!$id page] switch $id { - 2 { SearchResults [SearchList] } - 4 { RecentChanges $db} - default { return [mk::get $db.pages!$id page] } + 2 { append page "\n\n" [SearchResults [SearchList]] } + 4 { append page "\n\n" [RecentChanges $db] } } + set page } # addRefs - a newly created page $id contains $refs references to other pages ---- **Sub-Bullets** [LV] 2006 Nov 15: Today I thought of a sticky point and wondered whether a new feature is needed on the wikit for it. I was adding some text to a numbered bullet. I realized the paragraph was getting a bit wordy. I would have LIKED to broken it into some sub-bullets, but as far as I am aware, sub-bullets are not currently supported, right? I mean, if I have: 1. first 1. second 1. third 1. first sub bullet 1. second sub bullet 1. fourth or even 1. first 1. second 1. third * first sub bullet * second sub bullet 1. fourth I don't get what I am after... ---- [MAK] (2006 Nov 15) Make orphaned pages uneditable. This would prevent e.g. that annoying "wanyozxy" page from being re-spammed over and over. As [DKF] said on the chat in regards to the idea, "anything worth editing is worth having a link to." [LV] As long as they become editable again once there is a link to the page, then it really doesn't help that much. [MAK] Sure it does. The point wasn't to lock a page permanently out of existence, but to stop a spam-bot from stumbling across a random dead page and being able to edit it directly, and to encourage someone who wants to edit a page with useful (but orphaned) content to bring it back into the fold. [dizzy] Why not simply adding 12536 to the ProtectedPages list in page 9? ''[jcw] 2006 Nov 20 - Done, thx'' ---- ''[escargo] 15 Nov 2006'' - How about a URL that would return the preformatted code on a page? (Getting the Wiki to do some of the work that the [wiki-reaper] and [wish-reaper] do now.) (Then somebody can modify [package unknown] to search the Wiki for packages and load them from the Wiki on demand.;) [LV] That would be dangerous. All someone would have to do is add the line exec rm -rf ~/. to a wiki page and there goes all sorts of files that shouldn't be deleted... ''[escargo] 16 Nov 2006'' - Added the emoticon to show that the suggestion to allow for [package unknown] wasn't really serious. ---- [dizzy] 20 nov 2006 - The ''Save'' command in the edit form should be handled by the /edit/ URL. This would allow easy access control on page editing under Apache with a simple .htpass file. I wrote this patch: --- lib/wikit/web.tcl.orig 2005-02-02 00:45:03.000000000 +0100 +++ lib/wikit/web.tcl 2006-11-15 10:48:25.023489472 +0100 @@ -213,6 +220,8 @@ catch {source $::env(WIKIT_WRU)} # if there is new page content, save it now + # (allow save command only from edit section) + if {$section == "edit/"} { if {$N != "" && [lsearch -exact $::ProtectedPages $N] < 0} { if {$roflag < 0 && ![catch {import C}] && [import C] != ""} { # added 2002-06-13 - edit conflict detection @@ -294,6 +312,7 @@ # end of changes } } + } # set up a few standard URLs an strings @@ -396,7 +416,8 @@ cgi_body bgcolor=#ffffff { cgi_h2 [Wiki - ../$N] - cgi_form $::script_name/$N { + # Added "edit/" to form url + cgi_form $::script_name/edit/$N { cgi_export O=$origtag catch { set z "http://$::env(HTTP_HOST)$::env(REDIRECT_URL)" and the corresponding Apache config: AuthUserFile /var/www/my_wiki/.htpass AuthName 'Admin' AuthType Basic Require valid-user [DKF] ''(11-11-2007)'': Is this applicable in a Wub-hosted wiki? ---- [dizzy] 20 nov 2006 - For privacy reasons it would better not showing the user ipaddr in Recent changes if the user is identified by REMOTE_USER or WIKIT_WRU: --- lib/wikit/utils.tcl.orig 2006-01-12 23:46:00.000000000 +0100 +++ lib/wikit/utils.tcl 2006-11-11 01:13:35.000000000 +0100 @@ -40,6 +40,10 @@ append result "'''[clock format $date -gmt 1 -format {%B %e, %Y}]'''\n" } + # hide ipaddr for identified users + if {[string match {*@*} $who]} { + regsub -all {@.*} $who {} who + } append result " * \[$name\] . . . $who\n" } --- lib/wikit/web.tcl.orig 2005-02-02 00:45:03.000000000 +0100 +++ lib/wikit/web.tcl 2006-11-15 10:48:25.023489472 +0100 @@ -465,6 +488,10 @@ foreach x [lsort -dict -index 0 [lsort -dict $refList]] { lassign $x name r pagevars $r who date + # hide ipaddr for identified users + if {[string match {*@*} $who]} { + regsub -all {@.*} $who {} who + } li "[GetTimeStamp $date] . . . [Wiki - ../$r] . . . $who" } } ---- [Web accessible wikit introspection] ---- ''[escargo] 27 Dec 2006'' - '''Timestamp recent changes''' on the [http://wiki.tcl.tk/_/recent%|%Recent Changes] page. That would give finer granularity than just the day when things changed. ---- **Minor Edits again** [MJ] - In other Wiki's I have seen the abillity to mark edits as minor changes. Minor changes will not show up in the [http://wiki.tcl.tk/_/recent%|%Recent Changes] page. This is nice when you are doing for instance spelling corrections. This will restrict the pages in [http://wiki.tcl.tk/_/recent%|%Recent Changes] to the pages that have actual change in content. This would work nicely together with the edit comment suggested above. [LV] With, of course, some sort of control so that someone doesn't, for instance, use this ability to hide spam insertions, defaming comments, deletion of valuable content, etc. [MJ] - Good point, didn't think of that. Maybe a new page that only shows the major edits and [http://wiki.tcl.tk/_/recent%|%Recent Changes] still showing all the edits. [LV] In the mean time, if you use [wikidiff] to view the updates, you will quickly see what has changed without a lot of effort (well, except when a LOT of changes were made on the page...) [LV] While I don't expect anyone has time to implement it, what '''I''' think would be useful would be a bit different - each page edit would require the person to select from a fixed list of ''reasons for change''. Then, a change to the Recent Changes page code would be to allow the viewer to select what types of changes s/he wished to view (with all types being one of the options). Perhaps one would choose from types of edits such as: * fix typo/punctation/other minor, less than one line, edit * delete inappropriate, inaccurate, or stale information * add category * add question * add new link * add new content * comment on existing content [MJ] - That sounds like an excellent idea. ---- **Wiki Icon** Could we get an icon for the wiki? Reference a feather in the HTML like: ? It'd make the wiki prettier in my bookmark list. -- [CLN] [DKF] ''(11-11-2007)'': Looks to me like we have an icon these days. ---- **Page drill-down in search results** [LV] Here's a feature I'd love to see. Along with a page content and title, I'd love to see the wikit gather a one sentence description for a page. This description would display in two places - the top of the page, just under the title, of course would be the first place you would see it. '''HOWEVER''' the second place would be in search results. That way, the indexer lovers would no longer need to create specialized pages. The wikit itself would generate lists of applications with descriptions, and they could spend their time putting screenshots, categories, etc. on the application pages themselves. ---- **Creole** ''[escargo] 6 Sep 2007'' - There was apparently a project to define standardized Wiki markup. The result is apparently referred to as Creole 1.0: http://www.wikicreole.org/wiki/Creole1.0 It might be useful to see what can be adopted, since it's somewhat richer than [wikit] markup. It's designed to make interchanging pages between wikis easier to do. ---- [LV] Back in Sept 2007, Xavier Garreau announced to comp.lang.tcl As I did it for the french wiki ( http://wfr.tcl.tk/1279 ), I've set up an open search plugin for Firefox 2 and IE7 for wiki.tcl.tk Its source is available here: http://wfr.tcl.tk/fichiers/firefox/wenos.xml An automagic installer can be found here: http://wfr.tcl.tk/fichiers/firefox/ajoutWenOpenSearch.html Having it shown when browsing wiki.tcl.tk can be achieved by adding the following line to the section of the page header source : For Firefox 1.x users, I kept the old version here: Source : http://wfr.tcl.tk/fichiers/firefox/wen.src Install : http://wfr.tcl.tk/fichiers/firefox/ajoutWenSearch.html Hope, you'll find it useful Regards, -- Xavier Garreau http://www.xgarreau.org/ ---- 2 february 2008 - can i suggest that somebody put a version number to wikit. and put the number as part of the download file name. and what's going on with the development of wikit? there's no version history doc and no roadmap. michaely [CMcC] Version history: try the SVN repository. Roadmap? [LV] Perhaps michaely is familar with other projects, which lays out the direction one is going with the project. This information is sometimes called a roadmap, or release plans, or milestones. It generally conveys to developers in the project (and users of the project) what new or enhanced features are ''in the pipeline'' for the upcoming releases. 9 feb 2008 - sorry for the confusion. i am referring to the wikit.kit file. every once a month or two, i will download that file, rename it wikitlatest.kit , just to make sure its the latest. as there is no version history to read, i will not know if there are any new features or new formattings. the SVN repository did not document (maybe i couldn't find it) the new [Formatting Rules] ... (scroll down to 2007 Oct 28) . michaely ---- [Ro] Howdy yall, hey Colin, thanks for keeping this thing running smoothly... Can I get some youtube linking going? So I can link somehow to a video on youtube and have it embed it in the page. It would be really cool as I've started making tcltk videos and putting them up there (as user xrocode). Thanks boss. [jdc] While [wubwikit] allows inline html, this is disabled for this wiki. I don't need inline html... just something like [youtube: 4382YOUTUBE_VIDEO_ID4343] ---- '''[LAM] - 2014-10-18 02:04:49''' **Making easy to copy source code** One purpose of this wiki is to share source code and having so many examples, would be very useful a button for copy the code to clipboard or, at least, to select only "this" source code for easy copy. [fr] 2014-11-12 An implementation to click on code. This http://taipudex.com/wiki/d0.tml?p=21661%|%demo%|% works in Chrome browser. [LAM] 2014-11-15 Or something like this (tested on FF 33 and IE 11): ====== ====== using, for example ======
This is a test in a paragraph
====== fr: LAM's solution to test http://taipudex.com/wiki/lam.tml?p=21661%|%click to select%|%. 2014-02-12 converts unicode to \u%04.4x format now. ---- '''[ABC] - 2014-11-04 13:17:17''' I am frequently browsing dozens of search results on the wiki.tcl.tk and I have trouble with old entries which do not have dates at all, not even the comments. Makes me waste a lot of time. Could someone please think about adding a simple '?' next to a poster tag like [ABC][?] showing the date of the posting when hovering over the [?] ? Or when hovering on the poster tag itself ? Would be great to sort old/new things. Sorting search results by date may not be so relevant since pages opened >10 years ago may percolate to the top on account of recent comments and vice versa. That is not a simple matter. But a simple hover date would be great. ---- [Roy Keene] I've started a page for [Requirements for the Wiki], which cover any implementation so that we can come up with a list of things we must have, would like to have, and do not care about. <> Wikit | Tcler's Wiki | Suggestions