SlickEdit Community
SlickEdit Product Discussion => SlickEdit® => Topic started by: evanratt on March 25, 2009, 08:34:26 PM
-
If I start up SE and try to run complete-next-match (or complete-prev-match) without running complete-next or complete-prev, I get the following stack trace. However, if I run complete-next or complete-prev, then undo back past that command, then run complete-next-match or complete-prev-match, I get a message in the status bar: "This command must be used after a word completion command.", which seems like the correct behavior.
Stack:
Invalid argument
stdprocs.ex 13959 _escape_re_chars(<empty>,) p_window_id: 47 p_object: OI_EDITOR p_name:
compword.ex 8219 complete_next_match() p_window_id: 47 p_object: OI_EDITOR p_name:
SlickEdit Version 14.0.0.5
Serial number: WB824242
Licensed number of users: Single user
License file: C:\Documents and Settings\All Users\Application Data\slickedit\14\slickedit.lic
Build Date: March 19, 2009
Emulation: Epsilon
OS: Windows XP
Version: 5.01.2600 Service Pack 2
Memory: 34% Load, 719MB/2094MB Physical, 142MB/2097MB Virtual
Installation Directory: C:\Program Files\SlickEdit 2009\ (non-removable drive,NTFS,380472MB free)
Configuration Directory: C:\Documents and Settings\evan_r\My Documents\My SlickEdit Config\14.0.0\ (non-removable drive,NTFS,380472MB free)
-
Good catch, we'll fix this in 14.0.1.
-
Actually, I have a question for you on this one.
If you are hitting complete-next-match before doing a complete-next or complete-prev, would you want it to:
(1) fail saying you have to do complete-next first (this was the original behavior)
(2) just call complete-next
(3) do a complete next, looking for an exact match of the symbol under the cursor.
(this one sounds the most logical to me).
-
To be totally honest, it's not a function I generally use, so I'm probably not the best person to ask :) I was trying to do a complete-next, which is bound to Ctrl-Shift-. on my machine, and accidentally hit Ctrl-Shift-/, instead, which is bound to complete-next-match and caused the stack trace.
With that said, I think you're right, option 3 sounds pretty reasonable.
-Evan
-
Uh oh, just got another stack when I was messing around, seeing how complete-next-match behaves. This time, I definitely called complete-prev first, but I was doing a bunch of complete-prev, complete-next, and complete-next-match calls in succession, so I can't say exactly what the sequence was. Here's the stack that came up:
Invalid argument
compword.ex 1361 compword:complete_nextprev(
1: [0]._typename()=Match
1: [0].word=VectorSet
1: [0].line-to-goto=205
1: [0].col=18
1: [1]._typename()=Match
1: [1].word=VectorScale
1: [1].line-to-goto=210
1: [1].col=20
1: [3]._typename()=Match
1: [3].word=<empty>
1: [3].line-to-goto=(null)
1: [3].col=(null)
2: 1
3:
p_window_id: 47
p_object: OI_EDITOR
p_name:
compword.ex 1719 complete_next() p_window_id: 47 p_object: OI_EDITOR p_name:
cua.ex 4965 _on_select() p_window_id: 47 p_object: OI_EDITOR p_name:
-
Yeah, I had already discovered that one too.
-
Just for clarification, the aforementioned fix did not make it into 14.0.1, but it will be in the next patch (14.0.2). Thanks for your patience.