AutoComplete HeidiSQL Without Ctrl+Space and Dot
isn't against HCI (Human Computer Interactions) usability Rules. You should allow auto complete without Ctrl+Space.
I have read your previous Articles to press dot to bring up autocomplete. That's good for table.column etc and but not for MySQL keywords. No doubt, HeidiSQL is the best DB Client and should be even better...
Thumbs up for you.
Currently auto list keep showing even no match and bad thing is it keep displaying even i lost focus to whole heidisql... see this screenshot http://prntscr.com/643azt
You should give an option to enable/disable to show auto list without ctrl+space for users who need to write long procedures like me. or even better to show button on toolbar like http://prntscr.com/643bon to instantly enable/disable.
I hope i have convinced you now :)
An additional button in the myriad of other buttons is not an option, especially for newbies.
Please give more arguments here, why the proposal should be displayed without any keyboard interaction.
suppose i want to write this short procedure...
CREATE PROCEDURE build_email_list (INOUT email_list varchar(4000))
DECLARE v_finished INTEGER DEFAULT 0;
DECLARE v_email varchar(100) DEFAULT "";
-- declare cursor for employee email
DEClARE email_cursor CURSOR FOR
SELECT email FROM employees;
-- declare NOT FOUND handler
DECLARE CONTINUE HANDLER
FOR NOT FOUND SET v_finished = 1;
FETCH email_cursor INTO v_email;
IF v_finished = 1 THEN
-- build email list
SET email_list = CONCAT(v_email,";",email_list);
END LOOP get_email;
Now there are many of keywords in this procedures. To display proposal against each keyword using ctrl+space is really time consuming. Suppose i want to write "CLOSE", what is short way here... C+CTRL&space+l+o+enter how many keys i pressed to complete "ClOSE" from proposal are 6, so that's mean we are not getting any advantage from auto complete list. instead we should simple write CLOSE which is 5 key press.
Now if do it without CTRL+space... how only need to Press clo+enter, so 4 key pressed.
Auto Complete is introduced to reduce key press effort and if we are not getting advantage of it, there is no use of it.
But it would be great if the search condition for searching the keywords would be "contains" instead of "starts with". This is because very often there are some prefixes used in the table or column names.
Such behavior of autocomplete is the only reason why HeidiSQL isn't favorite IDE. It's better then in Mysql Workbench still, but not as good as it may be. As others had pointed out, writing big queries and procedures is pain in the neck without immediate autocomplete. For example if you have tables HeidiSQL_functions and HeidiSQL_procedures in query you normally type HF or HP and hit enter. But in HeidiSQL if you type HF you get nothing in autocomplete suggestions. So you need to type first several letters and then Ctrl+Space and then scroll. Fast and intuitive autocomplete may affect speed and resources usage maybe but let users decide whether they want to enable this feature or not.
HeidiSql is the best sql client, thanks for developing it. It has only a defect but a big one, the autocomplete feature should work like all text editors with autocomplete of world, i.e: when you write the autocomplete should popup (without clicking any button) and the completion should be inserted only when a key is pressed with a key ( possibly configurable, usually TAB or ENTER ). Please fix this, is the only reason why i'm searching an alternative to Heidi.
Please login to leave a reply, or register at first.