❯ Guillaume Laforge

Posts

Groovy code-completion in IntelliJ

JetBrains improved the custom file type support in IntelliJ, in the Irida EAPs. If you have defined your Groovy syntax file correctly, you can have syntax highlighting, brace highlighting, and even… code-completion!

In my Groovy syntax file (which works in Irida #3185), I defined two sets of keywords: one for the keywords of the language, and the other one for the Groovy methods, like each(), findAll(), etc. And guess what? Simply hit CTRL-Space as usual, and presto, you can complete your code.

Read more...

Auto-completion in a DOS console

When I’m on an old PC, what frustrates me a lot is when I can’t auto-complete file names or paths when I’m in a DOS Console. If your computer (an old Win2K box like I have at work) is not configured for completion, it’s easy to re-enable it by modifying two keys in the registry:

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor\CompletionChar
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor\PathCompletionChar

To both keys, assign an hexadecimal value representing the key used for completing statements. I’m quite used to the tab key for that purpose, so I set the hexadecimal value to 0x09.

Read more...

Converting a Word document to HTML

If you’re under Windows, and that you need to do some shell scripting with ActiveX/COM components, Scriptom will certainly help you. Today, my boss just asked me if we could use Scriptom to convert a Word document into an HTML equivalent. And I decided to see if that was possible. To my delight, my little Scriptom module, backed by Jacob, helped me solve this integration problem with only 6 lines of Groovy code!

Read more...

Noeuds de cravate

Qui dit nouveau boulot, dit être bien habillé. Il faut être classe et élégant. Evidemment, il n’y a pas que le premier jour qu’il faut l’être ! Mais c’est l’occasion de réviser ses classiques, et je pense particulièrement au noeud de cravate.

J’ai une ribambelle de cravates dont les noeuds sont déjà faits. Je n’ai pas besoin de les refaire. Sauf si vraiment je ne suis pas satisfait du résultat. Mais en l’occurence, pour un nouveau costume, avec une nouvelle chemise, j’ai aussi opté pour une nouvelle cravate.

Read more...

A bit of Groovy history...

First of all, I wish a Happy New Year to all my readers! The first days of a new year are often days of recollection, where we look back at the previous year. What happened? Was it a good year? Did we succeed in our endeavours? Any downside or missed target? Etc…

Today, I want to give you some insight in the Groovy history, as it was written last year, in 2004. It’s been a pretty busy year, in fact. Till the JSR got started, we were working like mad on Groovy, adding feature after feature, certainly not taking care enough of bugs, but still, that was a good time. Then came the JSR process, which somehow stopped all our efforts, because of uncertainty, and other considerations, like fear of not doing well with regards to that JSR process. Unfortunately, Groovy’s development almost stopped. Some of the core developers even left, because of the inactivity, and frustration of not being allowed to change things, or because of the lack of management in the project since our leader started working on other projects, taking all of his time.

Read more...

Scripting ActiveX/COM components with Groovy

During my three weeks break before my next job, I decided I’d work on two things: first, I’ll play with Groovy a little more (playing != fixing bugs like mad like those last two months to get beta-8 out in the wild), and I’ll work on my “Learning Groovy” book for O’Reilly.

In this blog post, I’ll talk about my last two days playing with Groovy and… Jacob, a Java COM Bridge library developed by Dan Adler, to interact with Windows components. So, of course, it’s Windows-only.

Read more...

Groovy support in IntelliJ

Kjetil JD submitted a feature request on JetBrains’ tracker for adding Groovy support to IntelliJ:

Integrated Groovy-support
Integrated support for Java bytecode-based scripting languages should be better integrated in IntelliJ. Groovy is the only Java bytecode scripting language that has a backing JSR and should be the first to be implemented with proper support like Java and XML has.

For the moment, the Groovy IntelliJ plugin is somewhat stalled, we didn’t make any progress on that front, so a little help from our JetBrains friends would be most welcome.

Read more...

Groovy Conference 1

So far, I didn’t blog about our first ever Groovy Conference we held on November 11th and November 12th. But at least, here are some pictures taken there. I’ve created a Flickr account and put my pictures son it.

Jeremy Rayner blogged about the conference, and also took some pictures, and wrote down a few notes about the conference.


IntelliJ, as a team communication tool

Everyday, when you work with your team mates, you exchange information through different communication channels. If you work in the same offices, you can simply speak and make stand-up meetings. If you work with different teams spread across different places, different buildings, or even different countries–especially true for Open Source projects–you can pick up your (Skype) phone, and write emails, or chat through instant messenging or IRC.

But sometimes, it feels a bit frustrating to use those archaic mediums. When you wish to share some code snippets, to study a stacktrace another developer got, to know on which files other developers are working on, the usual communication means feel less handy, less intuitive to use. So what could we do to improve that?

Read more...

On board JetBrains!

JetBrains, JetBrains… You all know I love that company, and I love their products. Especially IntelliJ that I’ve using for a few years already as my main and primary Java IDE. That really, really rocks. And you’ve probably seen the picture of me wearing my JetBrains TShirt

So what’s the news today? JetBrains’s just released their OnBoard monthly online magazine. That’s worth a read! The featured articles are:

  • Language Oriented Programming: The Next Programming Paradigm
  • Applying Code Generation Approach in Fabrique
  • IntelliJ IDEA: Structural Search and Replace, What, Why and How-to
  • Extending Omea with New Resource Types

Of particular interest, Sergey Dmitriev’s–long awaited for those in the know–article about Meta-programming: “Language Oriented Programming”. That’s a real paradigm shift!

Read more...