[ESS] Help configuring auto-complete
Vitalie Spinu
spinuvit at gmail.com
Tue May 15 20:01:23 CEST 2012
>>>> Ista Zahn <istazahn at gmail.com>
>>>> on Tue, 15 May 2012 13:12:09 -0400 wrote:
> Hi Vitalie,
> Great, thank you for the comprehensive reply. For now I'm going to
> disable argument auto-completion using the second method you
> described.
Third method might be better, as you will have arguments completion.
> More generally, I like having auto-complete menus popping up all over
> the place -- for me it really is just this situation (argument
> completion menu triggered by ",") where it gets in my way.
You can place this into ess-mode-hook and ess-post-run-hook:
(delete 'ess-smart-comma ac-trigger-commands)
Then comma wont trigger the ac menu.
Vitalie.
> On Tue, May 15, 2012 at 11:40 AM, Vitalie Spinu <spinuvit at gmail.com> wrote:
>>
>>>>>> Ista Zahn <istazahn at gmail.com>
>>>>>> on Tue, 15 May 2012 09:56:42 -0400 wrote:
>>
>> > c(x = 1,
>>
>> > with the cursor immediately after the comma, the auto-complete menu
>> > pops up offering to complete "recursive=".
>> > I would really appreciate it if you can tell me how to disable just
>> > this specific feature.
>>
>> What feature precisely? disable it inside c() or disable argument
>> completion altogether?
>>
>> > The manual suggests that I should look at the docstring of
>> > ac-use-auto-complete, but I can't seem to find it.
>>
>> it should be ess-use-auto-complete, it's a type in new features
>> section. Thanks.
>>
>>
>>
>> On a general note, I am still not clear what default ac set-up is the
>> most meaningful. And user input is highly valuable here. I agree that
>> the current one is too intrusive. Though auto-popup works fine in elisp
>> buffers it is pretty annoying in R buffers because most of the names are
>> short.
>>
>> There are three general ways that the user can go about it.
>>
>> First, is to deactivate ac auto pop-up by setting ac-auto-show-menu to
>> nil and make TAB to trigger the menu:
>>
>> (ac-set-trigger-key "TAB").
>>
>> Second, is to disable auto-completion of arguments. There are 2 basic R
>> sources `ac-source-R-objects' and `ac-source-R-args'. The third source
>> ac-source-R combines conveniently the previous 2 and is activated by
>> default. Add only one of them to ac-sources variable:
>>
>> (defun my-ac-ess-config ()
>> (setq ac-souces
>> '(ac-source-R-objects ac-source-filename ac-source-words-in-buffer)))
>>
>> (add-hook 'ess-mode-hook 'my-ac-ess-config)
>> (add-hook 'ess-post-run-hook 'my-ac-ess-config)
>>
>> Third, you can look at definitions of these souces and redefine
>> them. Particularly you can configure the prefix parameter to be 1 or
>> even 2 (instead of the default 0):
>>
>> (setq ac-source-R
>> '((prefix . ess-ac-start)
>> (requires . 2)
>> (candidates . ess-ac-candidates)
>> (document . ess-ac-help)))
>>
>> But then you won't have auto completion of arguments at "(" and
>> ",". Given the current eldoc functionality I think this last option
>> should actually be the default.
>>
>> Best,
>> Vitalie.
More information about the ESS-help
mailing list