Newt's Cape 1.4 (28 Jun 97)
Final changes (after 1.4u):
- ALIGN disabled for image maps (otherwise, coordinates don't work);
ALIGN disabled for 1.x text with HREFs (otherwise links don't work)
- RADIO buttons should now split properly across book pages, even within tables
- nested tables behave differently (better?) -- in 1.4u (and other recent betas),
the rows were added to the current table, using its column widths; now, a nested table ends
the current table and starts a new one; less information is lost, but later rows
in the original table lose original widths
- 2.x: kbd button appears in main control panel (if no keyboard connected) next to "i";
Register ($) button moved to right
- widened "fat" popup menus (esp. for 2.0 portrait)
- help book fixes: removal more reliable; default help icon used in Extras;
:BookData and more META scripts work. (see helpbook.htm)
- View:Load with Images does not remove current book until a selection (All or 1) is made
- APPLET displays "APPLET: no NAME" (or ALT text instead of no NAME)
- TEXTAREA was ignoring lines beyond first
- INPUT TEXT now recognizes/implements MAXLENGTH attribute;
HREF on label worked for CHECKBOX -- now works for RADIO and TEXT/PASSWORD
- user-defined protos can be added to Newton forms, e.g.,
protoSlider, A-to-Z picker, protoDateNTimeTextPicker, via VALUE_TYPE attribute
(these appear as a regular INPUT TEXT field in non-Newt's Cape browsers)
- font name now appears correctly in Appearance:Family for Casual font (-x version),
for user fonts (-2)
- 2.x: any registered (in addition to built-in) sound appears in DocDone picker
- Proxy Exceptions could be confused when there were more than two (or any empty) exceptions
- :getURL first arg can now be an array of URLs; this implicitly does cacheOnly for all except
last item (or you can set cacheOnly option for all); useful with helperApp.
fixed cacheOnly problem where helperApp wasn't called for new documents; it should
be possible to sequence thru multiple documents both cached and new, either via array approach,
or helperApp that calls :getURL multiple times
- if NIE connection dialog is closed (or aborted during dialup), it now flushes queue
of pending URLs to avoid continued attempts, e.g., for loading images, :getURL([...],)
Newt's Cape 1.4u-2 (20 Jun 97)
- Open Location looks for a GIF file in Image cache even if it
doesn't end in .gif (e.g., some generated maps)
- Open HTMLCache/ImageCache keeps list of URLs for faster access (until add/remove occurs)
- Add/Remove Bookmarks works again (broken in 1.4t)
- animation timing should be more accurate in -2 version
- font for TEXTAREA uses Casual font (-2) (same as INPUT TEXT)
- FORM objects no longer Print entered values
- Content-Type fixed for serial header; Cache Only fixed for serial
- help book URLs at least display destination heading in Topics list;
you still need to tap to get content page (believe it or not, there appears to be no
programmatic way (even undocumented) to open a content page directly)
- CENTER tag and TD/TH ALIGN now supported
- relative URL ../bar.htm now properly resolved even for www.foo.com/
- BASE tag sets base URL only if there's a HREF (not other attributes)
- scanning for images skips .htm, .html docs (i.e., frame SRC)
- META avoids setting certain internal book slots, e.g., version
- more internal flushing of "VBO" objects -- more reliable/fewer crashes?
- confirm prompt uses localized "Yes"/"No"; keyboard default = Yes
- for installing a package, actual package name is displayed (in addition to URL);
if it already exists, it confirms "replace existing package?" (and removes old package before install)
- added character entities:
† (dagger), ‡ (double dagger),
ˆ (circumflex), ‰ (salinity),
Œ (OE diphthong), ™ (trademark),
œ (oe diphthong), Ÿ (Y umlaut)
Newt's Cape 1.4t-2 (8 Jun 97)
- default METHOD for FORM is now GET; www.yahoo.com and several NCSA examples now work;
it's a good idea to include METHOD="GET" or METHOD="POST" explicitly in your own forms.
- absolute http: URLs open a book if both filename and BASE matches;
Reload and Load with Images automatically remove current book;
View:Document Source adds [source] to its "URL" to reduce ambiguity with regular doc
- client image maps with two regions now work
- content and FORM info inside nested TABLEs should appear (earlier ignored or errors)
-- formatting may not appear properly, but FORM objects should work.
www.mapsonus.com and www.mapquest.com now work (mapquest has 6 levels of table nesting!)
- radio buttons should split better across pages
- View:Load with Images shows "busybox", somewhat faster scanning for potential graphic URLs,
and offers a popup menu (if current document is in cache) for more details/control
-- you can choose "All Images" or a specific graphic URL
(this is an alternative to adding/modifying URLs in the document itself which can be messy,
and potentially ambiguous); book is re-created from (cached) source
- popup menus for Open HTML Cache, Open Image Cache and Load with Images use max screen width,
avoid funny clipping..., and do not sort (first = oldest in cache; or first image in document)
- help books -- tapping on links to help books (relative or absolute) shouldn't cause error
(though they still don't work); other kinds of links should still work
- Chinese version works
- NewtPack 3.4d,-2 can be used with NewtDevEnv (don't use 3.4b,c)
- fixed one more problem with Content-Type from Japanese servers
- quitting checks HTML Cache to remove temporary entries (even if it doesn't exceed max count)
[pre-1.4s behavior]; Image Cache only remove entries if max count exceeded [same as 1.4s]
Newt's Cape 1.4s-2 (4 Jun 97)
Newt's Cape 1.4r-2 (21 May 97)
interface
- moved File:Open Demo URLs to Bookmarks:
Newt's Cape Example Page
(easier for me to update). added examples:
how to schedule a URL later,
animated (ROM) graphics,
animated GIFs; updated other examples.
- increased status/URL area to 4 lines
- adding a bookmark after loading page (i.e., a current book exists) should use TITLE now
- minor fixes to link hilighting; this may improve interaction with mailto: --
tested with Compuserve, GoFetch, eNotes, Eudora, Aloha;
will test with enRoute;
note: spurious caret appears in text links after returning from IObox on MessagePads with keyboards
- password field in authentication dialog now masks all input (like INPUT PASSWORD)
- IMG in Heading now should not hang TOC on overview (it will display "non-text object")
- hides Standalone book pkg? pref if NewtPack not installed
- added Agent Size&Res to General prefs; if non-empty,
it sends UA-pixels (Size: page dimensions; or screen dimensions if 'full) and UA-color (Res.=bit depth);
header fields added in 1.4q; this allows user to turn off this info.
- HTML: "desktop?" option adds/replaces serial/ADSP docs in cache if there's a BASE in source to provide URL
(inside comments as in examples is ok); this is probably easier than using Sloup to write directly into cache soup
- Images: "original (unconverted)?" prevents conversion, e.g., for experimenting with gray/threshold/animation
(earlier, Process:Cache Only prevented conversion; now that just prevents display)
- Images: "animated?" converts animated GIFs (otherwise, just first frame)
- modified # of items in HTML and Image cache preferences
- 2.x: added General "NewtonScript" picker: none, Compile; this should address security
concerns about web pages that could potentially contain malicious fragments of NewtonScript.
When set to none (default; recommended setting if you are prudent/paranoid), Newt's Cape ignores
any any NewtonScript embedded in HTML documents. If you create your own pages,
download trusted pages (e.g., examples.htm)
or examine the source yourself, you may want to set NewtonScript to Compile for processing only those documents.
(This affects: META DATA., PREF., SCRIPTS., PUBLICATIONDATE, HTMLAPP; PARAM; INPUT/TEXTAREA/SELECT SCRIPT).
graphics
- support for animation. examples:
images from ROM (works on all MessagePads),
animated GIFs (2.x only).
suggestions for appropriate animated GIFs:
- browse first on desktop (directories/search pages not small/convenient)
- small in size <8-10K and/or small number of frames
- longer delays (> .25 secs?) (fewer frames; better LCD refresh)
- good contrast/few colors (so maps well to b&w or grayscale)
- make sure you have enough store memory available
Note: to prevent animation from slowing down ongoing parsing, you can use Process:Display All;
or during parsing, just scroll to a different book page
- IMG: earlier SRC that started/ended with spaces wasn't found in cache;
SRC= can now be followed by tab or newline (in addition to spaces);
redirected graphic URLs (still) don't work (see later redirection note)
- fixed right clipping of IMG border (for image maps and HREF; since IMG may use full width);
hopefully 2-D scrollers should appear only when appropriate
- MAP/AREA tags can now precede IMG tag; client image maps in table should work;
for example, Apple's Newton page works properly now.
- slightly better cache behavior (eliminated one unnecessary copying of each image)
- supports transfer of unknown length binary data (e.g., GIFs from maps.yahoo.com/yahoo)
- server-side image maps can now scroll
- client-side image maps now clip hilighting properly (when scrolled)
- generalized image file extensions, conversion, caching --
so if someone wanted to write a JPEG (or other format) converter plugin,
it should be easier to integrate
tags
- missing TABLE tag, or missing TR tag should behave better
- FRAME tag (ignored earlier) now maps to a paragraph with link (for SRC)
- MAP/AREA tags can now precede IMG tag; AREA COORDS with missing "," should work properly
- following a link to a file with same name as current doc (but in a different directory)
should now work; (earlier it mapped to current book)
- SELECT should work better in table cells
internal
- 2.x: book objects are now stashed in a temporary soup (almost the same as
what Process:Save Package does); when a book page is displayed, it retrieves the necessary objects.
this means that you can create much larger books since most of the content is not stored directly
in heap (only references, form objects and bookkeeping info); you can still
use Process:Save Package though there's no advantage to doing so; in order to Save a package,
you need a newer version of NewtPack (3.4b-2). (this seems to be a more-or-less transparent change,
though I had to fix problems with link highlighting and TOC; let me know if you notice anything unusual/wrong)
- slightly better copying of strings -- hopefully prevents some out of
heap errors on very large strings (e.g., PRE, BLOCKQUOTE)
- provides Host: header field to server (should help with some proxies and redirects)
- redirection does not display "error" (since it's not really an error);
now checks cache instead of always retrieving the document (and possibly duplicating in cache);
does NOT follow redirection for .gif unless it was requested specifically (earlier it was
retrieved, but the original URL wasn't found in the cache anyway)
- fixed problem with redirected POST
- redirect to a relative URL should work now
- ftp:// URL ignored if no ftp client registered with URLcop (not treated as relative http: URL)
- added autoLogin, extraHeader options (API only)
- if you are using "method URLs" in HREFs, the 4th parameters has changed from item to obj
(you can obtain item via obj.item); obj is the screen view object; examples updated
Newt's Cape 1.4q-2, ~G, ~J (30 Apr 97)
- still investigating a GIF fix (esp. for large, gray scale graphics) with Greg;
we hope to include that in final release (scheduled within next week)
- localized Japanese version available: -2~J -- thanks to Shinobu Yamada;
not only does it display labels and messages in Japanese, you can also
transfer encoded files; select encoding under Options.
For cool, funny, useful applets or information for Newton users in Japan,
see MarbleDevelopment.
Thanks also to "GNUE" (aka Makoto Nukui) for the
NewtonTextEncoding(NTE) development tool.
Be sure you have the Shift JIS Plug-in installed.
- localized German version available: -2~G -- thanks to Reinhold Schoeb;
for text, data, package transfer, Unix/Linux users should look at
NewtonLink
- added a 3rd line to status area (for longer URLs/messages)
- if Images off (i.e., no cache), Load with Images option does not appear;
note: you can still directly access a graphics URL (e.g., enter or follow a .gif URL)
- cache prefs now show checkmark for current size selection (and displays 0 and 10 for first two items)
- for H1-H6: default missing string is now ""; H1 no longer defaults to top of page
- TD, TH removed from Appearance Prefs tags; currently, they're implemented more like containers
(like UL); since TD, TH can contain multiple items, you can affect alignment by setting alignment
of individual items.
- tall IMG now clips at bottom of book page (e.g., 2D scroller appears for Sunday dilbert)
- recognizes "HTTP/1.x" response and displays in progress box; previously, header information
from new 1.1 servers was ignored, and documents were treated as text; Newt's Cape
sends UA-color and UA-pixels header fields to servers.
- 2.x: displays a "busy box" at top center when doing Open Notes/Paperback/Newtworks
(earlier if list were long or empty, it was unclear if system were done); sorts titles for Newtworks
- first (rather than last) form text field (TEXT, PASSWORD or TEXTAREA)
on a page now contains insertion caret
- PASSWORD field should now hide last character (with no delay)
- Newt's Cape no longer keeps references to cursors or soups, so heap behavior
(especially on NOS 2.1) should be somewhat better (hopefully)
- default document title when Saving HTML as Notes/Newtworks is now the TITLE rather than URL;
fixed a bug where renaming a Newtworks document could interfere with link and form behavior in book;
slightly better recovery if Newton runs out of heap during save to NewtWorks
- 2.x: starting a query from Notes/NewtWorks should now remember POST data properly
(this affected cache behavior)
- 2.x: added ":NewtsCape" to the http locale name
- recognizes SHAPE="polygon" (in addition to poly) in client MAPs;
note: missing comma within COORDS will still cause problems, and IMG following MAP won't be recognized
- more flexible conversion of & character entities (e.g., missing ; etc.)
Newt's Cape 1.4p-2~G (17 Apr 97)
- localized German version available: -2~G
thanks to Reinhold Schoeb; for text, data, package transfer, Unix/Linux users should look at
NewtonLink
- PASSWORD field should now hide last character (with no delay). this fix will appear in next
English version.
Newt's Cape 1.4p-2 (11 Apr 97)
- eliminated Directory button (added Open Demo URLs to File button)
- increased spacing between buttons; for 2.x, changed buttons to "popupButtons"
that contain a diamond (like NewtWorks toolbar buttons)
- Printing of books that contained gray graphics to network LaserWriters
should now work
- more reliable NewtWorks interface (hopefully) for Open/parse/SaveAs:
Open should list all of the docs; selecting should obtain all of the text;
Save As should open the doc and its title box.
note: this uses undocumented features currently, so is not guaranteed to work.
I will convert to supported APIs when available.
- adds "empty upon quit?" option to both caches --
automatically discards all items from cache when you quit; opens new cache when you start
- Opening a selected Note (on 2.x) or Paperback should be faster (avoids rescanning items)
- for 2.x, entering text in TEXT and PASSWORD fields should be faster
(when there are short pauses between chars), and the last password character
now hides (after a short delay); default insertion caret position is at end of text value
- provides strings (instead of codes) for errors during http transfer
- fixed a bug for headings with missing levels (and possibly containing graphics)
that occur inside table cells
- support for localized versions: check later for German and Japanese versions
Newt's Cape 1.4n (12 Mar 97)
user interface
Major change: user interface reorganization (similar to what was outlined here before).
Row of buttons across top similar to desktop browsers (subsequent popup menus may
contain fewer items depending on version and context)
- File
- Open Location (using contents of status field)
- Open Notes...
- Open Inbox...
- Open Paperback...
- Open Personal Media... (if installed)
- Open Newtworks... (if 2.1 & installed)
- Open HTML Cache... (NIE version)
- Open Image Cache... (NIE version)
- Open/Close Desktop...
- Serial(9600)
- Serial(57600)
- ADSP
- ---
- Save As Package (if NewtPack installed; instead of Save button)
- Save HTML/Image to Notes (if current HTML/Image Cache entry)
- Save HTML/Image to Newtworks (if current HTML/Image Cache entry and Newtworks installed)
- ---
- Save as Text to Desktop... (instead of i:DumpBook)
- ---
- Remove Current Book (instead of Remove button)
- Remove from Cache (if current Cache entry)
- View
- Current Book (instead of Display button)
- ---
- Reload (NIE)
- Load with Images (NIE)
- ---
- Document Source (for HTML Cache entry)
- Go (history and back buttons also still in book bar)
- Bookmks (bookmarks) [NIE]
- Add
- Remove
- http://www. (pattern)
- ---
- user bookmarks
- Options
- General... (instead of i:Prefs)
- Appearance... (instead of i:Tag Prefs)
- Process...
- ---
- Reset All (instead of i:Reset All)
- Directory [NIE]
Removed items:
- Open button items: see File
- bookmarkicon button items: see File, View, Bookmks, Directory
- Process menu: see Options:Process
- Display Book button: see View:Current Book
- Save button: see File:Save as Package
- Remove button: see File:Remove Current Book
- i:Prefs: opens Options popup
- i:TagPrefs, i:Reset All: see Options
- i:DumpBook: see File:Save as Text to Desktop
Other fixes/features
- fixed a nasty bug where Newton might occasionally hang/reboot while caching a converted GIF
- graphic uses entire width of available screen/cell; added support for IMG ALIGN=CENTER
- "fixed" phrase tags (e.g., TT, CODE) now use same font as PRE
(which can still be set via Options:Appearance)
- faster link unhiliting; slightly faster page redisplay (2.x)
- fixed ACTION="Notes bug
- added ACTION="soup/..." syntax to be more explicit; older default without soup/ still works
- indent now preserved across page breaks, e.g., split list items
- for collections of standalone books (e.g., manuals), you can
use/distribute a small plugin ("Newt's Cape Lite") that supports basic
navigation between books, and book history and back buttons. (to open or
follow http: entries, you would still need full Newt's Cape installed)
- removed +4 left pixels kludge on eMate; better Newtworks finding of HTML docs
- you can include an InstallScript and RemoveScript for a book (if you're careful).
just include it as META info, e.g.,
<META NAME="InstallScript" CONTENT="func(bookFrame) begin Print('BookInstallScript); Print(bookFrame); end">
<META NAME="RemoveScript" CONTENT="func(removeFrame) begin Print('BookRemoveScript); Print(removeFrame); end">
- you can add other standard scripts to a book also using META SCRIPT. (if you're careful),
e.g. for bookOKClose, bookHideScript, bookShowScript,
<META NAME="SCRIPT.bookOKClose" CONTENT="func() begin Print(\"yes, ok to close (return nil otherwise\"); true; end">
<META NAME="SCRIPT.bookHideScript" CONTENT="func() Print(\"I just closed\")">
<META NAME="SCRIPT.bookShowScript" CONTENT="func() Print(\"I just opened\")">
Newt's Cape 1.4m (5 Feb 97)
(summarizes changes in 1.4k-m)
user interface
- i:Reset All Prefs -- resets all Prefs to default values (it closes/reopens); we'd recommend that you use
use this after starting this version of Newt's Cape for the first time -- and then make your customizations
(again).
- Prefs:HTML:remove <!--...--> -- removes HTML comments (including JavaScript)
from documents, to shrink cache size and increase processing speed somewhat. default: on.
(if comments removed, "Parsing length" may be less than transfer size)
- Prefs:Cookies -- now a picker (instead of checkbox) with choices:
- Skip
- skip all cookies
- Ask
- confirm cookies for each host
- Keep
- keep cookies (without asking)
- Prefs:Agent Prefix -- some servers may use the User-Agent request header
attribute to route you to different pages; this allows you to add a prefix to
the usual "Newt's Cape..." agent. e.g., "Lynx Newt's Cape...".
- Prefs:Find -- AltaVista example (1.4j) is now the default
- fixed problem with changing value and then closing Prefs/Tag Prefs too quickly
- Open:Personal Media now works correctly for version 2.1 documents
- Open:Newtworks added (-2 version only, but only useful on 2.1 Newtons).
If list of documents containing "<HTML>" is not current/correct,
try toggling Newtworks overview (or open doc directly from Newtworks using Tools:Newt's Cape)
- (Bookmark):http://www. -- sets caret to end and brings up on-screen keyboard
if no external keyboard is connected
- (Bookmark):Copy to Newtworks -- saves HTML or graphic as Newtworks document (like Copy to Notes)
- "parsing" status box:
after first page appears, it repositions to lower right corner. During processing,
interface functionality may be difficult or sluggish to access (e.g., scroll arrows) --
it is possible to drag progress box elsewhere by holding down on center top dot;
or to open the book control bar, and tap the page number button to
navigate to different pages.
- Newtworks:Tools:Newt's Cape (or Notepad:Newt's Cape) --
Newt's Cape should open or reappear on top, even if empty selection/document
tag behavior
- a few table fixes. including special case of handling ROWSPAN for first column
(it still displays entire cell contents in first row, but should add dummy column to
appropriate number of later rows; still assumes that first row contains maximum number
of columns for table)
- for INPUT TYPE=IMAGE with missing graphic, Submit button text defaults to NAME attribute
- supports links on CHECKBOX and RADIO labels, e.g.,
<INPUT TYPE=CHECKBOX...><A HREF="foo.htm">a label</A>
- Newt's Cape automatically follows a (usually absolute) URL after a delay (in seconds)
if it finds a META Refresh property, for example:
<META HTTP-EQUIV="Refresh" CONTENT="5; URL=another url">
- translates … as ...
internal
- fixes for non-USA date formats (in http headers) --
thanks to Lars Immisch for help to tracking down and test my fixes.
note: this uses a temporary, special "locale" for reading/printing web format dates.
- fixed problem with setting cache to "no cache"
- for NOS 2.x serial/ADSP transfers, lines are collected and then processed
(faster transfer, though total time might not be any less).
- Newt's Cape now sends "Accept: */*" in the request header -- this should avoid
the error: "406 No acceptable objects are found".
(Newt's Cape should probably send a list of only built-in and registered types,
but that's more work, plus might make it difficult to obtain non-standard types like packages?).
- Load with Images should now start faster and less likely to skip first image;
also it be better at finding filenames following SRC=.
note: it's still possible for some images to not load (e.g., server timeout) -- just do Load Images again.
- fixed the exs/restartr.pkg file (removed MacBinary header)
- internal cleanup of http state machine (better handling of errors)
- compiled with "2.1 Platform File"
Newt's Cape 1.4j (6 Jan 97)
(summarizes changes in 1.4e-j)
user interface
- tapping a link (and :getURL) supports "Notes/theTitle" format URL--
this assumes that "theTitle" is unique and occurs within the <TITLE> and </TITLE> tags in Notes.
- selecting an item in HTML (or Image) Cache menu now just displays URL
(changed from 1.4d back to 1.3: this allows other commands to be used; use Open:Location to follow URL);
selecting a user or demo bookmark still follows URL immediately (as in 1.4d)
- gray scale works (and looks very nice): Res. (Prefs): "b&w(threshold)", "4-gray", "16-gray"
(corresponding to 1, 2, 4-bit resolution); note: you can access 4- and 16-gray only if you are
on an eMate or MP2K
- eMate/MP2K: book contents shifted 4 pixels to avoid left-clipping system bug for full width page size.
- in Newtworks on eMate, after selecting text (or default: all)
in a Paper (not Drawing) document; this also works in Notes on any MessagePad:
- URL
- select URL beginning with http: (or mailto:, news:)
- select Tools:Newt's Cape (or type cmd-H -- for "HTML") in NewtWorks,
or select Newt's Cape:getURL in Notes menu
- goes to that URL
- HTML source
- select text containing <HTML>
- select Tools:Newt's Cape (or cmd-H) in NewtWorks,
or select Newt's Cape:Open in Notes menu
- processes the HTML source
- any other text (upto 100 characters)
- select text to be used as a query (default: all)
- select Tools:Newt's Cape (or cmd-H) in NewtWorks,
or select Newt's Cape:Find in Notes menu
- sends query to a search engine directly
(to specify search parameters, see Find.Title, .URL, .Method, .Data Prefs)
- added picker and general input field (replaces separate Proxy and Except fields)
- Startup URL
- after Newt's Cape startup, :getURL is called with this URL
- Proxy URL
- former "Proxy" field (http: URL for firewall; mailto: URL for "WebMail" replacement)
- Proxy Exceptions
- former "Except" field (list of domains)
- Find.Title
- This and other Find. fields used for customizing Newtworks/Notes Find behavior.
Title appears in Notes menu when a phrase (not URL or HTML source) is selected.
e.g., AltaVista would appear as Newt's Cape:Find (AltaVista).
If this is empty, Notes will not display a :Find command; if Newt's Cape is closed
and it's unclear if there is a Find pref, it will display :Find?
- Find.URL
- URL for a search engine, e.g., http://altavista.digital.com//cgi-bin/query
- Find.Method
- GET or PUT, depending on the search engine/script; must be uppercase. e.g., GET for AltaVista.
- Find.Data
- NewtonScript source for an array of alternating data slots and values
e.g., for AltaVista: ["q","","pg","q","what","web","fmt","c"]. You would typically obtain these
by looking at a FORM and its INPUT, SELECT and TEXTAREA objects in a search page.
Note: first slot must be the "query" slot -- Newt's Cape sets this slot
with the selected phrase from Notes or Newtworks. Slots correspond to case-sensitive NAME attributes.
Values are strings for default and hidden VALUE attributes; for checkboxes, enclose the value(s)
for same name in an array, e.g., ["checked"]. In case of long data definitions, since this
is currently a 1-line text field, enter last fields first,
and then add other items before these to keep most recent visible; select CheckData
several times to catch any errors early (since you won't be able to edit the last items conveniently).
If this becomes a popular feature, we'll expand editing somehow. If you add this for your favorite search engine,
let me know the parameters you used, and I'll summarize for other users.
- Find:CheckData
- this compiles and checks the data frame definition -- you must do this after editing Data.
Possible responses:
- OK
- compile err -- probably missing/extra [",]
- not an array (or odd length)
- name or value error -- a name should be a string; a value is a string or array of strings)
- always displays URL (e.g., for Notes, "Notes/theTitle") before parsing
(this also clears any earlier error message)
- updates Parse progress a little more frequently
- updated Greg's home pageURL
tag behavior
- radio buttons can now be non-contiguous,
with other objects (e.g., text or input fields) interspersed vertically;
or as adjacent table columns
- MAP/AREA now works if not immediately contiguous with matching IMG USEMAP
(and several image maps can be defined and later used by MAPs)
- PRE that contained other objects often became P -- should be restored and only end with </PRE>
- table layout completely redone.
- cells can contain multiple items (though border may contain gaps)
- WIDTH attribute (percentage or fixed pixels) used in TABLE and TD/TH
(as long as total width does not exceed size of screen);
default cell widths default to first row (those default to equal parts of remaining width);
CELLSPACING, CELLPADDING still ignored
- BORDER=0 now omits borders; BORDER=1 may work (though for multiple items
or certain objects there may be gaps); larger values default to 1.
- rows that do not fit on a page are split rather than always started
at top of a new page; note: this provides initial foundation
for ROWSPAN and embedded tables, but these are not yet supported
- TH previously centered heading (this is broken: non-centered currently)
- currently skips cells with COLSPAN=0 (no visible content?)
- currently ignores tags that are outside scope of a cell, e.g., </TD><BR>
- better default labels from adjacent text for INPUT TEXT, RADIO, CHECKBOX
- a paragraph containing any bold face should now avoid clipping/overlapping
content (it may in fact be larger than necessary; there may still be a
problem in some bordered table cells); since Newton's built-in
text measurement routines do not handle mixed styles, a paragraph with
bold may still be split in unexpected places; para with taller (but narrower) font
like Geneva (current PRE default) may be clipped
- does not prefix orphan (outside scope of UL,OL,DL) list items with "?".
avoids some double prefix situations
- HR recognizes SIZE and NOSHADE attributes (default fill is dark gray rather than black)
- include a VALUE_TYPE attribute for INPUT TEXT objects to specify the type of value
(the type of keyboard to pop-up -- it does no other value checking):
- [none] (default)
- standard alphanumeric keyboard
- int (or num)
- numeric keypad
- date
- date keypad
- phone
- phone keypad
This is a non-standard attribute, but several users had requested it. I had considered inferring
the type from the default VALUE, but that seemed complicated, error prone.
- recognizes (though does not actually implement) CENTER, NOBR
-- earlier these were "ignored" which may have caused extra blank paragraphs.
internal
- uses BASE properly to resolve graphic references
- copies large local string source (e.g., Notes) to VBO (virtual binary object on 2.x)
to save heap (note: cached entries were already VBOs)
- fixed thaw package routine (it wasn't finding frozen packages)
- internal cleanup to remove unnecessary attributes from book objects
- editing text-based Prefs (and Tag Prefs) much faster on NOS 2.x
since Newt's Cape Prefs entry isn't always updated on each keystroke
- further changes to :addItem API -- now named :addHTMLitem. former 2nd arg (value)
now _value slot in tag object; status now 2nd arg
- although META supports both HTTP-EQUIV and NAME, generally most should be NAME
examples
Newt's Cape 1.4d (18 Dec 96)
(summarizes changes in 1.4b-d)
user interface
- Prefs: "Cookies?" checkbox -- stores/clears cookies (stored in user prefs)
- Prefs: "B&W" option is now "B&W(threshold)", which displays input area
(or hides it for gray scale)
- Process: "Display Page1" option -- displays first page only.
- progress box for Header reply, parsing status (Items, Pages info; Stop button);
removed a few ephemeral (Connecting, Binding, Unbinding) progress boxes
to make connection process go a little faster
- progress box appears during Parsing to display status periodically. tap
Stop to stop parsing entirely (and display partial results); tap close box
(x) to make progress box disappear (and continue parsing -- you'll know when
parsing is done visually when end of document appears, or audibly by Doc
Done sound). After first page is complete, parse progress box closes to
allow book page 1 to be visible (progress box prevented page 1 from actually
displaying); progress box reappears to allow Stop/show progress. Since this
is based on lines currently, really l-o-n-g (many K) lines, e.g., query
results with few return characters, may appear to hang (after completing)--
just wait awhile for line to finish parsing. Multi-page objects (e.g.,
<PRE>) update Item/Page status only when complete.
- sets caret in (last) INPUT(TEXT) or TEXTAREA field on current book page
[earlier it wasn't set anywhere, so handwritten input might not appear without tapping first]
- image map: now highlights when tapped
- selecting a bookmark or cache item now accesses the item immediately
(no need to select Open:Location) [note: not cache in 1.4j]; however, if "trust cache?"
setting is off (see next), a "Connection Slip" appears for cached entries if not connected,
or Newt's Cape checks with server to see if there's a newer version.
- History list (overview button) in book now displays "Clear History"
instead of "Clear Cache". it can include temporary entries. bug fixed where
current entry was added by the Back, History buttons.
- Cache HTML? and Cache Images? checkbox Prefs changed to "HTML" and "Images" pickers:
- no cache
- empty cache and disable
- 10-100 (default: 40)
- number of regular cache entries to keep when quitting Newt's Cape
(this is after removing any expired or temporary entries). note: you should
think of this as the minimum number of entries; during a session, this limit
can be exceeded by temporary and regular entries. If you plan to fetch many, large documents
you may wish to set this lower, depending on how much memory you have available.
- trust cache?
- if on (or for a temporary entry)
- already connected
- do not ask server to check for more recent version
- not connected
- use cached entry directly without asking to connect
- if off (default)
- already connected
- ask server to check for more recent version
- not connected
- ask user to connect; if user closes without connecting, use cache entry
- recommended settings:
off for HTML (unless you work with a lot with cached entries offline);
on for Images (unless you expect graphics to change frequently on server)
- auto load? (for Images only)
- same as former "Load Images?" checkbox (now removed)
tag behavior
- some TABLE layout (cells with radio buttons) may be broken (hopefully fixed in 1.4j)
- fix for APPLET with missing NAME attribute
- multiple FORMs with same ACTIONs now ok
- overlapping phrase markup now works, e.g.,
<A HREF...><B>some text</B></A>
- IMAGE map with missing graphic turns into SUBMIT button (labeled "Submit" or ALT)
- kludge to handle orphan & (followed by space)
internal
- faster/bigger text transfer (even w/o Content-Length or cr's);
entire HTML document collected before parsing
(earlier, it incrementally parsed each line as transferred)
- cache entries are much smaller (uses text/bitmap compression)
- internal caching (during session) of DNS results (IP addresses)
for faster access to same domains
- Load with Images should work better (finds more URLs)
- fixes bookmarks (sometimes couldn't Add later)
- more reliable GIF converter (may avoid some random reboots/freezes)
- a few additional error messages, checking
- uses Date: header Date: information as default Last-Modified: date
(rather than Newton internal clock which might be out of sync with server)
- Dilbert Logo demo url fixed
- temporary entries can now be cached, navigated to via Back/History (without refetching),
and automatically expired (removed) at end of a session. "temporary
entries" are documents generated by a server: obtained via a POST
method or the URL contains "?" -- usually for query results and some
documents. currently, temporary (POST) entries do not appear in the HTML Cache menu.
- cache behavior summary:
- temporary entries can now include POST data in addition to the URL
(it should also use the port number, if any, since it's part of the URL)
- all temporary documents are removed automatically upon quitting Newt's Cape,
i.e., "session close".
- at session close, expired entries are also removed;
then, oldest entries are removed so that no more than the limit (see HTML/Image Prefs)
remains in each (text,graphic) cache. (Although it might be possible to test instead
for total cache size and calculate size of each entry, that would be complex/slow right now).
- temporary entries can be re-accessed only via navigation (back, history);
non-POST entries can also be access via selecting/entering it as a URL from a document or
"HTML Cache" menu.
- currently, when you return to a query entry (form) that contained form data
(e.g., a user query), the previous user modified values are not restored
(it uses the default values in the original HTML document itself); this is incorrect,
but will require more investigation.
- currently, there are several places where Newt's Cape chooses which cache to check
based on file extension (if a GIF file doesn't end with .gif, it won't be found;
probably should be based on MIME type)
- fixed readonly bug with Scroll Menu (3rd party popup menu) utility
- internal cleanup in preparation for better layout/parsing --
if you are using "htmlApp:addItem" API, contact me -- in particular, the
first (tag) argument is now a frame (with _tag: slot), rather than an array;
the third (new) argument is nil or a frame (eventually may provide status
information)
- :parseHTML method removed (see advapi.htm document; use dispatchFile/addFile instead)
Newt's Cape 1.4a (29 Nov 96)
- only fix: editing Proxy/Except prefs gave an error in 1.3.
- note about "Standalone bk pkg?" -- the setting at the time of processing the document
is used (rather than if you change it later just prior to saving).