Markup tweaks, changelog in the UI

slava 2006-03-29 04:31:45 +00:00
parent ffbf613a4b
commit 6abc8df1d8
8 changed files with 113 additions and 13 deletions

View File

@ -1,9 +1,6 @@
0.81:
- x86 %box-struct
- x86 %write-barrier
- x11 title bars are funny
- changelog in the UI
- amd64 %box-struct
- automate .dmg build, put sources there
@ -31,7 +28,6 @@
- x11 input methods
- cocoa:
- global menu bar with useful commands
- make the launchpad a palette
- expired aliens in view hash
- don't multiplex in the event loop if there is no pending i/o
- horizontal scrolling

View File

@ -0,0 +1,84 @@
USING: generic help inspector memory sequences ;
ARTICLE: "changes" "Changes in the latest release"
{ $subheading "Factor 0.81" }
{ $subtopic "UI"
{ $list
"Replaced SDL backend code with Mac OS X (Cocoa), X11 and Windows implementations"
{ "The UI now starts by default under X11 if " { $snippet "$DISPLAY" } " is set" }
"Multiple windows are now supported"
"New browser gadget supports history and multiple views of an object"
"Preferred size cache to speed up gadget layout"
"Better-looking outliners"
}
}
{ $subtopic "Help system"
{ $list
{ "Help cross-referencing implemented - the " { $link links-in. } " and " { $link links-out. } " words are analogous to " { $link usage. } " and " { $link uses. } }
{ "New documentation covers development tools and C library interface" }
}
}
{ $subtopic "Core language"
{ $list
"Stack underflow and overflow errors are not reported as such, and not generic \"signal 11\" errors (Adam Langley)"
{ "The " { $link standard-combination } " word now takes a stack position, not a picker quotation, and delegation is now supported for words which dispatch on a stack location other than the top" }
{ "New " { $link exchange } " word" }
{ "More useful " { $link heap-stats. } " output now shows count/allocation statistics per-class, instead of per-type" }
{ "Factor now looks for a " { $snippet "factor.image" } " in the same directory as the runtime executable on Mac OS X and Windows, if you don't specify an image name parameter on the command line" }
}
}
{ $subtopic "Portability"
{ $list
"Solaris x86 port (Patrick Mauritz)"
}
}
{ $subtopic "Compiler"
{ $list
"Compiler no longer splits all branches, reducing compile time and generated code size"
}
}
{ $subtopic "C library interface"
{ $list
"Structs can now be passed by value to C functions"
{ "Callbacks from C code to Factor are now supported - see " { $link "alien-callback" } }
{ "Improved support for passing UTF16 strings to and from C functions (" { $snippet "ushort*" } " type)" }
{ "The " { $snippet "BEGIN-ENUM:" } " and " { $snippet "BEGIN-UNION:" } " parsing words have been annexed in favor of new, more consise syntax - see " { $link POSTPONE: C-ENUM: } " and " { $link POSTPONE: C-UNION: } }
}
}
{ $subtopic "Objective C library interface"
{ $list
"Objective C classes can now be subclassed"
"Objective C exceptions are now caught and reported as Factor exceptions"
"Objective C messages returning structs by value are now supported"
}
}
{ $subtopic "Contributed libraries"
{ $subtopic { "HTTP server - " { $snippet "contrib/httpd/" } }
{ $list
"File responder fixes"
"Inspector responder fixes"
"Continuation responder fixes"
{ "Add templating engine in " { $snippet "embedded.factor" } " (Alex Chapman)" }
}
}
{ $subtopic { "XML parser - " { $snippet "contrib/xml.factor" } }
{ $list
"Various updates for recent Factor changes"
"Improved XML output capabilities"
}
}
{ $subtopic { "External process interface - " { $snippet "contrib/processes.factor" } }
{ $list "This is a new, experimental library." }
}
{ $subtopic { "Factory window manager - " { $snippet "contrib/factory/" } }
{ $list "Many updates" }
}
{ $subtopic { "Cryptography library - " { $snippet "contrib/crypto/" } }
{ $list
"Added Base64 encoding (Doug Coleman)"
"Added Blum Blum Shub random number generator (Doug Coleman)"
"Added CRC32 checksum (Doug Coleman)"
}
}
} ;

View File

@ -1,12 +1,14 @@
USING: help inspector parser prettyprint ;
ARTICLE: "handbook" "Factor documentation"
"Welcome to Factor!"
$terpri
{ $subheading "Factor UI basics" }
"The Factor user interface centers on the concept of a " { $emphasis "presentation" } ". A presentation is a graphical view of a live object."
$terpri
"Placing the mouse over a presentation highlights it with a border. Presentations are everywhere; help links, words, and code examples are all presentations. Clicking a presentation displays a browser window looking at the underlying object. A left click will reuse the current browser window; a right click always opens a new window."
"Placing the mouse over a presentation highlights it with a border. Presentations are everywhere; help links, words, and code examples are all presentations. Clicking a presentation displays a browser window looking at the underlying object."
$terpri
"A left click will reuse the current browser window; a right click always opens a new window."
$terpri
{ $subsection "changes" }
"The environment:"
{ $subsection "quickref" }
{ $subsection "tools" }

View File

@ -263,6 +263,7 @@ vectors words ;
"/library/tools/walker.facts"
"/doc/handbook/alien.facts"
"/doc/handbook/changes.facts"
"/doc/handbook/collections.facts"
"/doc/handbook/dataflow.facts"
"/doc/handbook/handbook.facts"

View File

@ -4,6 +4,7 @@ HELP: standard-combination "( word dispatch# -- quot )"
{ $values { "word" "a generic word" } { "dispatch#" "a dispatch position" } { "quot" "a new quotation" } }
{ $description
"Performs standard method combination."
$terpri
"Generic words using the standard method combination dispatch on the class of the object at the given stack position, where 0 is the top of the stack, 1 is the object underneath, and 2 is the next one under that. If no suitable method is defined on the class of the dispatch object, the generic word is called on the dispatch object's delegate. If the delegate is " { $link f } ", an exception is thrown."
}
{ $examples

View File

@ -129,6 +129,19 @@ DEFER: help
: $subsection ( object -- )
[ first [ (help) ] swap ($subsection) ] ($block) ;
: ($subtopic) ( element -- quot )
[
default-style
[ last-block on print-element ] with-nesting*
] curry ;
: $subtopic ( object -- )
[
uncons* ($subtopic) [
subtopic-style [ print-element ] with-style
] write-outliner
] ($block) ;
: >link ( obj -- obj ) dup string? [ <link> ] when ;
: $link ( article -- )

View File

@ -18,10 +18,17 @@ USING: styles ;
: heading-style H{ { font "serif" } { font-size 16 } } ;
: subheading-style H{ { font "serif" } { font-style bold } } ;
: subheading-style H{ { font "sans-serif" } { font-style bold } } ;
: subsection-style
H{ { font "serif" } { font-size 14 } { font-style bold } } ;
H{
{ font "sans-serif" }
{ font-size 14 }
{ font-style bold }
} ;
: subtopic-style
H{ { font-style bold } } ;
: snippet-style
H{

View File

@ -15,15 +15,11 @@ namespaces sequences ;
: handbook-window ( -- )
T{ link f "handbook" } browser-window ;
: tutorial-window ( -- )
T{ link f "tutorial" } browser-window ;
: default-launchpad
{
{ "Listener" [ listener-window ] }
{ "Documentation" [ handbook-window ] }
{ "Help index" [ [ articles. ] "Help index" pane-window ] }
{ "Tutorial" [ tutorial-window ] }
{ "Vocabularies" [ [ vocabs. ] "Vocabularies" pane-window ] }
{ "Globals" [ global browser-window ] }
{ "Memory" [ [ heap-stats. terpri room. ] "Memory" pane-window ] }