racket/collects/framework/private
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
..
application.rkt ".ss" -> ".rkt" scan done. 2011-07-02 10:37:53 -04:00
aspell.rkt fix a coloring bug 2012-11-24 14:05:45 -06:00
autocomplete.rkt Big newline at EOF scan. 2012-02-29 00:28:11 -05:00
autosave.rkt some long overdue Rackety: renaming the 'scheme:' exports of the framework to 'racket:' 2011-11-30 06:45:50 -06:00
bday.rkt Redo text sculpturing. 2012-07-06 16:07:30 -04:00
canvas.rkt change the way that the delegate text is specified, using 2012-11-16 14:33:17 -06:00
collapsed-snipclass-helpers.rkt fix the collapsed snipclass so that it cooperates with the wxme library and 2011-09-13 14:58:39 -05:00
color-model.rkt removed useless requires 2011-09-27 19:28:44 -06:00
color-prefs.rkt add preference settings so that the misspelled words color 2012-10-14 22:27:50 -05:00
color.rkt automatic parenthesis mode improvements 2012-11-25 21:57:52 -06:00
comment-box.rkt some long overdue Rackety: renaming the 'scheme:' exports of the framework to 'racket:' 2011-11-30 06:45:50 -06:00
coroutine.rkt improve the interactivity of DrRacket's search 2012-11-25 20:58:13 -06:00
decode.rkt
decorated-editor-snip.rkt removed useless requires 2011-09-27 19:28:44 -06:00
early-init.rkt ".ss" -> ".rkt" scan done. 2011-07-02 10:37:53 -04:00
editor.rkt improve the interactivity of DrRacket's search 2012-11-25 20:58:13 -06:00
encode.rkt removed useless requires 2011-09-27 19:28:44 -06:00
exit.rkt ".ss" -> ".rkt" scan done. 2011-07-02 10:37:53 -04:00
finder.rkt removed useless requires 2011-09-27 19:28:44 -06:00
focus-table.rkt removed useless requires 2011-09-27 19:28:44 -06:00
frame.rkt improve the interactivity of DrRacket's search 2012-11-25 20:58:13 -06:00
gen-standard-menus.rkt Improve code generation in the framework collection. 2011-09-30 10:51:28 -04:00
group.rkt adjust the windows menu so that it doesn't rely on 2012-08-16 19:16:57 -05:00
handler.rkt removed useless requires 2011-09-27 19:28:44 -06:00
icon.rkt removed useless requires 2011-09-27 19:28:44 -06:00
keymap.rkt make right-clicking on non-text offer copy and cut in the 2012-11-22 17:33:34 -06:00
logging-timer.rkt add some first-cut logging information to drracket 2012-10-26 21:49:44 -05:00
main.rkt added spelling dictionary support 2012-11-22 19:24:22 -06:00
mapdesc.rkt
menu.rkt ".ss" -> ".rkt" scan done. 2011-07-02 10:37:53 -04:00
mode.rkt removed useless requires 2011-09-27 19:28:44 -06:00
number-snip.rkt adjust number-snip% so that it subscribes to the file/convertible 2011-11-20 16:38:17 -06:00
panel.rkt make right-click in the space between the definitions and 2011-10-04 16:47:10 -05:00
pasteboard.rkt ".ss" -> ".rkt" scan done. 2011-07-02 10:37:53 -04:00
path-utils.rkt removed useless requires 2011-09-27 19:28:44 -06:00
preferences.rkt adjust the print-to-ps preference in DrRacket so that you can also 2012-09-17 10:47:22 -05:00
racket.rkt automatic parenthesis mode improvements 2012-11-25 21:57:52 -06:00
scheme.rkt some long overdue Rackety: renaming the 'scheme:' exports of the framework to 'racket:' 2011-11-30 06:45:50 -06:00
search.rkt removed useless requires 2011-09-27 19:28:44 -06:00
sig.rkt add preference settings so that the misspelled words color 2012-10-14 22:27:50 -05:00
standard-menus-items.rkt control-alt for menu selections probably shouldn't be 2012-08-21 08:16:39 -05:00
text.rkt improve the interactivity of DrRacket's search 2012-11-25 20:58:13 -06:00
version.rkt removed useless requires 2011-09-27 19:28:44 -06:00