Commit Graph

3588 Commits

Author SHA1 Message Date
Matthew Flatt
ca3b712871 minor doc edits
consistent capitalization of section titles
2012-12-27 09:24:15 -06:00
Matthew Flatt
2d12431c0d move and fixup docs for the "help" collection 2012-12-27 09:24:15 -06:00
Matthew Flatt
f29230f8f2 add `scribble/tag' and clean up some tag-related documentation and functions
Includes the addition of `make-section-tag' and `taglet?' to
`scribble/base'.
2012-12-27 09:24:14 -06:00
Robby Findler
d2d1ac2f2c Improve the logger GUI in DrRacket
One drawback to the current situation (after this commit) is that all
log messages are sent into the user's logger, even messages that come
about as part of DrRacket's implementation. It isn't clear how to fix
this without enumerating all of the possible messages to share and
explicitly forwarding them (both of which are suboptimal things).

On the plus side, the GUI now uses the "debug@GC" notation in a text
field, and when the logger pane is not open, there is no extra work
going on. Plus other, minor GUI improvements.
2012-12-26 22:38:42 -06:00
Robby Findler
10137dc679 fix bug in help/search docs 2012-12-26 21:18:53 -06:00
Matthew Flatt
18a538050a guide: improve explanation of transformer procedures and identifier macros 2012-12-26 12:15:03 -06:00
Robby Findler
fa85d30773 adjust the search bubbles so they flicker less when typing 2012-12-25 17:40:32 -06:00
Matthew Flatt
b69573277c reference: rerrange docs on synchronizable events
Put the details consistently with event datatypes, instead
of trying to put them all in `sync', which better reflects
the extensibility of the set of synchronizable events.
2012-12-25 07:20:58 -06:00
Robby Findler
042bbbefe7 add an ASCII art rectangle => unicode rectangle keybinding to drracket 2012-12-24 11:38:54 -06:00
Matthew Flatt
4a57db4448 add (system-type 'word)
Returns 32 or 64 to indicate whether Racket is running as a
32-bit program or a 64-bit program.
2012-12-24 06:38:53 -07:00
Robby Findler
2fced5d7d6 drracket tracks the frame position and size on a
per-monitor-configuration basis and (possibly) moves/resizes
the frame when it changes
2012-12-21 19:22:59 -06:00
Robby Findler
3f9e60a908 add display-changed method 2012-12-21 19:22:59 -06:00
Matthew Flatt
aa08a68424 add phantom byte strings
A phantom byte string is a small object that the memory
manager treats as an arbitrary-sized object, where the
size is specified when the phantom byte string is created
or or when size is changed via `set-phantom-bytes!'.
2012-12-19 18:42:14 -07:00
Robby Findler
e19243329c adjust drracket to track an lru order on tabs and use it
when closing one to pick the next one to show

added the touched and get-last-touched methods to tab<%>
2012-12-19 10:50:01 -06:00
Matthew Flatt
4fc71951ee change subprocess handling to avoid waitpid(0, ...)
Keep track of whether any Racket-managed subprocesses are pending,
and use waitpid(0, ...) only if there is one, to better cooperate
with an embedding environment.

Also, add a chapter to the "Inside" manual to explain the issues.
2012-12-19 08:54:32 -07:00
Matthew Flatt
0f909af765 ffi/com: add `com-get-property*'
Accesses a "parameterized property", which is like a method call
but for a name that is categorized as a property.
2012-12-18 06:39:59 -07:00
Ryan Culpepper
714eba684a fix docs for raise-range-error 2012-12-16 22:29:43 -05:00
Matthew Flatt
bbfded59bf fix doc typo
Closes PR 13362
2012-12-16 13:11:56 -07:00
Matthew Flatt
59c693ddb2 fix docs on scheme_malloc_fail_ok
Closes PR 13363
2012-12-16 13:11:56 -07:00
Matthew Flatt
fb7cbcfeb1 date struct: improve docs
Closes PR 13371
2012-12-16 13:11:56 -07:00
Matthew Flatt
d3e4fbe7a7 make scheme_check_threads() run at least on thread quantum
As long as some thread is ready to run, and in case the threads
synchronize after very little work, keep checking threads for
at least one thread quantum.
2012-12-16 13:11:56 -07:00
Danny Yoo
be49c6731c Documentation example for string-copy. 2012-12-13 19:05:45 -07:00
Asumu Takikawa
0c11601fdf Fix documented name of unsafe-cons-list 2012-12-13 18:25:29 -05:00
Asumu Takikawa
5286e5016e Minor doc fix 2012-12-13 17:54:58 -05:00
Matthew Flatt
6eef00a312 raco setup: fix problem with doc index database
When a tag is serializable but not `write'--`read' invariant,
then it needs to be serialized and deserialized.

Also, clarify and check in `tag?' that a tag should be
serializable.
2012-12-13 15:45:48 -07:00
Danny Yoo
f374cb184d Add separate section to avoid conflict at scribble time. 2012-12-13 13:00:06 -07:00
Danny Yoo
db280d0941 Add scribble/doclang2 with keyword support for customization, and documentation. 2012-12-13 12:50:27 -07:00
Asumu Takikawa
9c70f3373d Expand on quote-syntax docs 2012-12-10 18:05:29 -05:00
Asumu Takikawa
77e687579a Doc typo 2012-12-10 15:49:50 -05:00
Greg Hendershott
6aa6dc0400 Add a Markdown rendering mode to Scribble.
Uses "Github flavored markdown". Specifically, code blocks are opened
using ```scheme so that Github will lex and format them as Scheme code
rather than generic monospace.

Note: I would have used ```racket, but we are still waiting for the
pygments.rb project to pull again from pygments-main -- to which I
contributed a Racket lexer back in August. After pygments.rb pulls,
can update this to use ```racket instead.
2012-12-09 15:17:36 -07:00
Matthew Flatt
4721a79c8f define-logger: make (define-logger X)' define X-logger' 2012-12-07 06:36:31 -06:00
Vincent St-Amour
cc8bd4f294 Make srclocs serializable. 2012-12-06 17:53:04 -05:00
Robby Findler
6b3b59e4a8 more "this function is useless" notes in old contract functions 2012-12-04 21:07:34 -06:00
Robby Findler
d30e7c6771 clarify that flat-contract is essentially useless now 2012-12-04 19:58:19 -06:00
Ryan Culpepper
3075b4d285 remove implicit quasiquote from lazy-require 2012-12-03 19:28:12 -05:00
Ryan Culpepper
fd7d8a412c move lazy-require to racket/lazy-require 2012-12-03 19:28:12 -05:00
Danny Yoo
f80134247d Add content to documentation on '-c' to ward off accidental misuse. 2012-12-03 12:48:50 -07:00
Matthew Flatt
acd24d68ec reference: add missing section tags 2012-12-03 12:12:54 -07:00
Eli Barzilay
27e8702ec5 Avoid using `-c' in a script example. 2012-12-03 14:09:16 -05:00
Matthew Flatt
9e8477dd45 racket/serialize: serialize fxvectors and flvectors 2012-12-03 10:42:35 -07:00
Matthew Flatt
9cf821b301 disallow #fx()' and #fl()' notation in `read-syntax' mode
Allowing them would require support for immutable fxvectors and
flvectors, interning, and more. Since the motivation for reader
support is to make marshaling and unmarshaling easier, allow
them only in `read' mode. Change printing to make then unquotable.
2012-12-03 10:42:35 -07:00
Kevin Tew
492167c23f read and write support for fxvectors and flvectors 2012-12-03 10:42:35 -07:00
Robby Findler
280d924349 A first attempt at a section explaining reachabilty, weak boxes,
and how to test using them
2012-12-03 10:34:00 -06:00
Matthew Flatt
545191fcec guide and reference: fix typos related to "evaluation context" 2012-12-02 08:03:54 -07:00
Matthew Flatt
d0ff14b17c fix main docs to include installation-specific links/packages 2012-12-02 08:03:54 -07:00
Robby Findler
03daa7f3c2 whoops; @racket[] should have been @method[] 2012-11-30 21:33:48 -06:00
Robby Findler
d6efcde6ca docs fixes related to somewhat recent DrRacket window
resizing commit
2012-11-30 21:31:57 -06:00
Matthew Flatt
540bab88e1 setup/getinfo: allow a path string for `get-info/full' 2012-11-30 07:26:51 -07:00
Robby Findler
993cd40208 Adjust DrRacket so the window can get narrower
For example, a new DrRacket window (with a file named tmp.rkt in the
and 356 afterwards.  This is under mac os x with, I believe, the
default system font sizes. (The file is important because different
languages can have different buttons in the toolbar and the filename's
length itself can affect the minimum size.)

Mostly this change is the addition of a new kind of panel that
lets its children have multiple fixed sizes (as opposed to
just a single minimum size and (optionally  arbitrarily large))
It also adjusts the various toolbar buttons to use this new code.

Also, there's a few tweaks to shrink other things that became the
limiting factor in shrinking the width of the DrRacket window.

Currently, at least for #lang racket programs, the toolbar buttons
along the top of the window are the limiting factor (including the
save button).  With a bogus language (ie, #lang rackeeet), the bottom
bar is the limiting factor, since that will have only the Save, Run,
and Stop buttons.

related to PR 13281
2012-11-29 09:43:05 -06:00
Sam Tobin-Hochstadt
d6b0dfcd04 Switch to use almost-standard DOCTYPE for Scribble.
Also switches scribble search trampoline to standard DOCTYPE.

Scribble's HTML output currently relies on the quirks-mode
box model for layout of the many tables used in rendering.
However, Scribble doesn't need the rest of the changes in
browser quirks modes, so we choose a DOCTYPE that just
changes the box model.

It's non-obvious how to replicated this formatting with CSS
in standard-mode rendering.  Probably a better long term
solution is to move away from table-based layout.

See further discussion on GitHub pull request 158 here:
  https://github.com/plt/racket/pull/158
2012-11-29 07:06:52 -07:00
Matthew Flatt
88a729df56 setup/setup: a keyword-based API for running `raco setup'
Mostly moves the implementation out of `setup/plt-single-installer'
into a more generic format.
2012-11-29 06:27:38 -07:00
Robby Findler
253ae42558 clarify what 'displayed' is programmatically (a call to get-admin) 2012-11-28 13:17:41 -06:00
Samuel Bronson
5a216cc4ce scribble: Rename attribute pltdoc -> data-pltdoc, which is valid in HTML5.
(pltdoc isn't valid in any version of HTML.)
2012-11-27 07:55:43 -07:00
Samuel Bronson
a66fa77e2e Typo fix in content-type: text-html -> text/html 2012-11-27 07:55:36 -07:00
Matthew Flatt
c0abe85d30 make case' in r5rs' and r6rs' still use eqv?'
Also, make both `case' and `cond' disallow internal definitions,
instead of inheriting the `racket' behavior.
2012-11-26 19:49:36 -07:00
Jon Zeppieri
486e95049f change 'case' to use equal? 2012-11-26 17:58:04 -07:00
Robby Findler
43e7150fdf clean up the text:searchable docs based on recent changes 2012-11-26 18:42:18 -06:00
Asumu Takikawa
6a88812de7 Add doc pages for remaining raco commands
Closes PR 12956
2012-11-26 17:52:43 -05:00
Asumu Takikawa
8c91decc8a Index raco scribble command
Relevant to PR 12956
2012-11-26 17:52:43 -05:00
Nadeem Abdul Hamid
8f3343cd01 automatic parenthesis mode improvements
Handle close parentheses in a smarter way while in
auto-parens mode and be a little more smart about
inserting brace pairs in general.

In summary:

 - Add some "smart-skip" behavior to insert-close-paren,
   described in the documentation.
    - When auto-parens mode is enabled,
      the existing "balance-parens" keybinding invokes
      insert-close-paren with a smart-skip argument of
      'adjacent
    - A new "balance-parens-forward" keybinding invokes
      insert-close-paren with a smart-skip argument of
      'forward (whether or not auto-parens mode is
      enabled)

 - Enable basic smart-skip behavior for
   strings ("...") and |...| pairs, specifically, typing
   a double-quote or bar character when the cursor
   immediately precedes one causes the cursor to simply
   skip over the existing one

 - Tweak auto-insertion of block comment pairs; i.e.
   typing hash and a bar results in a properly balanced
   #||# pair. Also, when you type a bar character when
   the cursor immediately precedes a closing bar and
   hash of a comment, then the cursor skips over both
   characters (this seems better than having it just
   skip over the bar, and then having to introduce a
   new keybinding to detect when a hash is typed while
   the cursor is between a bar and a hash)

 - In strings and line/block comments, auto-parens mode
   no longer has any effect (you can still use the M+..
   keybindings to force insertion of a particular brace
   pair)

 - Detect when a character constant is being typed, and
   don't insert brace pairs if so; i.e. if the cursor
   is immediately after #\ , then typing any open parens,
   double quote, or bar, does _not_ result in the
   insertion of an open/close pair even in auto-parens
   mode

 - Add a bunch of tests related to auto-parens, matching
   pairs of braces, strings, comments, etc. to
   collects/tests/framework/racket.rkt
2012-11-25 21:57:52 -06:00
Robby Findler
5197649cb7 improve the interactivity of DrRacket's search
Changes the implementation of highlight-range so that it
only recomputes all of the new locations from the positions
when on-reflow is called (otherwise only computing the
relevant ones) and make the on-reflow callback chop itself
up, in case there are lots of highlighted ranges to avoid
tying up the event loop.

Changes searching so that it doesn't neccessarily compute
the entire search results in a single event callback
(but also make it start the computation more aggressively)

Overall, this changes the strategy from one that, for any potentially
long-running callback, just tried to push it off into the future, into
a strategy that tries to avoid long-running callbacks by breaking the
work up into chunks, but starting the first chunk immediately (in a
low-priority callback).

Also, misc other changes to make this work better and generally clean
things up.
2012-11-25 20:58:13 -06:00
Matthew Flatt
3f08da67a4 remove 'always-run style from the doc that list documents
The 'depends-all style and dependency tracking should run the document
when needed, I think.
2012-11-24 08:13:51 -07:00
Matthew Flatt
a73dc50224 break cross-reference info for document into pieces
For example, the cross-reference information for the
Reference is now broken into about 16 pieces, so that
resolving a cross-reference into the Reference doesn't
require loading all cross-reference information for
the Reference.

Every document is split into two pieces, so that the title
of a document is roughly in its own piece. That way,
re-building the page of all installed documentation can be more
scalable (after some further changes).
2012-11-23 18:44:51 -07:00
Matthew Flatt
20bdbb6d9b racket/serialize: simpler handling of quotable values 2012-11-23 18:44:51 -07:00
Matthew Flatt
8c1b5db815 raco setup: build database mapping doc tags to "out.sxref"s
The `xref' produced by `setup/xref' uses the database to delay
loading "out.sxref"s, which cuts 64-bit DrRacket's initial
footprint by around 50MB (i.e., about 20%).
2012-11-23 18:44:50 -07:00
Robby Findler
e55d32b2eb fix docs bug in recent commit 2012-11-22 20:02:59 -06:00
Robby Findler
5b18645a9a added spelling dictionary support
related to PR 13242
2012-11-22 19:24:22 -06:00
Robby Findler
6fff8a3030 make right-clicking on non-text offer copy and cut in the
popup menu

Extends append-editor-operation-menu-items so that when you
pass an editor and a position, it checks to see if that spot
has a non-string% snip and, if so, copies that one position
(or cuts it, depending).

Then, use that extension in DrRacket

closes PR 12791
2012-11-22 17:33:34 -06:00
Asumu Takikawa
a9201f68dd Fix typo
Related to PR 13241
2012-11-19 16:29:56 -05:00
Matthew Flatt
0f5308514a fix docs for `time'
The `time' form allows multiple forms and as an internal-definition
context.
2012-11-19 09:38:58 -07:00
Matthew Flatt
702df4b07a racket/gui/dynamic: make gui-dynamic-require' pull from racket/gui/base'
It was pulling from `scheme/gui/base', instead. The one from `scheme/gui/base'
is now different and still pulls from `scheme/gui/base'.

This could break some programs that accidentally depended on `scheme/gui/base'
exports from `gui-dynamic-require', but it's more likely to fix problems.
2012-11-19 08:13:48 -07:00
Matthew Flatt
843aa670e9 racket/gui: fix docs for `printer-dc%' and related functions
A page-setup dialog is now available on all platforms, which means
that no dialog will appear when a `pirinter-dc%' is created. Meanwhile,
note that `end-doc' normally shows a (different) dialog.
2012-11-18 10:31:21 -07:00
Robby Findler
4774d7fea0 made the 'one-line-summary' of the drracket languages be in tooltips,
instead of in a message% object near the bottom of the dialog
2012-11-17 20:15:19 -06:00
Matthew Flatt
eaf68e6e85 GMP and MPFR as pre-build libraries for Mac OS X and Windows
Also, add versions for Unix references, and adjust the way that
missing bindings are handled.
2012-11-16 22:21:54 -07:00
Matthew Flatt
4080446c50 skip ".git" or ".svn" in a collects directory
Also, update the documentation for `raco setup' and its handling
of command-line argument.
2012-11-16 14:10:32 -07:00
Robby Findler
d0ce0de398 change the way that the delegate text is specified, using
getter/setters instead of overriding a method

this has the benefit that the delegate does not have to be
rebuilt when switching tabs in drracket; we just leave the
old delegate on the old definitions text, and the swap it
back into the editor-canvas when we swap the text% object
itself back in.
2012-11-16 14:33:17 -06:00
Matthew Flatt
a4b5336709 doc clarification on `set-rest' 2012-11-16 06:37:23 -07:00
Matthew Flatt
bdf1c3e165 bytecode compiler: generalize local-type tracking for unboxing
Track fixnum results in the same way as flonum results to enable
unboxing, if that turns out to be useful. The intent of the change,
though, is to support other types in the future, such as "extnums".

The output `raco decompile' no longer includes `#%in', `#%flonum',
etc., annotations, which are mostly obvious and difficult to
keep in sync with the implementation. A local-binding name now
reflects a known type, however.

The change includes a bug repair for he bytecode compiler that
is independent of the generalization (i.e., the new test case
triggered the old problem using flonums).
2012-11-14 19:37:01 -07:00
Matthew Flatt
5400b41bce add `unsafe-cons-pair'
Also, make `list?' more optimistic about checking is  the "is list?"
flag on a pair.
2012-11-14 19:17:42 -07:00
Kevin Tew
06bc6d7883 Places documentation clarification 2012-11-13 10:21:52 -07:00
Kevin Tew
d269817a60 typo fixes 2012-11-13 10:11:50 -07:00
Danny Yoo
48683c4782 Add comment about procedure-rename in inferred value names.\nSuggested by Jos Koot. 2012-11-12 09:55:46 -07:00
Matthew Flatt
06ffb74d66 compiler/cm-accomplice: add `register-external-module'
The new function allows declaration of a module dependency, as
opposed to a mere file dependency. Misuse of this function opens
the door to cyclic compilation dependencies, so we have to check
for that in `compiler/cm'.
2012-11-11 09:38:16 -07:00
Matthew Flatt
50af874a7a document `define-runtime-path' limitation
Also, log a warning when it is used in a position where it
doesn't work rght with the executable creator. I didn't make
this case an error, because `define-runtime-path' can still
work in that case as long as no standalone executable needs
to be created.
2012-11-11 09:38:16 -07:00
Matthew Flatt
4ca7e6bc77 ffi/unsafe: fixes related to `define-cstruct' and properties
Fix the binding context for property and property-value
expressions. Propagate wrappers (and therefore properties)
to cstruct subtypes.
2012-11-11 09:38:15 -07:00
Claire Alvis
2f426943f0 Implementation of #:defaults keyword for define-generics 2012-11-09 20:14:56 -05:00
Matthew Flatt
7b04571fac racket/gui: add `get-current-mouse-state' 2012-11-07 14:37:39 -07:00
Eli Barzilay
672910f27b Lots of bad TAB eliminations.
I started from tabs that are not on the beginning of lines, and in
several places I did further cleanings.

If you're worried about knowing who wrote some code, for example, if you
get to this commit in "git blame", then note that you can use the "-w"
flag in many git commands to ignore whitespaces.  For example, to see
per-line authors, use "git blame -w <file>".  Another example: to see
the (*much* smaller) non-whitespace changes in this (or any other)
commit, use "git log -p -w -1 <sha1>".
2012-11-07 11:22:20 -05:00
Asumu Takikawa
5f74f120c8 Add examples for the rest of built-in pict constructors 2012-11-06 14:09:34 -05:00
Eli Barzilay
14d8c8b5a5 Newlines at EOFs. 2012-11-06 14:07:15 -05:00
Robby Findler
f311676096 clarify the way the undoable? flag in begin-edit-sequence works 2012-11-06 09:46:17 -06:00
Danny Yoo
0fa78a8cee documentation: removing the korean characters out of the example. Was breaking the build at LaTeX generation time. 2012-11-04 18:20:54 -07:00
Matthew Flatt
0c82f54912 racket/gui: add delete' to choice%' and `list-control<%>'
Closes PR 13230
2012-11-04 08:25:43 -07:00
Robby Findler
5768009e3b Revise the language dialog to emphasize the teaching
languages and the 'in the source' language at the expense
of all other dialog-based languages
2012-11-03 13:54:48 -05:00
Asumu Takikawa
27aa999446 Fix docs on continuation barriers
Closes PR 13085
2012-11-02 18:30:47 -04:00
Asumu Takikawa
4948ca0863 Fix typo
Closes PR 13158
2012-11-02 18:17:38 -04:00
Matthew Flatt
a830f77403 scribble: more control over version formatting
Add "Version" in front of a version name via `.version:before' or
`.versionNoNav:before' and `\SVersionBefore', so that they can
be configured through overriding CSS or Latex macro declarations.

Also, improve the documentation for how the `#:version' argument
of `title' is propagated to a `part' style property.

Closes PR 13227
2012-11-02 07:45:57 -06:00
Danny Yoo
dcf4d8b040 adding close-eval at the end of scribble files that have a toplevel evaluator 2012-11-01 15:32:53 -06:00
Danny Yoo
354a71b080 documentation: adding examples for string input. 2012-11-01 14:32:12 -06:00
Vincent St-Amour
ee97c08e0a Replace #lang scheme deprecation notice with a pointer to #lang racket. 2012-11-01 12:15:26 -04:00