gEdit: 打造简洁,小巧的编程环境

软件和网站开发以及相关技术探讨
头像
wenstream
帖子: 186
注册时间: 2008-06-18 22:02

gEdit: 打造简洁,小巧的编程环境

#1

帖子 wenstream » 2009-02-25 22:36

使用gEdit搭配terminal来写程序也有一段时间了,但一直当它是windows下的notepad,没有好好熟悉下它,今天无意中发现原来gEdit也可以打造一个不错的编程环境。这里对相关的资料收集总结了一下,与大家共享。
gEdit是GNOME桌面环境中默认的文本编辑器,它简单易用,对中文支持良好,支持多种字符编码,同时具有开放的插件支持特性。通过安装插件,作一些简单的设置,gEdit就可以做为一个简洁的编程环境。在我的ubuntu 8.04下,默认情况只安装了gedit包,还有以下几个插件:

代码: 全选

	Change case: Changes the case of selected text. 
	Document Statistics: Analyses the current document and reports the number of words, lines, characters and non-space characters in it. 
	External tools: Execute external commands and shell scripts. (More) 
	File Browser: A file browser plugin allowing to easily access your filesystem (includes remote mounts, creating new files/dirs, monitor dirs for changes, etc) (More) 
	Indent: Indents or un-indents selected lines. 
	Modelines: Emacs, Kate and Vim-style modelines support for gedit. 
	Python console: Interactive python console standing in the bottom panel. 
	Snippets: Insert often used pieces of text in a fast way. (More) 
	Sort: Sorts a document or selected text. 
	Spell: Checks the spelling of the current document. 
	Tag list: Provides a method to easily insert into a document commonly used tags/strings without having to type them. 
	Insert Date/Time: Inserts current date and time at the cursor position.
就编程而言,我觉得比较有用的有External tools(外部工具),通过它在菜单上集成shell命令来编译运行程序(由于不是交互性的shell,所以不便用于debug);File Browser(文件浏览器),提供一个多文件(工程)的视图,还有可以编辑远程文件,虽然后者我很少用到;Snippets(片断),提供一种代码模板以快速输入,如我在snippets->C++下定义了如下for循环:

代码: 全选

		for( $1 ; $2 ; ${3:++ix} )
		{
			$4
		}
		$0
并且其Tab触发器设置为forlp+tab(表示输入forlp,然后按下tab键)。之后在代码中每当我要输入for循环,在C++的源文件中,只需输入forlp,然后按下tab键,forlp+tab就会自动扩展成上面的for循环,光标会处于$1处,此时可以直接输入for的初始条件,然后按一下tab,光标会跳到$2处,再按tab,跳到$3处,如此类推。$3处设置了默认值++ix,如果直接按tab跳过,就为默认值++ix,如果输入ix++之后再按tab跳到$4,默认值就会被ix++覆盖。$0为此模块最后跳转到的位置。
此外Tag list对编写网页等多tag源文件比较有用,Indent方便我们对代码进行缩进与取消缩进。默认安装好系统后,gedit能通过后缀正确识别到不同语言的源代码,其语法高亮也做得比较好。但是要作为一个编程环境还有很多不方便的地方,此时就要安装另外一些插件来完善其功能了,首先我们安装软件源中gedit的plugin集,terminal下输入:

代码: 全选

		$ sudo apt-get install gedit-plugins
安装gedit-plugins。其中包括

代码: 全选

	  * Smart Spaces: Forget you're not using tabulations.   <=== 智能空格
	  * Embedded Terminal: Embed a terminal in the bottom pane.   <=== 内嵌的terminal,应该是最有用的一个插件了,有了它,我们就可以不用上面External tools来编译调试程序啦,而且也不用心烦在gedit与terminal之间来回切换了,不足之处是貌似只能有一个terminal,有时不够方便。
	  * Show/Hide Tabbar: Add a menu entry to show/hide the tabbar.     <=== 显示/隐藏标签栏
	  * Join/Split Lines: Join several lines or split long ones         <=== 合并/分割行
	  * Color Picker: Pick a color from a dialog and insert its hexadecimal representation.  <=== 拾色器
	  * Draw Spaces: Draw Spaces and Tabs           <=== 特别显示空格与制表符
	  * Session Saver: Save and restore your working sessions    <=== 会话保存  不过貌似不怎么管用哦,>3<
	  * Code comment: Comment out or uncomment a selected block of code.   <=== 注释代码,这下要注释大片代码就方便了
	  * Bracket Completion: Automatically adds closing brackets.     <=== 自动的括号补全
	  * Character Map: Insert special characters just by clicking on them.  <=== 对特殊字符集映射,暂时对我而言没什么用
安装好后将觉得有用的插件启用,不用的插件禁用掉。比起notepad已经好用了很多,但是还不够,要让gEdit变得更方便,登录gEdit的插件网站http://live.gnome.org/Gedit/Plugins ,选择你需要的插件啦。这里写下个人觉得写代码比较有用的几个插件,仅供参考:
1.Class Browser:显示代码中类,函数,宏等的大纲,类似于VC或eclipse的类视图,支持多种语言,但这个插件相对简单,另一个Symbol Browser貌似更强大,不过暂时我找不到下载。
2.单词自动补全,有多个word completion的小插件,功能大同小异,都支持自动补全前文或所有打开的文件标签中已经出现过的单词,类似于visual assist或eclipse的自动补全功能,不足在于暂时不支持根据不同语言提供不同的关键字自动补全
3.Full screen: 在打开文件的情况下将gEdit全屏,偶尔会用下。
4.Open terminal here: 在当前文件夹下打开新terminal,有了Embedded Terminal这个插件比较鸡肋了
5.session autosave: 记录上次退出gEdit时打开的文件,下次打开时重新打开这些文件,由于止面的Session Saver好像不能用,所以装了这个。打开多个相关文件时比较有用,退出后下次就不用一个个文件手动打开啦
6.Code Formatter:自动格式化
7.snap open: 输入文件名(支持正则表达式)查找并打开文件
8.vigedit: 支持vi快捷键
9.Tabs Extend: 扩展的标签功能支持
gEdit的插件多用python来写,我们可以根据自己的偏好来修改编写,gEdit的插件网站上也有很多的插件,可以根据自己的需要酌情安装。这些插件都放在~/.gnome2/gedit/plugins/目录下,如果没有此目录则创建一个,下载的插件可以直接放到此目录下。
很多人可能习惯去改变编辑器的配色(代码高亮,像定制vim或Emacs时常常做的那样),使经常面对着电脑写代码的眼睛没那么累,在gEdit的菜单 [编辑]->[首选项]->[字体和颜色] 中,只有4种配色可选,此外通过GUI并不能具体定制配色。要DIY配色的话,我们可以从网上下载载配置文件,添加配色,或自己重新写一个。下面提供两个配色文件下载网站:
1. http://github.com/mig/gedit-themes/tree/master
2. http://live.gnome.org/GtkSourceView/StyleSchemes
gEdit使用的是gtksourceview,我们将后缀为.xml的文件下载并放入
1. /usr/share/gtksourceview-2.0/styles <==== 所有用户均可用
or 2. ~/.gnome2/gedit/styles <==== 只有你自己可用
重启一次gedit,就可以在[编辑]->[首选项]->[字体和颜色]选择喜欢的配色,也可以修改配色文件来DIY自己的Style.再定义一种好看的字体,对行号,备份时间等简单设置一下,整个编辑环境就相当个性,舒服啦。
虽然比不上vim,emacs的灵活,也比不上IDE的强大,但Gedit也是不错的一种工具。即使搭配了众多的插件,gEdit还是相当轻量的编辑器,如你像我一样,用不习惯vim或Emacs,又不喜欢那些慢悠悠的IDE,那就试下系统默认安装的Gedit吧。附我的gEdit截图:
my_gEdit.png

参考:

1. 把Gedit打造為Linux下的Textmate
http://www.ubuntu-tw.org/modules/newbb/ ... t_id=39747
2. 磨快linux下免费的小刀-gedit
http://ror-party.group.javaeye.com/group/blog/195702
3. 13 Gedit Plugins to Make It a More Useful Text Editor
http://www.makeuseof.com/tag/top-plugin ... 囗囗囗-linux/
4. 让linux下的gedit媲美textmate
http://www.agatezone.cn/code/archives/62
5. Pimp my Gedit (Was: Textmate for Linux)
http://grigio.org/pimp_my_gedit_was_textmate_linux

友情链接:

ljcs - gedit的c++提示插件
https://forum.ubuntu.org.cn/viewtopic.p ... 12&start=0
头像
wenstream
帖子: 186
注册时间: 2008-06-18 22:02

Re: gEdit: 打造简洁,小巧的编程环境

#2

帖子 wenstream » 2009-02-26 12:20

自己顶下....

找到了symbol browser这个插件,不过貌似挺久没更新了。共享如下:


ps:在论坛发贴怎么排版?粘贴过来缩进全没有了, ft...


+ 3 Nov, 2009更新共享的symbol browser包,包括源代码与编译好的包:
+
symbol_browser.tar.gz
symbol browser 源码和bin包(内有安装说明)
(97.19 KiB) 已下载 241 次
上次由 wenstream 在 2009-11-03 1:36,总共编辑 1 次。
头像
ChloeRei
帖子: 1021
注册时间: 2007-11-23 9:49

Re: gEdit: 打造简洁,小巧的编程环境

#3

帖子 ChloeRei » 2009-02-26 14:54

好文,很详细
正困扰怎么给别人推荐一个跨平台(主要linux)下的编辑器

不过gvim的全能补全太爽了,我自己还是用gvim
头像
佚之狐L
帖子: 840
注册时间: 2008-01-28 13:02

Re: gEdit: 打造简洁,小巧的编程环境

#4

帖子 佚之狐L » 2009-02-26 15:06

好文,盖章
携书弹剑走黄沙,瀚海天山处处家;
大漠西风飞翠羽,江南八月看桂花
头像
HuaChong
帖子: 493
注册时间: 2006-09-12 17:10

Re: gEdit: 打造简洁,小巧的编程环境

#5

帖子 HuaChong » 2009-02-26 16:52

ChloeRei 写了:好文,很详细
正困扰怎么给别人推荐一个跨平台(主要linux)下的编辑器

不过gvim的全能补全太爽了,我自己还是用gvim
同感,gvim的插件也有许多不错的
头像
Jarson
帖子: 2371
注册时间: 2008-07-21 9:44
来自: 深圳
联系:

Re: gEdit: 打造简洁,小巧的编程环境

#6

帖子 Jarson » 2009-02-26 16:59

LZ强 :em38
可惜俺就是没时间折腾这些东东 :em20
头像
wenstream
帖子: 186
注册时间: 2008-06-18 22:02

Re: gEdit: 打造简洁,小巧的编程环境

#7

帖子 wenstream » 2009-02-26 18:59

ChloeRei 写了:好文,很详细
正困扰怎么给别人推荐一个跨平台(主要linux)下的编辑器

不过gvim的全能补全太爽了,我自己还是用gvim
呵呵,各取所需吧

只是觉得gnome自带的gedit平时不怎么看得上眼,后来发现简单配置一下,用来写程序也挺好用的,有种惊艳的感觉(嘿嘿,tui火星了吧....)

暂时只想专注程序上面,不在编辑器上花太多时间。其实vim也懂一些,不过不常用,慢慢我也会完全转到vim,或emacs下吧
头像
lerosua
论坛版主
帖子: 8455
注册时间: 2007-11-29 9:41
联系:

Re: gEdit: 打造简洁,小巧的编程环境

#8

帖子 lerosua » 2009-02-26 19:13

vim/emacs是终极编辑器,所有用户的归宿。呵呵
头像
qlhn
帖子: 736
注册时间: 2006-08-25 10:37
联系:

Re: gEdit: 打造简洁,小巧的编程环境

#9

帖子 qlhn » 2009-02-28 9:12

喜欢gedit的简单,编点小程序用它。
delectate
帖子: 18311
注册时间: 2008-01-09 22:41

Re: gEdit: 打造简洁,小巧的编程环境

#10

帖子 delectate » 2009-02-28 18:18

fhc2007 写了:LZ强 :em38
可惜俺就是没时间折腾这些东东 :em20
做个标记

留个脚印

为了以后搜索方便 :em11 :em11
zhsp1029
帖子: 3
注册时间: 2008-07-31 21:57

Re: gEdit: 打造简洁,小巧的编程环境

#11

帖子 zhsp1029 » 2009-03-08 23:59

多谢,正在找ubuntu下的编程工具呢,这些配置 完全可以满足我的要求
头像
loushizan
帖子: 7
注册时间: 2008-11-04 15:05

Re: gEdit: 打造简洁,小巧的编程环境

#12

帖子 loushizan » 2009-05-14 17:30

gedit有了插件之后确实可以拿来编码了
ubuntu!
头像
loushizan
帖子: 7
注册时间: 2008-11-04 15:05

Re: gEdit: 打造简洁,小巧的编程环境

#13

帖子 loushizan » 2009-05-14 17:31

lz分享一下你的主题吧 很喜欢这个风格的
ubuntu!
头像
wenstream
帖子: 186
注册时间: 2008-06-18 22:02

Re: gEdit: 打造简洁,小巧的编程环境

#14

帖子 wenstream » 2009-05-15 20:50

loushizan 写了:lz分享一下你的主题吧 很喜欢这个风格的
呵呵,主题参考

viewtopic.php?f=33&t=173752
头像
libralibra
帖子: 401
注册时间: 2008-02-23 17:31
联系:

Re: gEdit: 打造简洁,小巧的编程环境

#15

帖子 libralibra » 2009-05-17 16:22

个人还是比较撑geany,不用配置基本
My Blog: matlab, ubuntu, python
http://goo.gl/GDIO
回复