T[ea]sting SVG


I had some spare time today and decided to test the SVG capabilities that the patch that arrived to the Fvwm CVS like 10 days ago or so provides. It is a nice feature indeed, overall when it comes to making configs. It is so easy to pack the whole config with the whole iconset on format and to share it, even through dialup modems it should not be that hard.

That is one of the advantages, another one is that it avoid redundancy, like having the same icon in 3 or 4 sizes and such crap. Damn, the icons can be even scaled and the feature works flaulesly in menus.

I haven’t tested it, but that should make a nice pseudo-zoom effect on fvwmbuttons, no more needs to do three icons to emulate the hover/press thing. That’s nice.

Now the real problem is the lack of complete svg icon themes.

The only ones worth mentioning that I found are Gartoon (regular and blue) and Leinir’s Reinhardt iconset. The reinhardt one is the most complete one but it is a low contrast theme. I love it, and use it, but it might not be suitable for all people. My tastes are rare :stuck_out_tongue:

The gartoon iconset is very incomplete. To a point that it is impossible to make a decent set out of it with just svg icons.

So, if someone knows of a hidden svg iconset that is worth mentioning, please, let me know. Oh, I preffer GPL’d ones, since the rest will be nice to see, but unusable.

Thanks in advance for any comment/suggestion :slight_smile:

— EDIT —

Nope, this does not work hehe.

Another EDIT: I also found lila, tango and the xfce4 iconset, they all have a set of scalable icons. But none it so complete to use it as a kde icon theme. Lila, though, is complete enough to fill my fvwm menus.

Whoa! I must really see who checked it in since I was talking about this not so long ago. The idea was to redo the current wm-icons sets as svg. Any interest for that kind of thing? I think that atleast the infox set could be pretty cool as svg. Gant could be tricky one to make, but doable IMO.

[EDIT]Holy shit! The support is there! Dreams do come true! :smiley: :smiley: :smiley:

Hi guys, could you provide us for the ease of use with URLs for those iconsets? :wink:


Ok - for the ease of use I looked up the URLs :wink:

Gartoon Icon Set
Leinir’s Reinhardt Icon Set
Lila Icon Set
Tango Icon Set


Gant and other iconsets by mattahan can be found on his deviantArt page.

I’m not sure I understood you right, and I’m not very devart savvy in terms of site navigation, so do you mean he has already done gant & co as svg?

If you want icons svg, i would suggest to look
at the gnome and kde website. The icon themes on these
desktops are usually made from svg, and often these svg
are downloadable (they are in the complete set when provided).

for example, you can get the Kristaline set from kde-look.org :
There are 308 svg in the scalable folder ; pretty complete i think.

Try Entering in the search engine of kde-look
name contains: icon
description contains: svg

The oo.ikde icon set is nice ; 779 svg icons
The realistiK-new theme contains 216 .svgz icons
The Humility theme contains 163 svg icons
The Nerdy-lines theme is funny (but small; 121 svg)
The etiquette theme is considered as one of the best gnome set (500 svg)


– edit –
typo - all links are ok now

Thanks for all the responses.

I looked on the kde and gnome sites. The problem is that if you search for svg themes, you will mostly find themes made from svg, but the downloads are in png format (it is easy to check, just look at the size of the tarball that it will download, anything above 3-4mb can’t be svg).

I am looking mostly for kde themes, since I use mostly qt based applications.

Thanks again, I will check all the info provided.

I was very impressed by the oxygen-icons for KDE4 so I tried to get them and finally I succeeded via svn checkout:

svn co svn://anonsvn.kde.org/home/kde/trunk/playground/artwork/Oxygen/theme/ oxygen-theme

Check them out! :wink:


PS: Now I have to integrate them in my theme …
PPS: What is btw. the best SVG-viewer to use?

The links I provided contain svg files. I can even tell you this :
the etiquette and Nerdy-Lines folders contain only the svg icons,
whereas the others contain both the svgs and pngs.
The realistiK-new also contains a script for converting svg to png.


To answer my own question - you can use Konqueror with ksvg to view SVG icons/images …


Can ksvg do filtering?
The only one I’ve bumped into which can do filtering is Adobe SVG viewer. You can test it out in w3.org/Graphics/SVG/Test/200 … -01-f.html
and other tests in those pages at w3.org/Graphics/SVG/Test/20061213/
Filtering is awesome! :smiley:

Hmpf - what do you mean with filtering? I’m happy if I can have a quick overview over the icons :wink:
This is what konqueror does for me …


Errr… you just compare the image on the left (svg) with the image on the right (png). If they look alike, ksvg supports filtering (or parts of it).

Firefox 2.0 partially support svg format and can be used to browse svg folders.
Try the link below; if you see a little tux, this means that your browser can handle svg.
Firefox does not support advanced svg features like filtering, though.

First, thanks for all the ideas and responses. I already decided to go with FlatSvg, which is nice and net, the way I like things. Reinhards it also nice, though it offers a not so good contrast over dark backgrounds, that is why I decided to use FlatSvg:


It is a pretty extensive svg theme, “With 1776 pieces of SVG goodness” quoting the author of the icon set. I wanted to achieve two things: first, a good but sober overall look, I don’t like fancy things, you know. Second, portability.

My theme is as automatic as it can be in which regards configuration, meaning that it should need no tweaking at all to be used in any other display size (well, but for the gkrellm thing hehe). This svg thing was one of the last few pieces left to integrate in that scheme. So, my goal was to do a nice menu to change the icon size, and a default icons size of vp.height/64 if none has been configured. That is 16pix in 1024x768, which I think is fine.

The whole thing goes this way:

1.- First, make sure you update your cvs trunk, compile and make sure that librsvg and cairo are correctly installed.

2.- I use this to set the defaults:

Piperead `echo SetEnv icon_default  $(($[vp.width] / 64))`
PipeRead `echo SetEnv icon_size     $(cat $[FVWM_USERDIR]/.menu_icon_size || echo $[icon_default])`

3.- A nice function to do the job:

DestroyFunc ChangeIconSize
AddToFunc   ChangeIconSize
+ I Piperead `echo SetEnv icon_size $0 && echo $0 >  $[FVWM_USERDIR]/.menu_icon_size`
+ I Read $[FVWM_USERDIR]/menu.config
+ I Read $[FVWM_USERDIR]/windowops.config

For this, is convenient to have the menus in separate files (I use two files for practical reasons, but it could be one or twenty, just add them all at the end of this function), unless you want to Restart the whole fvwm each time you change the icon size… You decide.

4.- After that, you need a menu:

DestroyMenu user_IconSizeChooser
AddToMenu   user_IconSizeChooser
+ "16x16%select.svg:$[icon_size]%" ChangeIconSize 16x16
+ "22x22%select.svg:$[icon_size]%" ChangeIconSize 22x22
+ "32x32%select.svg:$[icon_size]%" ChangeIconSize 32x32
+ "48x48%select.svg:$[icon_size]%" ChangeIconSize 48x48 
+ "64x64%select.svg:$[icon_size]%" ChangeIconSize 64x64
+ "96x96%select.svg:$[icon_size]%" ChangeIconSize 96x96
+ "128x128%select.svg:$[icon_size]%" ChangeIconSize 128x128

5.- Then just insert it in any apropiate place or bind it somewhere:

AddToMenu menu_fvwmConfig
+ MissingSubmenuFunction            ConfigBrowser
+ "Tapiz%wine.svg:$[icon_size]%"                    Popup WallpaperBrowser
+ "&Colorsets%wine.svg:$[icon_size]%"           Popup ColorsetBrowser
+ "&Fuente%wine.svg:$[icon_size]%"              Popup FontthemeBrowser
+ "&Decoración%wine.svg:$[icon_size]%"          Popup menu_Decorations
+ "Tamaño de iconos%select.svg:$[icon_size]%"   Popup user_IconSizeChooser
+ "Editar config%kate.svg:$[icon_size]%"            Exec exec kate --session fvwmconfig &> /dev/null
+ "\$\[FVWM_USERDIR\]%konqueror.svg:$[icon_size]%" Exec exec konqueror $[FVWM_USERDIR] &> /dev/null

Nice. Now all you have to do is to adjust the ImagePath to your svg iconset folders, and then specify the icons in a similar way that I did in the menu at step 4, above. Like “icon.svg:$[icon_size]%”. More about the svg options on man fvwm, as usual.

Regards, and thanks again for all the input. It has been a valuable source of ideas. :slight_smile:

EDIT, in case someone wants it, I will clean and package the whole config up to date soon and make it available, in case someone wants to play with it.

2nd EDIT, the config:
jesgue.homelinux.org/public/fvwm … eb.tar.bz2

I have just a question with respect to this new svg feature.
Can svg icons be used for the mouse pointer ?
The cursorstyle option seems to accept only b&w xpm in the
last unstable release.

During this week, I have been working on a patch to make
this happen. The patch is functionally ready, but it still needs
further testing as well as configure options and documentation
before I’ll send it to the workers list.

Nice idea :slight_smile:

Additionaly, I can confirm that the pseudo zoom effect works. I use something like this in fvwmbuttons:

Icon fvwm.svg:0x$[pager_sizeY]*0.35+0-4, ActiveIcon fvwm.svg:0x$[pager_sizeY]*0.4+0-4, PressIcon fvwm.svg:0x$[pager_sizeY]+2-2*0.4, \

It works beautifully. No more triplicated icons on my icon folder. This thing is really nice.