我想开始在Roslyn中完成代码,但找不到任何简单的示例来说明如何完成代码.
什么是一个很好的例子来完成这个代码,以便我可以获得所有可能的完成项目(AKA智能感知或CTRL +空间完成)caretIndex?
static void Main(string[] args)
{
var code = @"
using System;
public class Test
{
public void TestMethod()
{
var now = DateTime.Now;
now.
}
}";
Console.WriteLine(code);
var st = SyntaxTree.ParseText(code);
var caretIndex = code.IndexOf("now.") + 4;
//how to get possible code completions at caret index? (Intellisense)
}
Run Code Online (Sandbox Code Playgroud) 我在Xcode Code Sense首选项中取消选中"在弹出列表中显示参数"和"为完成插入参数占位符",但是当我在编辑器中键入"else"(例如)时,Xcode仍然以预先格式化转储"别的"块.
有没有办法完全禁用此功能,或者(更好)修改Xcode插入的块?默认的Xcode"else"块与我的编码风格不匹配,因此占位符实际上妨碍了我的工作效率而不是帮助.
更新:我刚刚发现这个问题描述了如何更改默认缩进和用于代码完成的空格,以便回答我问题的后半部分.
更新#2:将"自动建议"设置为"从不",由outis建议有效地完全禁用代码完成.我想我正在寻找的是一种禁用特定代码完成的方法(比如"else"块),同时保留变量和方法名称的所有常用完成.
最近我发现可以在<textarea>使用JavaScript中进行语法突出显示.
是否有支持自动完成的开源库?我想为HTML/CSS模板制作一个简单的在线编辑器.
优选地,可以扩展完成,因此我可以添加自定义规则.
我正在使用Python 3.4.
当我使用IDLE并开始输入时,例如,
my_main_folder = "C:/Us"
在编辑器窗口中,然后按Ctrl + Space,IDLE为我提供了所有子文件夹C:,如果我按下Tab,字符串就完成了"C:/Users".
这意味着IDLE(或Python Shell)能够将字符串识别为路径.
如何让PyCharm(社区版)做到这一点?
这对于有冲突的函数会很方便,更普遍的是系统地包含用于调试目的的包或将代码传达给其他人。必须手动写下包非常耗时,并且可以通过代码完成来避免。
这个问题有两部分:
1) 如何在完成弹出菜单中包含屏蔽功能?
例子:
x magrittr::set_names() masks purrr::set_names()
set_n在文本编辑器中键入和 tab 时,我们只能magrittr::set_names()在完成菜单中看到未屏蔽的功能。我希望能够从菜单中选择我需要的那个。
2)如何让代码完成来写下两者package::function()?
例子:
因为在文本编辑器中进行magrittr::set_names()两次 Tab 键时set_n,代码完成仅记下函数set_names(). 我想完成写下完整的名称magrittr::set_names()。
我已经使用omniCppComplete + ctags一段时间了,并希望进一步改进代码完成.
根据这里的建议[ 1 ],gccsense和clang_complete似乎是替代品.但是,我不确定哪一个更好.他们的表现有什么想法吗?
谢谢!
更新:在我尝试clang_complete之后,我发现完成速度非常不可接受.然后我尝试使用libclang.dylib,它加速了很多,但仍然让人觉得滞后.我想我现在应该坚持使用ctags.
在处理具有私有或受保护成员变量的类时,如何设置代码完成以在Zend Studio(或任何基于Eclipse的IDE)上工作,而不使用一堆Getter或将成员变量设置为public.
例如:
class Dog {
protected $bark = 'woof!';
public function __get($key) {
if (isset($this->$key)) {
return $this->$key;
}
}
}
$Dog = new Dog();
echo $Dog->bark; // <-- I want the IDE to "know" that bark is a property of Dog.
Run Code Online (Sandbox Code Playgroud) 目前已经CUDA识别键CUDA C/C++函数,例如cudaMalloc,cudaFree,cudaEventCreate等.
它还识别某些类型,如dim3和cudaEvent_t.
但是,它不识别其他功能和类型,例如纹理模板,__syncthreads功能或atomicCAS功能.
一切都编译得很好,但我已经厌倦了在整个地方看到红色下划线,我想看到当你输入任何可识别的功能时显示的示例参数.
如何让VS获得这些功能?
intellisense cuda keyword visual-studio-2010 code-completion
我正在使用PyCharm编写一些python代码,并注意到我经常遇到以下问题:
我写了一行像这样的代码
for item in myList:
Run Code Online (Sandbox Code Playgroud)
后来,我意识到我也想要索引item,所以我尝试将这一行转换为:
for i,item in enumerate(myList):
Run Code Online (Sandbox Code Playgroud)
为了将第一行转换为第二行,我将光标放在左边item并输入i,.然后,我把光标放在左边myList并输入enu; 到这个时候,代码完成者建议我可能想要输入enumerate,这正是我所追求的行为.当我点击tab执行建议时enumerate,我注意到我的线路变成了
for i,item in enumerate:
Run Code Online (Sandbox Code Playgroud)
在myList已被覆盖!
我期望的行为是这样的:
for i,item in enumerate(myList):
Run Code Online (Sandbox Code Playgroud)
紧跟在光标移动到了右侧myList或:.
有什么方法可以让Pycharm按照我的期望行事吗?
万一重要,我的开发环境是Mac OSX 10.7.5(Lion)
许多python IDE都提供代码完成(代码洞察),PyCharm是其中一个IDE.但是,在我看来,提供的代码完成非常有限.让我举个例子说清楚:
import numpy as np
m = np.random.random((3,5))
m.
Run Code Online (Sandbox Code Playgroud)
在'm'之后击中CTRL空间.不会给我任何代码完成, - 无论我多么难以点击它;)..我想这是因为IDE必须进行类型推断以了解变量'm'的类型,并且这不是'在动态编程语言领域中是微不足道的.
现在,PyCharm带有一个名为"收集代码洞察的运行时类型信息"的设置,这听起来确实很有希望.但是,它似乎没有解决上面提到的问题..我仍然无法在变量'm'上获得代码完成.
到目前为止,我只找到了一种在PyCharm中获取变量代码完成的方法:
import numpy as np
m = np.random.random((3,5))
''':type : np.matrix'''
m.
Run Code Online (Sandbox Code Playgroud)
在这个例子中,我可以在'm.'之后按CTRL空格时获得代码完成,这是因为我通过使用docstring指定变量的类型来帮助IDE.但是,我对这种获取代码完成的方式不满意,因为它为所有这些文档字符串添加了不必要的冗长(更不用说所有额外的键盘输入了)...
现在,如果我们在linux-terminal中启动IPython并输入第一段代码,我们将能够一直获得代码完成,即使是变量'm'.(通过按TAB而不是CTRL空格来实现IPython中的代码完成)
我对IPython没有多少经验,但我相信我听说过IPython不断在循环中执行代码或类似的东西......
我认为应该可以使用IPython来实现PyCharm编辑器中所有变量的REAL代码完成....
有没有办法设置PyCharm使用IPython进行代码完成?
请注意,我不满意将代码发送到终端窗口/控制台,或类似的东西,我想在PyCharm的编辑器中完成代码...
我在Pycharm Ubuntu中看过像这样的问题添加ipython作为解释器,但它似乎是在控制台中使用IPython,而不是在编辑器中......在IDE中也有很多关于代码完成的问题,但他们似乎都有与PyCharm相同的令人不满意的代码完成程度......
code-completion ×10
pycharm ×3
python ×2
python-3.x ×2
c# ×1
clang ×1
cuda ×1
eclipse ×1
intellisense ×1
ipython ×1
javascript ×1
keyword ×1
php ×1
r ×1
roslyn ×1
rstudio ×1
settings ×1
textarea ×1
vim ×1
xcode ×1
zend-studio ×1