pbor is currently certified at Master level.

Name: Paolo Borelli
Member since: 2003-11-20 18:51:59
Last Login: 2007-08-01 17:08:15

FOAF RDF Share This

Notes:

I am a student in electronic engineering at Politecnico di Milano (www.polimi.it).

Projects

Recent blog entries by pbor

Syndication: RSS 2.0

3.12 almost here

I wanted to make one more post before the imminent release of 3.12 showing how gedit changed in this cycle, but the recent series of posts by Matthias feature plenty of gedit images and left me without fresh screenshot material :-)

For those living under a rock here is how gedit 3.12 looks

gedit 3.12 with the Solarized Dark color scheme

gedit 3.12 with the Solarized Dark color scheme

Beside the changes in the main user interface, there are other small gems that may be not as shiny, but are very useful to regular gedit users.

With the adoption the new user interface we changed the “new document” keyboard shortcut to the ubiquitous ctrl+T, and while at it we borrowed another neat trick from web browsers: with ctrl+shift+T you can now reopen the tabs you closed recently.

Another small feature I find myself using more and more is the new keyboard shortcut to change the case of text: with ctrl+L you can change the selection to lower case and with shift+ctrl+L change it to uppercase. Ctrl+~ will toggle the case of the selected text. These actions are also available from the right click menu.

There is however another large set of changes that is very dear to me even if it may be not as evident to final users: also in this cycle we managed to keep technical debt under control:

  • we make proper use of new GTK+ widgets and features including GtkPopover, GtkStack, GtkCenterBox, GtkHeaderBar and CSD decorations
  • we reworked command line handling taking full advantage of the features supported by GApplication, including being able to pipe to stdin even when there is an instance already running
  • we got rid of GtkUIManager and switched all the menus and shortcuts to GAction with a clean implementation that leaves us good amount of freedom to adapt and change our UI to different systems
  • we continued our effort to move as much widgetry as possible to .ui files and make use of Gtk templates
  • we removed a lot of custom (and slow) code that implemented the full-screen toolbar animation and replaced it with smart use of GtkOverlay and GtkRevealer
  • we reimplemented the side pane using GtkListBox, removing one of the biggest uses of the scary GtkTreeView API in our codebase and in the process of doing so we restored the ability to drag and drop
  • more importantly we did all the above shaving about 3000 lines from the total amount of C code, while keeping all the features and adding a few new ones

Syndicated 2014-03-21 21:22:39 from Club Silencio

gedit: new look

This week GNOME released its 3.11.90 version and entered the UI freeze period.

Some time ago nacho unveiled the major changes in the gedit user interface that we have been designing and implementing, but now that the dust is settling I think it is a good time to take another look at the many details we have been polishing since those early screenshots were posted.

We now use the new GtkPopover widget to select the currrent side panel and to tweak the current view settings

switcher

 

popover

Many dialogs are now taking advantage of header bars

stats

The Gtk tabs design went through more refinements and using the new support for a centered widget in GtkBox, the tab label is properly centered also when showing a warning.

tabs

The new user interface aims to be elegant and minimalistic, but this does not mean that is not thought for advanced users, quite the opposite: I think heavy keyboard users will enjoy the no-frills UI that lets you focus on the content, whether it is code, your LaTeX thesis or that tricky apache configuration.

All the usual advanced tools are still there (for instance the Snippets and External Tools dialogs can be reached from the App Menu) and by popular demand we incuded in GtkSourceView the Solarized and Solarized-dark color schemes. Not to mention the new code-assistance framework, but that’s something for another post :-)

solar

Even if not as visible, the same amount of polish and attention to detail happened under the hood.

The use of GMenu / GAction was iterated a few times with the invaluable help of Ryan who has always been ready to answer our many questions, and I am now confident that is properly set to accomodate the need of plugins and the integration on different platforms[1]

Ryan also helped us improve the command line handling, taking advantage of (and actually driving) the new features of GApplication.

Sebastien Lafargue rewrote the document list side pane using GtkListBox and greatly improving the code and reimplemented the the fullscreen mode replacing a ton of custom animation code with GtkRevealer.

[1] help and patches are very much welcome, and I do not mean it in the usual ”patches welcome” tone :-)

Syndicated 2014-02-20 13:37:46 from Club Silencio

Fosdem ’14

I’ll be at FOSDEM this year! If you want to chat about the new gedit or anything else I’ll be hanging around the desktop devroom.

I am looking forward meeting my fellow belgian gedit developers swilmet and nud.

http://fosdem.org/

I will land at 5:30 PM at the Charleroi airport, if someone wants to join me on the bus shuttle to Brussels feel free to leave a comment.

In other news, if you are a young linux “smanettone” who enjoys sysadmin work on clusters and HPC systems, we have an open position in Rome.

Syndicated 2014-01-31 07:55:26 from Club Silencio

Give me a stopwatch and a map…

It looks my posts are as punctual and frequent as the GNOME releases… one every 6 months.

With GNOME set to be out in October (well, end of September, but bear with me) and including a new Maps application, we just needed a stopwatch

GUADEC was once again great and Brno turned out to be a beautiful (and hot!) location.

Clocks is a small pet project, with a tiny and clean codebase which makes it fun to work on, so during the conference I decided to rework the stopwatch and timer tools, which in 3.8 were a bit dull. After a few iterations with Allan, here is what will be in 3.10

Clocks 3.10Clocks 3.10

In the video you can also see that at start up a world clock for my current location appears automatically: this is thanks to the geolocation support implemented by Evgeny during his Summer of Code and which I still hope to sneak in for 3.10.

 

 

 

 

Syndicated 2013-09-11 21:42:58 from Club Silencio

3.8… clocks, gedit, more…

gnome 3.8 will be out later today, on time as usual, it’s a great incremental release with improvements all over the place, but I’ll let the release notes speak.

For my own part, I put my fingers here and there either making patches or trying to help (annoy?) people doing the real hard work with reviews and suggestions.

Clocks has matured from a prototype to a real app and in this cycle. It turns out that while from the code point of view a clocks app is really a small application (some even think trivial and a waste of resources better spent improving other aspect of gnome) it is actually quite challanging to design and decide how all the small details should work, since the user expectations for such a familiar object are very high. It has also been a good way to experiment with the new design patterns and the new widgets (like the ones in libgd). There are surely many things to improve in the next iteration, a particularly sore point that I am a bit ashamed to not have fixed yet it is the persistence of alarms when the app is not running (or even when the system is suspended), but today’s bug is tomorrows chance to get involved!

clocks-3-8

 The application went through a full rewrite to address many of the issues found in the first implementation. I opted for a rewrite in vala because it is probably the more mature technology if you want to write a GObject based app today and  you are a bit sick of writing C boilerplate, but at the same time you need to pull some tricks to call some C code and libraries without proper introspection support. However I think the choice of the language is a secondary aspect of the rewrite compared to the use of some good practices I tried to adopt in the new code (use of many of the new prototype widgets in libgd, use of .ui files, use of GLib resources, use of GLib based library calls for everything, etc). Clocks is small enough I do not exclude to try a JS rewrite even if just as an exercise to see how the platform is maturing. In this regard I am really excited to see Giovanni’s work on defining a good platform for JS apps… I have some opinions in that regard (also due to the fact that I am back doing quite a bit of JS at work), but that’s probably best saved for another post.

 Gedit has been ported to GtkApplication: from the user point of view this mostly means that when run within gnome-shell you will see an appmenu (while you will get the usual menu when running on a WM that does not support that). However under the hood this meant quite a lot of code to rework: gedit makes use of many exotic features of GtkApplication, like handling stdin (you have now to use cat file.txt | gedit – , note the dash at the end) and support for blocking the terminal in order to be able to use EDITOR=gedit for git commits etc).

We also ported gedit plugin system to use Python 3, in compliance to a gnome wide goal. This has the unfortunate side effect of breaking third party plugins once again, but I think it is a step worth taking in the long term and the sooner the better: if you have to port your plugin you just need to specify “loader=python3″ in the .plugin file and make sure the code is valid python 3, gedit’s API did not change.

gedit-3-8

GtkSourceView has seen lots of work on the completion framework thanks to the Sebastien Wilmet, his blog has all the interesting details.

Baobab saw a few of incremental improvements after the major rework of 3.6, including a classy animation from the summary to the results page thanks to the wonders of libgd. With regard to baobab, if you are looking for a challenging, but relatively small and fun project, it would be great to see someone step up and implement animated charts (Stefano had a prototype) and rework the treemap to use the squarified algorithm… It would probably make for a good GSOC project, though you would have to find a mentor since I do not think to have time to do that this year (unless a really strong and independent candidate shows up).

 

Syndicated 2013-03-20 11:20:45 from Club Silencio

72 older entries...

 

pbor certified others as follows:

  • pbor certified pbor as Journeyer
  • pbor certified Archit as Journeyer
  • pbor certified cuenca as Master
  • pbor certified paolo as Master
  • pbor certified sdodji as Master
  • pbor certified Uraeus as Journeyer
  • pbor certified bonzini as Master
  • pbor certified clarkbw as Journeyer
  • pbor certified kov as Journeyer
  • pbor certified Spooky as Master
  • pbor certified gicmo as Journeyer
  • pbor certified ebassi as Journeyer
  • pbor certified robsta as Master
  • pbor certified leio as Journeyer
  • pbor certified clubfan as Journeyer
  • pbor certified behdad as Master
  • pbor certified zwnj as Journeyer
  • pbor certified cinamod as Master
  • pbor certified lucasr as Journeyer
  • pbor certified messi as Apprentice

Others have certified pbor as follows:

  • pbor certified pbor as Journeyer
  • sdodji certified pbor as Master
  • Uraeus certified pbor as Journeyer
  • elanthis certified pbor as Apprentice
  • bonzini certified pbor as Journeyer
  • ashtong certified pbor as Journeyer
  • gicmo certified pbor as Journeyer
  • ebassi certified pbor as Journeyer
  • robsta certified pbor as Master
  • leio certified pbor as Journeyer
  • behdad certified pbor as Master
  • zwnj certified pbor as Master
  • cinamod certified pbor as Master
  • clubfan certified pbor as Master
  • lucasr certified pbor as Journeyer
  • messi certified pbor as Master
  • loopback certified pbor as Master
  • janneke certified pbor as Journeyer

[ Certification disabled because you're not logged in. ]

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!

X
Share this page