Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
易于扩展的C语言IDE_C_Linux_Ide_Extensibility - Fatal编程技术网

易于扩展的C语言IDE

易于扩展的C语言IDE,c,linux,ide,extensibility,C,Linux,Ide,Extensibility,我想要一个简单的IDE/编辑器,用于Linux中的C,我可以轻松地添加特性。例如:我想为编辑器添加右键单击菜单项和相关操作。它应该易于扩展和添加任何需要的功能。我尝试过EclipseCDT,但对于我想要做的小修改,需要做很多学习(我的意思是了解eclipse插件体系结构和CDT扩展点等) 谢谢, Sachin我个人使用Code::Blocks,根据他们的网站,它也有一个Linux版本。 我不知道它是否具有很强的可扩展性,但它具有IDE所期望的所有特性 QuantumPete看看——它非常简单,但

我想要一个简单的IDE/编辑器,用于Linux中的C,我可以轻松地添加特性。例如:我想为编辑器添加右键单击菜单项和相关操作。它应该易于扩展和添加任何需要的功能。我尝试过EclipseCDT,但对于我想要做的小修改,需要做很多学习(我的意思是了解eclipse插件体系结构和CDT扩展点等)

谢谢,
Sachin

我个人使用Code::Blocks,根据他们的网站,它也有一个Linux版本。 我不知道它是否具有很强的可扩展性,但它具有IDE所期望的所有特性

QuantumPete

看看——它非常简单,但具有针对qt应用程序的ide/editor功能。查看源文件5分钟后,我可以添加右键单击菜单项:)复制步骤:

  • 下载源代码,尝试构建-我没有任何问题

  • 运行时,右键单击编辑器窗口中的某些文本-例如,其中有一个“Goto实现”项

  • 该文本位于src/textEdit.cpp文件中,如下所示:

    连接(菜单->添加操作(QIcon(:/treeview/images/cpp.png))、tr(“转到实现”)、信号(触发()、此、插槽(slotgoto实现())

  • 因此,SlotGetImplementation()-是一个将被调用的func。添加操作的方式与在此处执行的所有其他操作相同

    网站上有一些关于向编辑器编写插件的信息,也许这是一种更好的扩展功能的方法,但向源代码中添加一些代码似乎更容易。

    看看如何为其编写插件。这是向当前应用程序添加新功能的最简单方法。这应该是编写代码块插件的良好起点。

    我会尝试emacs(但您必须使用LISP进行编程。当您掌握了Paranthes的诀窍时,这很容易)。您可以根据缓冲区的上下文(.c而不是.h)进行编程,因为它有一个非常大的c模式,其中已经实现了许多最需要的东西

    示例:插入if

    ;; the indention-thing needs refining
    (defun pm-if ()
     "generates if stub"
     (interactive)
     (insert "if () {")
     (indent-according-to-mode)
     (newline)
     (indent-according-to-mode)
     (newline)
     (indent-according-to-mode)
     (insert "} /* endif */")
     (indent-according-to-mode)
     (newline)
     (indent-according-to-mode)
     (previous-line 3)
     (end-of-line)
     (goto-char (- (point) 3))
    )
    
    
    ;; bind it to CTRL-c i
    (define-key Ctl-C-keymap "i" 'pm-if)
    
    顶点

    这是Linux端口
    仔细观察。这是一个用于GNOME/Glib类型应用程序的IDE,据我所知,它是用C编写的,并且有一个插件框架,应该很有用。

    我认为如果您在问题的标题中添加Linux这个词会很有帮助