??xml version="1.0" encoding="utf-8" standalone="yes"?>
W一?Grails 开发环境准?/p>
http://v.youku.com/v_show/id_XNjUxNjgxMjA4.html
W二?配置使用 Grails Spring security
http://v.youku.com/v_show/id_XNjY2MDc4MDgw.html
W三?nbsp; Grails中数据库q接
http://v.youku.com/v_show/id_XNjk4NTM2NDgw.html
EverNote 的强大已l无需多说。他自己有很好的客户端,不过那个只是对Windows和OS X。在linux下面pc了。就是Windows和OS X下面的客L也存在一个致命的qQ不支持 MarkDown ?
不过有好人做了一个工?Geeknote 让我们可以在M装有python的机器上使用Evernote?更强大的是他可以使用M~辑器编辑笔讎ͼ支持 MarkDown ?有如此好处还{什么啊赶紧用v来?br />个h在用的时候发现原版有点点不舒服的地方Q做了点点小改动攑֜?GitHub?具体是什么改动,先买个关子?/p>
? vim中一般是Ҏ文g的后~名来识别该文件是什么类型。然后ؓ他加载相应的语法高亮Q代码补全什么的。在没有改动前geeknote是ؓW记创徏的? 文g时没有后~的。只是随机的创徏一个Ş?tmpsNbc8kq样的文件。所以Vim无法识别他是何种文gQ就无法Z加蝲对于的语法高亮之cȝ?/p>
既然扑ֈ原因了就先看一下geeknote是否有什么地方可以设定,让他产生的时文件有后缀。最后在editor.py文g中发Cq么一行代码: (tmpFileHandler, tmpFileName) = tempfile.mkstemp() ?直接没有lQ何后~的想法?br />那就加上吧?
我所做的动作是q个Q给他加上了一个文件后~的设定?br />通过python geeknote settings --suffix suffix q样的命令来讑֮零时文g的后~。这栯法高亮,代码补全回来了。小爽一下!
q个其实geeknote已经惛_了,而且已经做了。代码仓库中的那?bash_completion/geeknote 文g是q这个活的?所以我只要把这个文件copy?/etc/bash_completion.d/ 下就可以了?br />但是copyq去后没有达到我惌的效果。没有自动补全。最后发现是geeknote配置的补全命令和我们执行的时候不一致?br />下面要做的就是把它们搞一致了?br />我的操作步骤如下Q?br />1. chmod +x geeknote.py lgeeknote.py加上可执行权限?br />2. geeknote.py所在\径加入到PATH中去?br />3. 修改 /etc/bash_completion.d/geeknote 文g中的 geeknote 为geeknote.py q个在我上面提到的github中可以找到?/p>
q个时候在新开一个控制台Q输?geeknote.py tab 可以自动补全了。小爽一下!
?? | Jet Geng |
---|---|
?? | 2011-07-22 |
?Blueprint h中我们已l成功的通过 Blueprint 容器创徏了一个POJO。我们只是通过log的方式查看到我们的POJO已经被创Z。无法深入的M解容器内部Bean的运行状态和行ؓ? 所以才有必要创Z个Gemini控制台这LE序。这个控制台最初的需求是Q?/p>
- 能够动态查看特定的Bean是否被创建?/li>
- 能够动态的获取特定的Bean?/li>
- 能够查特定Bean的行为是否正?/li>
注解
在Groovy脚本中有一个内建的变量 act Q?他又一个叫?getBean 的方法。通过q个Ҏ你可以获得当?OSGi q_中所有的BlueprintContainer中的lg。他的输入参数时Bean或Service的id? 如果是用Groovy文g的Ş式,注意文g的url格式。他是通过如下的正则表辑ּ file:\\/{2}(\\/[:\\w\\.]+)+ q行验证的。ƈ且\径中暂时不支持中文?/p>
q个周末(23?4?完成一个简单的录屏Q来演示q个工L使用?/p>
前几天不知道那根{搭错,又拿Z大学时候买的一本讲法的书Mh。想起当q学习Tree的时候,看着数据l构凭空L那颗倒着的树。那个叫做苦啊。所以就像有没有什么办法让Tree自己dq样的结构图出来?
既然惛_了,动手做把。因Z前用Graphviz画过一点mindmapQ类图之cȝ东ѝ让我一下子想CQ我只要能从Treel构中方便的输出成一个能l制出对应树l构的Graphviz脚本可以。这应该是代h的做法?
呵呵Q废话不多说了。看看的Tree的代码吧Q?
产生脚本的动作全部在q里完成了。我通过如下代码创徏了一颗树
最后得到的一副如下的?br />
呵呵Q这L话就可以随时查看树的l构了,我们所需要做的只是把object toString一下就可以?/p>
附上一些文?/p>
完整的代?nbsp;q来想了解一下关于网站徏设方面的内容。自然而然的就扑ֈ了Drupalq个东西。刚开始没有发C是多么的强大。抱着试试看的态度Q?
搭徏了一个环境跑跑看。看完之后惊呼强大!他的强大来源于他的高度的可扩展,丰富的模块,主题。让你可以不写一行代码构建出一个不错的|站来? 看到q么强大的东西,q不住好奇往里看。于是找C一些资料特与大家共享: 书籍Q?
视频Q?
q有两个很不错的|站?
上面提供了很多高质量的教学视频。让我这个初学者很快对drupal有个直观和深入的了解?
youtube.com上也有很多视频,有梯子的童鞋可以q去看看Q?br />
q两天在写一个小东西。这个小东西是一个大东西的一部分。其实也是其中的一两个cR而这个大东西需要部|到一个特定的环境中去q行。所以有一堆的限制? Ӟ比如什么配|文件啊Q包名,版本之类的什么东ѝ稍微有点差错就没有办法q行。需要正得到这些东襉K要一个很庞大且冗长的构徏q程。而我写的也就? 两三个类Q所以最直接的方式就是把我写?strong>java 文g~译或的class 文g直接复制到jar文g中? 完成q样工作有好几中方式Q最直接的方式就?strong>U手工打?/strong>
PS: q种方式Ҏ费力Q需要在不同的窗体间q行切换。例如我现在在Eclipse、WinRaR和Windows资源理器间切换?
如何避免q个q程呢,量不用人来参与其中。这个肯定就是让一个小E序来把q几个动作连接v来。而且q要能够方便变动。比如我现在不想往a.jar 里面copy了。我惛_b.jar 中复制了。所以就惛_了脚本。对让脚本来完成q样的事情。第一反应惛_的是ant
Ant ? 何须人,׃用我多说了。其实我了解也不多,只是知道q个蚂蚁蛮力超大。下面就着手解决问题。第一反应是扑ֈ一个直接copy的Q务,? fileset中的文g复制到jar文g中。但是遗憄是我没有能够扑ֈq样一个Task.q个时候我的思维陷入了困境。下面该怎么办?
没有现成的东西,没有现成的能一步完成的东西Q如何是好? 我是E序员,所以我我自己可以写一个task来满L需求啊。对啊,我可以自己写的!正当我ؓq个x兴奋不已Ӟ正卷赯子准?#8220;大干”的时候。突然想hq?strong> 不要重新造轮子! 。所以就q问了我自己一句:?/strong> 角处会有什么呢Q?
既然Ant有蛮力,我可否利用一下他的蛮力呢Q通过如下的这么一个流E来辑ֈ我的目的?
q里用了一个temp文g夹作Z转,先解压,copy需要的文gQ最后jar一下获得最后的更新好的jar? 最l获得了如下的build.xml
q样可以了。大功告成!Q?
在我们创建领域模型前Q我们有必要了解一下我们的模型用来表达什么内宏V?所以我先解释一下在q个pd文章中要实现应用?假设Eclipsel织邀请你~写一个让他们理贡献者和目的应用程序?
我们需要创Z个模型来表达客户提供的信息。他们有可能如下图?
让我们进一步的看看q个模型?
fundation是这个模型的根,他拥有两个列表属性?
projects: 像EMF,Techonlogy,Platformq样的顶U项目? |
persons: 参加一个或多个目的h? |
Eclipse目拥有很多属性,比如目开始和l束旉、项目的主页的url{等。下面列出我们最感兴的?
subprojects: 一个项目可以拥有多个子目。子目本n也可以拥有多个子目? |
parent: 目有一个父Ԍ除了目外)。这意味着目和子目Qproject-subprojectQ的关系是一个双向的关系? |
projectleads 一个项目有多个目领导人? |
committers 一个项目可以拥有多个A献者? |
当一个用hZ个项目的贡献者(CommitterQ时Q这徏立了一个committership。他拥有一个开始时间和l束旉。另外我们还要记录下下面的属性?
project: 和committership相关的项目。项目和committership是一个双向的关系? |
person: 参加目的h? |
贡献者或目领导人的信息。我们关pȝ信息如下Q?
committerships: 用于保存和h相关的所有的committerships.q说明h和committership是一个双向关pR? |
下面q张cdl出了关于上面模型的全貌?
正如你所看到的,我把许多关系设成了双向关pR?As you noticed I modeled many of the relations as bidirectional relations. q个q不是严D求所有地斚w要这P因ؓ有的地方可以通过eComtainer来获取他的父二Ӏ就像project-subproject一栗? 但是包含关系Qcontainment relationshipQ在使用databinding的情况下׃太合适了。因Z子到父亲时没有对应featureQ只能通过调用eContainer()Ҏ来获得? EMF提供了一个编辑器来创Z的Ecore-Modelq把它保存成XMI格式。我们可以用它来创徏试数据。下囑ְ是一个例子?/p>
在学习EMF-Databinding的时候发CTom Schindl的博客。他的博客中有一个关于EMF Databinding的专题。感觉很不多。想试着译一下?那么Tom Schindl是何思h也?他是JFace目的一个ContributorQ在2007q?a target="_top">Eclipse Zone 曾l采访过他?所以称他ؓEMF Databinding的专家一点也不过分?
![]() |
Note |
---|---|
原文\径ؓhttp://tomsondev.bestsolution.at/2009/06/06/galileo-improved-emf-databinding-support/ |
我很高兴的宣布在Eclipse-Galileo中EMF-2.5已经开始支持新的Eclipse-Databinding API了。荣誉归Matthew HallQ他审查我的代码Q帮我整理支撑部分ƈ且整理文档(详细内容?a target="_top">bug 262160 中)
几周前我成ؓ了EMF目的捐献者,现在我负责Databinding对EMF的支持模块。我尽力修正API中的问题Q回{Newsgroup中的问题?
请允许我在介l这个API的优点以及如何用它之前声明一点:q个APIq处于过渡期Q他可能会有一些细微的变化。不q我们将会详l说明变化的部分?
我将用一个系列文章来展现q个新的EMF-Databinding:
W一部分Q?a target="_top">创徏领域模型 |
W二部分Q?a target="_top">介绍新的Properties API |
W三部分Q?a target="_top">用EMF-Databindingl定到TreeViewer |
W四部分Q?a target="_top">在master-detail模式中用Properties API |
W五部分Q?a target="_top">用EMF-Databindingl定到TableViewer |
W六部分QWrite your own Property for unsupport Widget-Types |
W七部分QMake the storage system plugable |
Z让你快速进入EMF-Databinding中,我在前几天做了一个例子?
所有代码都是基于EPL协议Q你可以在从Eclipse-CVS 处获得?