Sublime Forum

20091114 Beta

#1

20091114 is out now, with a fix for the selection rendering regression in the last beta.

I’ve also given the find panel a make-over, and combined it with the incremental find panel. There is no longer a stand alone incremental find panel. The key bindings within the find panel have changed as part of this, they’re now:

  • Enter: Go to next match
  • Shift+Enter: Go to prev match
  • Alt+Enter: Select all matches
  • Ctrl+F: Hide find panel
  • Escape: Hide find panel
  • F3: Go to next match, and move focus to buffer
  • Ctrl+F3: Go to prev match, and move focus to buffer

For example, a common workflow in previous versions was Ctrl+I,text, enter, to select the next occurance of “text”. To do the same thing now, it’s Ctrl+F,text,escape or Ctrl+F,text,Ctrl+F.

I’m keen for feedback on the new find panel - its current behaviour isn’t final.

0 Likes

#2

Wow, great work again, Jon!!!

Superb!

Regards,
Jelle

0 Likes

#3

Nice, but Ctrl+F crashes sublime if no file is opened. :wink:

0 Likes

#4

Thanks - will fix for the next beta

0 Likes

#5

that was fast, thanks.

it’s much better now (and matches don’t get selected just highlighted (yay). any chance the highlight-color/outline can be configured (no priority, i kinda like it the way it is)?

**i just noticed that we got realtime highlighting, great :exclamation: (and syntax highlighting for regexp in the search panel…) **

howevever it introduced quite a few bugs :wink::

  1. without any open buffer, ctrl+f crashes sublime (already mentioned by hannes)
  2. in an empty buffer, the same happens
0 Likes

#6

If I have an open file and hit Ctrl+F, then hit Esc (as to dismiss the dialogue), Sublime Text crashes. Ctrl+H I can dismiss with Esc without any problems.

[two minutes pass] … Did some more testing and found that the text displayed in the Ctrl+F dialogue needs to have a dash (-) in it for the crash to happen on Esc. It crashes whether regexp find is enabled or not.

[five minutes pass]… More testing, also happens if the find text contains: &, !, @, #, $, %, ^, * (see note), (, ), _, + (see note), = … okay that’s probably enough :stuck_out_tongue:

note: for * or +, included by itself when regexp matching is enabled, it becomes part of the pattern and it does not crash when dismissed. But escaping it (*) in regexp mode still causes the crash on dismiss.

0 Likes

#7

Crashes aren’t much fun, so I’ve just released 20091115 which should fix the above issues. Let’s all pretend 20091114 never happened :slight_smile:

0 Likes

#8

:astonished: You are releasing tomorrow’s build today!!!

Confirmed crashes fixed here. Cheers!

0 Likes

#9

Luckily, it’s already the 15th here in Sydney, so I won’t have to power on the time machine :slight_smile:

Forgot to mention: Ctrl+Enter in the final panel will insert a newline. The find panel can now be resized to show more lines, if required.

0 Likes

#10

YMMD, literally. :smiley:

0 Likes

#11

New find panel is great! http://forums.disenteria.ru/style_emoticons/default/up.gif

How about multi line in replace panel? http://forums.disenteria.ru/style_emoticons/default/mol.gif

0 Likes

#12

the find panel is really cool!

the multiple line options is also very blessed :smile:

0 Likes

#13

Hm… Wrapping selection with tag+tab now not working (HTML).

For example, select some text, type tag and press tab, should have:

<strong>Some text</strong>

But now have only this:

<strong></strong>

:frowning:

0 Likes

#14

Almost, I’ll expose it properly for the next beta

0 Likes

#15

It’s Alt+Enter now

0 Likes

#16

I am the only one who have this problem? http://forums.disenteria.ru/style_emoticons/default/fingal.gif http://forums.disenteria.ru/style_emoticons/default/upset.gif

0 Likes

#17

[quote=“ilya”]

I am the only one who have this problem? http://forums.disenteria.ru/style_emoticons/default/fingal.gif http://forums.disenteria.ru/style_emoticons/default/upset.gif[/quote]

i can confirm that.

0 Likes

#18

Hi, Jon. I have a few points;

First, I like the new panel. It seems more coherent to collapse them into one. I only ever used incremental search anyway. I also like the visual style of the outlines; it’s nice to see what’s coming. Is it possible to change the colours here? They are a little hard to see with my colour scheme and I’d like to highlight them a little more. The tmTheme files support a customisable ‘selection’ property, like this

		<dict>
			<key>settings</key>
			<dict>
				<key>selection</key>
				<string>#0000dddd</string>
			</dict>
		</dict>

Is there one for these ‘pre-found’ regions?

Second, I’ve got ctrl+i burned into my brain now, though, and it’s the same mapping I use in Visual Studio, so I’m trying to re-establish the the old mappings. I’m almost there, but haven’t found the perfect match yet. For those who want to copy, this seems to be working pretty well for me;

  <binding key="ctrl+i" command="showPanel find"/>
  <binding key="ctrl+i" command="findUnder">
      <context name="isPanelVisible" value="true"/>
  </binding>

Only problem is the ‘isPanelVisible’ context seems a bit broad, and will work if you’ve got, say, the replace panel open. The context

<context name="option" value="isFindWidget"/>

Doesn’t work as I expected, because when you do the find, the focus moves into the main window and I think the isFindWidget option is set to false; this means that hitting ctrl+i over and over does this;

find window/next match/find window/next match

rather than

find window/next match/next match/next match

Third, I’m guessing the find/replace panel is going to be updated to be incremental too? The ability to see what’s going to get found/replaced would be really nice.

Lastly, (I promise,) is the question of what appears in the panel when you open it. The current behaviour seems to be to fill it with the current selection. I don’t know if it’s always been like that, but thinking about it now I wonder if it might be nicer to leave it with whatever it had in there last time. It’s worth noting that when I have a regex in the box (say, ‘l…’) and that happens to have selected the word ‘like’, when I re-open the panel it is now searching for the literal ‘like’ and not my original pattern ‘l…’. This can destroy possibly hard-crafted patterns, so I’d prefer that panel to keep whatever content it had before.

That’ll teach you to ask for feedback.

0 Likes

#19

First up, the easy ones:

  • Colours aren’t configurable, but I’ll change that for the next beta
  • Plan is to give the replace panel a similar makeover, to preview the search results and allow multi-line inputs

re: what slurping up the selected text when opening the find panel, I think you’re right, that’s generally the wrong thing to do. I think having a separate key binding to copy the current selection into the find buffer would be better.

imo, there are a few situations where the find panel behaviour is debatable:

  • What should happen when you press enter? Currently, it goes to the next match, where the incremental find panel closed the panel.
  • What should happen when pressing ctrl+f (or whatever it’s bound to) again when the find panel is already open and focussed? Currently it closes the find panel, where as with the incremental find panel it did a find next.
  • What should happen when it’s initially opened: start empty, start with the selected text, or start with the last text. Currently it uses the selected text; the incremental find panel always started empty.

Changing key bindings alone can’t cover these options properly, so I’ll likely make them explicitly configurable. What the defaults should be is still up in the air though.

0 Likes

#20

I suspect this will be the zen coding plugin, tag+tab will work out of the box with a clean packages directory.

0 Likes