Sunday, 13 November 2011

The Great Features of KDE Workspaces and Applications Part I - Dolphin

For the first part of this blogseries I picked Dolphin. A basic application, that lets you do file management. Dolphin is very powerful application, so let's have a look at what all you can do with it.

The panels

Dolphin has four main areas. The panel on the left is your bookmarks/favorite/quickaccess places. Adding your own places is as easy as it can get - simply drag a folder and drop it there. Another way is to create it manually via panel's context menu, where you can even set your own label and icon, that's the 'My narcistic pictures' item for example. Reordering items to your own likening is again just a matter of drag and drop. You can also drag any folder/file to the places in that sidebar and it will be copied to that place. When you have some removable media, they are automatically displayed there as well and you can disconnect/eject them from the very same panel (as well as from other places).

If the drives are mounted, simple mouse hovering over the drive will show you its free space in a little bar, so you can have at least rough idea how much more data you can put on it. This places panel will stay the same throughout the whole KDE Workspace, in every open/save dialog you will have your places right there.

On the right side there's a Preview panel. But it's not just an image preview panel, it can show you much more. Selecting a mp3 will for example show you its ID3 tags, rating from Bangarang media player etc. But that's not where the fearless KDE developers stopped - you can also 'preview' the song right from the panel. That is, listen to it without opening any media player. Same goes with videos, it shows various info like dimensions, used codec and you can preview them right in the panel without the need to do pretty much anything but one click. When there's no preview available for certain file types, it will show nice shiny icon, courtesy of the Oxygen team. You can set what do you want to have preview of and also a size limit of the files. That's very useful when you don't want your resources to be busy on generating a preview of a very large image for example.

Some informations in this Preview panel appears as links. Yep, that's right - you can click it and get list of files with the same parameter. So for example you can list all photos taken by some particular camera, list all photos with some particular ISO setting, focal length, you can list all your songs by a particular author, by its codec, by its tags, you can list arbitrary images by particular resolution and so on and so on, you get the idea. This is all done thanks to Semantic Desktop implementation (which is currently the best out there), known as Nepomuk in KDE community. But more about this in some later post.

Dolphin has other panels for powerusers, they are hidden by default. There's a Terminal panel for when you need to quickly do some command-line work right at your fingertips (press F4), then we have a Folders panel, which is the classic tree-view of your folder structure and lastly there's a Search panel for doing semantic search. The position and size of the panels is fully configurable, so your Dolphin can look like this for example:

Dolphin's statusbar displays various useful informations. The leftmost text tells you how many folders and files you have in the current folder and how much space they take. Further to the right there's a slider which lets you control the size of icons in the main view. This is especially cool for when you're using Preview mode (more on that later). And then the right side features the most useful thing of the statusbar in my humble opinion - the remaining free space on the device you're currently browsing. Navigate to your flash drive and you'll immediately see how much space you have left on it.

The statusbar is also place for displaying error messages, which you can very easily copy by right clicking on them and selecting "Copy message".

The main view

And now let's take a look on what makes Dolphin so great in file management - the main view itself. The default is just what you'd expect - sorted folders and files, browsing folders and opening files is nothing special. But clicking with right mouse button on folder/file reveals some interesting features. Let's skip the obvious things like opening folder in new window or tab or adding it to places. Right from the menu you can compress whatever files/folders you have selected and you can choose either zip, rar, or tar.gz. Of course you can open the full blown dialog which lets you select different compression formats and options, where to place the archive and so on.

Dolphin also allows one to copy or move file to a desired location right from the context menu. This is very nice when you need to quickly copy/move something to your home folder or few levels deep (untill the menu fills your whole screen). It also features several last used locations, so it becomes way quicker after first time.

But for moving files around Dolphin has something better. With the "Split" button in the main toolbar you can split the main view and have {midnight|total|norton}-commander-like interface. The side that is not currently active (you are not working in) is slightly greyed out so you can tell by quick look which side you're currently controlling. There's another quite useful feature regarding file management - you can select files with the ordinary key shortcuts (holding ctrl or shift), but you can also select multiple files using just your mouse - every folder/file will show you a little plus icon in the top left corner after you move your mouse over it. Once you made your selection of files, just grab them and move, folders will automatically open if you hold your files over them (might need enabling in settings) and once you drop them, a little menu pops up letting you select the appropriate action - Copy, Move, Link or Cancel the whole action. Holding down a key while you drop your files might prevent this menu from popping up, so hold Ctrl for copy, Shift for move and Ctrl+Shift to automatically create a link upon dropping.

Besides splitting the main view, Dolphin can also have tabs, just like your browser. Simply press Ctrl+T or click on some folder with mouse wheel and there you have a new tab, right inside Dolphin.

Another great Dolphin feature is filtering. Imagine you're in a folder with thousands of files and you want to quickly filter certain files by filename. For this Dolphin has a special Filter bar, which you can turn on from the main menu or by pressing Ctrl+I. Then just type into the filter bar and files are immediately filtered as you type. Of course Dolphin includes also full searching by filename or content.

Navigation

Navigation in Dolphin is very easy and intuitive. On top of the main view there's a Location bar, which displays breadcrumb navigation. You can not only click the folder in the breadcrumb navigation, but you can also click the little arrows after each folder and that gives you quick access to subfolders of that particular folder, so you can quickly navigate to some other folder without even having to go back in you history. You can also very easily switch the Location bar into edit line by clicking on the empty space after the breadcrumb navigation, and type your own location with autocompletition, press Enter and you're there. This is especially great for accessing hidden folders on your filesystem, which on Linux have "." before their name, so for example your workspace config folder is ".kde4".

You can also navigate by using the arrow buttons in toolbar. Like in almost every KDE Application, you can very easily configure the toolbar yourself (both its position and its buttons). So you can for example add button for going one directory up or to go directly to your Home folder. All is very easy to do and very intuitive. Your Dolphin can look like this for example:

View modes

Dolphin has several view modes. The Icons view you've already seen in the previous screenshots. Another one is Details view, which shows list of files and their details next to them. Third view is Columns view. This will be very well known for OS X users - every folder openes new column. You might say that what's the point of having more than 2 columns when you won't be able to see the first one anyway. This works very similar to the breadcrumb Location bar, except it's more extended. You can move in the columns "history" with a scrollbar and see all the folders' contents at hand. Obviously you can also copy/move files between these columns.

In every view you can still select folders/files with the little plus icon which appears when you hover your mouse above the item. And in addition, you can switch on Preview mode in all three mentioned view types. Preview will simply show you preview of your files (text files, html, images etc). And by using the slider in the statusbar, you can make them larger or smaller. This setting will stay for the Preview mode, so when you exit the Preview mode, you'll have the original icon size setting (which you can change in the very same way). Also every folder (reliably) remembers it's view mode, used throughout the system. Isn't it cool?

Plugins

Dolphin is extendable by plugins. So for example you can have SVN or Git intergration right in Dolphin. This enables you to pull newest version from remote server or to push your changes to the server. Files also uses emblems to visualize changes in files. So if you have some uncommitted changes, you'll see little green arrow over the file and it's name will be in green.

You can also extend Dolphin's functionality with your own actions (not too hard to do, but requires some knowledge). We're using this in KDE-Telepathy where we add an action to the context menu that enables you to send files to your IM contact.

Last words...

So you see, Dolphin is simple yet very powerful and fully customizable file management application with "Simply have it your way" idea. And there's much more. We'll get back to Dolphin in other parts of this series, when we'll take a look at features like KIO or Nepomuk browsing.

In the near future we'll all see Dolphin 2.0, which will be included in the 4.8 release in January. I've been using the development version for quite some time and I must say - this is really something to look forward to! More details are in Peter Penz's blogpost. And we'll probably look at the new view system after the 4.8 release.

And what's your favorite feature in Dolphin? How do you use Dolphin and how it helps you get through everyday's work with KDE Workspace? Share your thoughts below...

14 Comments

Dolphin is indeed nice :)

On my system (KDE 4.7.3 on Archlinux), it seems to believe that jpegs are movies, it shows a progress bar and a play button with them. And if fails displaying the exif data. Any special plugin required for that to happen?

@D - I don't think you need any special plugin, but try right-click on the panel and select 'Configure' and select which data you want to display. I'm in fact using some older config for Dolphin, so this might not be turned on by default :)

One question - is there a way we could help to make Preview panel look great? I mean - current way of displaying data as simple list, even displaying width and height as a separate lines, having starring on the bottom of the list, video duration displayed in seconds etc. I bet i can be done way better :)

@Lukas D - there most definitely is! The best way to get these solved is to create patches and send them in. Opening bugreports at bugs.kde.org is also very good idea, although keep in mind that Dolphin's main part is now under complete rewrite, so it might not get as big attention from the devs as one would like :)

If you know C++/Qt4, sending patches is the best way to get it included - open a bug report and attach the patch. If you can't program, opening bug reports is the right way to go :)

So I guess to see what is available for other files, it is required to check manually... Maybe adding a good set of datas to show for known mimetypes would be smart. Also, some indication of this option would be smart, gwenview have a link to "more..." under the displayed data.

The dialog with the available datas is a mixed esperience: it mixes sources, making it quite difficult to chose. And it should have a search bar!

Thanks a lot for this nice overview! There are still a lot of issues open for Dolphin 2.0 but I hope I can finish everything in time... I think in Dolphin 2.0 the grouping feature will be something that people might like. Well, we'll see... :-)

I really like Dolphin but it is 2 things that I miss:
- Creation date and Modification date for files
- A size column which show the folder size too. Somebody wrote that for Windows (GNU GPL) but think about Linux (http://foldersize.sourceforge.net/about.html)