View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0012291||Lazarus||IDE||public||2008-10-05 10:44||2009-10-23 00:40|
|Reporter||Jonas Maebe||Assigned To||Paul Ishenin|
|Product Version||0.9.27 (SVN)|
|Target Version||1.0.0||Fixed in Version||0.9.27 (SVN)|
|Summary||0012291: There is no menu item for the "Complete Identifier" functionality|
|Description||Lazarus revision 16874, FPC 2.2.2, Mac OS X 10.5.4|
There is no menu item for the "Complete Identifier" functionality. I first noticed that it existed in Environment -> Edit Options -> Code Tools, but didn't see how to activate it on demand. Then I went to Environment -> CodeTools Options (it should always be written either as "Code Tools" or "CodeTools"), where there again are some options about Identifier Completion in the last tab, but nothing about how to activate it.
I went to the key mappings, but couldn't find it there either. I finally searched the wiki using google and found that it was ctrl-space. Then I did a "Find key combination" in the the key mappings dialog box, searched for ctrl-space and noticed that I apparently overlooked the "CodeTools commands" section earlier on.
apart from from basic cursor navigation and text selection commands (skip word, page up, select current line etc), all functionality should be available somehow via a menu so that people can easily find it by going through all menu items (and you can search all menu items of an application using full text search under the Help menu on Mac OS X 10.5 and later).
|Tags||No tags attached.|
|Fixed in Revision|
||This menu item is accessible via source editor popup menu. Refactoring -> Complete code.|
At least on Mac OS X it is considered bad interface design to make some options only available via contextual menus. The user should always be able to find all application functionality by going through the regular menus (the "Help" menu also allows you to textually search the regular menus for commands under Mac OS X 10.5, which obviously does not work for contextual menus).
See http://developer.apple.com/documentation/userexperience/Conceptual/AppleHIGuidelines/XHIGMenus/XHIGMenus.html :
"Always ensure that contextual menu items are also available as menu commands. A contextual menu is hidden by default and a user might not know it exists, so it should never be the only way to access a command. In particular, you should not use a contextual menu as the only way to access an advanced or power-user feature."
I personally also think it is not good interface design to hide certain commands until you start right-clicking everywhere, but if you disagree I won't reopen this bug again.
||The main menu also has this item :) Click Edit and then Complete code. Although maybe it was added after your bug report.|
Complete code <> Identifier completion
Complete code is available via menu item and Ctrl+Shift+C.
Identifier completion has no menu item and uses Ctrl+Space.
AFAIK Ctrl+Space is the common short cut for completion in many graphical editors. Many students know this short cut but not the "common" navigation keys (e.g. jump to next word).
IMO the IDE needs a list of common short cuts that has no menu item.
IMHO adding menu items for them makes no sense, because:
They are used very frequently, so they should be in a top menu item. But afaik once a programmer knows the short cut he won't use the menu item any more.
||Ow.. sorry. I thought of code completion all this time.|
|2008-10-05 10:44||Jonas Maebe||New Issue|
|2008-10-05 10:44||Jonas Maebe||Widgetset||=> Carbon|
|2008-10-06 13:22||Vincent Snijders||LazTarget||=> 1.0|
|2008-10-06 13:22||Vincent Snijders||Status||new => acknowledged|
|2008-10-06 13:22||Vincent Snijders||Target Version||=> 1.0.0|
|2009-06-17 09:07||Paul Ishenin||Status||acknowledged => resolved|
|2009-06-17 09:07||Paul Ishenin||Fixed in Version||=> 0.9.27 (SVN)|
|2009-06-17 09:07||Paul Ishenin||Resolution||open => no change required|
|2009-06-17 09:07||Paul Ishenin||Assigned To||=> Paul Ishenin|
|2009-06-17 09:07||Paul Ishenin||Note Added: 0028581|
|2009-06-17 10:12||Jonas Maebe||Status||resolved => assigned|
|2009-06-17 10:12||Jonas Maebe||Resolution||no change required => reopened|
|2009-06-17 10:12||Jonas Maebe||Note Added: 0028584|
|2009-06-18 02:44||Paul Ishenin||Status||assigned => resolved|
|2009-06-18 02:44||Paul Ishenin||Resolution||reopened => fixed|
|2009-06-18 02:44||Paul Ishenin||Note Added: 0028595|
|2009-06-18 02:45||Paul Ishenin||File Added: menu.PNG|
|2009-06-18 10:36||Mattias Gaertner||Note Added: 0028600|
|2009-06-18 13:11||Paul Ishenin||Note Added: 0028607|
|2009-10-23 00:40||Marc Weustink||Status||resolved => closed|