Commit Graph

105 Commits

Author SHA1 Message Date
Eli Barzilay
af6be85ff5 Fix lots of indentation mistakes.
(Found by my ayatollah script...)
2013-03-14 10:55:47 -04:00
Robby Findler
5eddac7482 fix the use of impersonator-ephemerons in the framework preferences library 2013-02-20 21:13:02 -06:00
Robby Findler
e7e64f4006 a better version of deac3fa2b3
This time with test cases, and also without changing the
semantics of unhighlight-range

related to PR 13488
2013-02-05 20:52:35 -06:00
Robby Findler
ab55d43312 give up on the "find the close paren strategy that doesn't
edit the buffer" attempt

In other words, go back to (a rackety version of) the old
implementation of the get-close-paren method
2013-02-03 11:22:46 -06:00
Robby Findler
8aa3e1d473 another close-paren insertion repair
(this one causes runtime errors, not
bad behavior)
2013-02-02 09:10:17 -06:00
Robby Findler
8aadc03719 more close paren adjustment repairs 2013-01-31 21:11:11 -06:00
Robby Findler
219f9dc358 fix close paren correction code 2013-01-31 15:07:20 -06:00
Robby Findler
e43583c444 make sure the framework tests run with the proper environment 2013-01-26 07:49:14 -06:00
Robby Findler
6a69da76e2 adjust ascii-box => unicode-box algorithm so that
it only looks left and right at hyphens and only
up and down at pipes, etc. This better handles the
case where you have something like this:

  +--------------+
  | (<= a-x b-y) |
  +--------------+

Before this commit, it would have adjusted the hypens
inside the identifiers
2012-12-24 13:49:32 -06:00
Robby Findler
042bbbefe7 add an ASCII art rectangle => unicode rectangle keybinding to drracket 2012-12-24 11:38:54 -06:00
Nadeem Abdul Hamid
c0a412ed0e fix close parens behavior in interactions and comments 2012-12-04 20:39:10 -06: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
Robby Findler
975426f00c fix group-test
merge to release branch, please
2012-10-17 20:19:15 -05:00
Eli Barzilay
17090fca4f A bunch of fprintf' -> eprintf' conversions (and a few related things). 2012-05-06 12:06:00 -04:00
Eli Barzilay
43ef402274 Don't compile test files.
(Didn't touch the tiny "test-docs-complete" tests.)
2012-03-13 10:29:13 -04:00
Robby Findler
95ac3c86f7 fixed bug in the way aug:keymap extracts the names
now it should return only the canonical names of the keybindings
(instead of potentially returning both the canonical and
non-canonicalized names)
2012-01-08 07:07:56 -06:00
Robby Findler
458e2c2282 some long overdue Rackety: renaming the 'scheme:' exports of the framework to 'racket:' 2011-11-30 06:45:50 -06:00
Robby Findler
6ea6483221 adjust number-snip% so that it subscribes to the file/convertible
protocol for 'png-bytes and 'text
2011-11-20 16:38:17 -06:00
Robby Findler
b726209dc5 fix the interaction between the automatic insertion of matching parens
and the magic fixup of opening parentheses.

This commit moves the automatic insertion of matching parens to the
scheme mode keymap, so it will now take affect in Racket mode editing,
only. Also, Rackety.
2011-11-16 19:36:18 -06:00
Robby Findler
40c68df514 fix the auto-square-bracket thing for with-syntax
closes PR 12096
2011-08-08 19:30:13 -05:00
Eli Barzilay
3157955d40 ".ss" -> ".rkt" scan done. 2011-07-02 10:37:53 -04:00
Eli Barzilay
40124a0619 A long overdue scan to eliminate files without terminating newlines.
(DrRacket should really do that.)
2011-06-28 02:01:41 -04:00
Robby Findler
507b1cd8fd moved the docs-complete library into rackunit
to avoid having a separate, new manual for the
  one library
2011-05-05 16:10:42 -05:00
Robby Findler
d6ef130fd2 cleaned up framework docs 2011-05-01 14:16:04 -05:00
Asumu Takikawa
7eb26c5d26 Added test for get-pos/text method result. 2011-04-29 18:56:36 -04:00
Robby Findler
bb792c977d the tabber incorrectly counted tab chars as spaces when doing indentation;
this meant that if some line were supposed to be indented in the third
  column and you had two tabs and a space on that line, the indenter
  would leave it alone. Now, if it sees tabs in the line anywhere, it just
  decides that the line is not properly indented and re-indents it
  (always using spaces)

Also: started a tabber test suite
2011-04-08 07:48:17 -05:00
Robby Findler
8e94ce49e4 lift the restriction that the text:ports mixin
cannot do io from the eventspace handler thread
and add a test suite for text:ports
2011-02-15 18:10:02 -06:00
Robby Findler
62c961410c adjust the framework test suite so that queue-sexp-to-mred catches and propogates exceptions 2011-02-15 18:10:00 -06:00
Robby Findler
d5c753be88 adjusted printfs to make them a little narrower 2011-02-15 18:09:59 -06:00
David Van Horn
760a58b65d Fixes more spelling errors. 2011-02-04 19:44:13 -07:00
Robby Findler
70e3074baf found another place in the framework test suite where operations weren't happening on the eventspace handler thread 2011-01-17 15:35:35 -06:00
Robby Findler
b8459737f0 disable the trace of all of the messages in the framework tests 2011-01-12 17:32:26 -06:00
Robby Findler
bf031be73e what happened here? 2011-01-07 09:23:51 -06:00
Robby Findler
a32adbe7db make the framework test suite only modify gui objects on the eventspace handler thread 2011-01-07 06:39:27 -06:00
Robby Findler
6f9bcf0001 Rackety 2010-12-31 09:58:54 -06:00
Robby Findler
3dc5bbd0eb moved interactive panel test into its own file 2010-12-31 09:58:53 -06:00
Robby Findler
900d74714e fixed up panel:dragable so that it actually does the right thing now
adjusted the framework test suite so that it runs under windows
closes PR 10880
2010-12-31 09:58:51 -06:00
Casey Klein
bd0ebc7511 Adds auto-completion to LaTeX and TeX inspired keybindings 2010-11-02 22:34:05 -05:00
Eli Barzilay
8e0f8dd39c More "~n" -> "\n" changes 2010-08-26 12:11:00 -04:00
Eli Barzilay
da083f05e8 avoid relying on bash 2010-08-25 17:17:01 -04:00
Robby Findler
5de6ff2ada Adjusts the prompt handling so that it submits expressions that signal
arbitrary read errors, but does not submit those that raise eof errors.
closes PR 11126
2010-08-24 20:06:45 -05:00
John Clements
215c8dc960 best guess on what keystrokes will trigger insert-()-pair under windows & unix. 2010-08-13 11:01:05 -04:00
John Clements
cfe503f1ce updated framework test framework:
- can now test multi-key sequences

- can now use tests with 'escape

- README changed .ss to .rkt

- added test cases for c:c;c:[
2010-08-13 11:01:04 -04:00
Eli Barzilay
fcedc30ee4 Rename "collects/tests/mred" -> ".../gracket".
Some additional mred-related tweaks.
2010-05-17 01:44:27 -04:00
Eli Barzilay
7f6efdc8be A lot of "MrEd" -> "GRacket"s. 2010-05-16 23:46:05 -04:00
Robby Findler
155cc4ac05 fixed the way preference file restoration works in the case that there is no preferences file to start with 2010-05-08 16:22:56 -05:00
Matthew Flatt
e504acb726 use .rktl suffix for files meant to be 'load'ed 2010-05-01 09:58:16 -06:00
Matthew Flatt
28b4043077 rename all files .ss -> .rkt 2010-04-27 16:50:15 -06:00
Robby Findler
3955ef69b4 try to debug new drdr failure
svn: r18329
2010-02-24 21:46:53 +00:00