我正在为C#开发智能感知或代码完成功能。
到目前为止,这么好。现在我已基本完成工作了。有两种方法可以请求完成。第一个循环通过所有潜在的匹配。第二个是比赛的弹出菜单。它适用于类型:
alt text http://i44.tinypic.com/afbl2o.jpg
还有本地变量和实例变量:
alt text http://i40.tinypic.com/2pqul2u.jpg
我正面临着x-popup-menu的两个问题:
附录:x-popup-menu的文档
x-popup-menu是“C源代码”中的内置函数。 (x-popup-menu POSITION MENU)
弹出一副卡片菜单并返回用户的选择。 PO SITION是一个位置规范。这是一个鼠标按钮 事件或列表((XOFFSET YOFFSET)WINDOW)其中XOFFSET和YOFFSET 是从WINDOW框架的左上角开始的像素位置 (WINDOW可以是框架对象而不是窗口)。 这可以控制 第一行窗口中第一行中心的位置 菜单,而不是整个菜单的左上角。如果POSITION为t,则为 表示使用当前鼠标位置。
答案 0 :(得分:4)
有些人喜欢Emacs,因为它没有提供弹出窗口(参见例如this blog entry)。呈现可能的完成列表的更“狡猾”的方式是将它们显示在拆分缓冲区中。这样你就可以自动避免上述所有问题(屏幕空间和滚动),并可能吸引更多顽固的Emacs用户。
但那是纯粹的推测: - )
答案 1 :(得分:3)
您可以将自动完成后端基于company或autocomplete,以便为您处理建议。