<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Thomas Fischer&#039;s Weblog</title>
	<atom:link href="http://tfischernet.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://tfischernet.wordpress.com</link>
	<description>Life, Linux, LaTeX</description>
	<lastBuildDate>Thu, 26 Jan 2012 12:57:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='tfischernet.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Thomas Fischer&#039;s Weblog</title>
		<link>http://tfischernet.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://tfischernet.wordpress.com/osd.xml" title="Thomas Fischer&#039;s Weblog" />
	<atom:link rel='hub' href='http://tfischernet.wordpress.com/?pushpress=hub'/>
		<item>
		<title>More on LaTeX Beamer: Linking images to an enlarged version</title>
		<link>http://tfischernet.wordpress.com/2010/09/07/more-on-latex-beamer-linking-images-to-an-enlarged-version/</link>
		<comments>http://tfischernet.wordpress.com/2010/09/07/more-on-latex-beamer-linking-images-to-an-enlarged-version/#comments</comments>
		<pubDate>Tue, 07 Sep 2010 16:05:30 +0000</pubDate>
		<dc:creator>Thomas Fischer</dc:creator>
				<category><![CDATA[LaTeX]]></category>

		<guid isPermaLink="false">http://tfischernet.wordpress.com/?p=487</guid>
		<description><![CDATA[If you have read my previous posting on LaTeX Beamer, you may remember that there were two example slides taken from a lecture of mine. Most slides for this lecture have a similar layout, consisting of a three-column table with fixed column widths. For photos to be shown in the right column, details become beyond [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=487&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>If you have read <a href="http://tfischernet.wordpress.com/2010/08/17/some-new-latex-beamer-tricks/">my previous posting on LaTeX Beamer</a>, you may remember that there were two example slides taken from a lecture of mine. Most slides for this lecture have a similar layout, consisting of a three-column table with fixed column widths. For photos to be shown in the right column, details become beyond recognition if the image or photo has a landscape-like aspect ratio or is scaled down by a large factor.</p>
<p>To circumvent this problem I came up with the idea of showing the small photo in full-screen size once clicked on; another click brings the viewer back to the original view. In terms of LaTeX, Beamer and PDF this means adding a new slide containing only the up-scaled photo and creating click-sensitive hyper-references (a.k.a. links) in both directions between the small image on the regular slide and the big-photo-only slide. As the big-photo-only slide should not interfere with the presentation if you do not click on the small photo, those special slides have to be appended at the very end of your presentation.</p>
<p>Thus, to solve the problem stated above, three subproblems have to be solved:</p>
<ol>
<li>Automatically creating a new slide at the end of your presentation</li>
<li>Showing the photo in full-screen size</li>
<li>Adding clickable links to jump between the regular slide and the big-photo-only slide</li>
</ol>
<p>Of course, it should be as flexible and simple for the user as possible, so that it can be included in existing slide sets if necessary.</p>
<h2>More Details</h2>
<p>The process of creating slides for photos requires to scan through the document and memorize which photos to link to. This &#8220;memorization&#8221; is implemented in a LaTeX-like way by writing to a special <tt>.aux</tt> file using <tt>\newwrite</tt> and related commands. At the beginning, the file is opened for writing:</p>
<pre>\newcounter{linkimagecounter}
\setcounter{linkimagecounter}{0}

\AtBeginDocument{%
% open file linkimage.aux for writing images' filenames to it
\newwrite\linkimageoutputstream
\immediate\openout\linkimageoutputstream=linkimage.aux
}</pre>
<p>The <tt>.aux</tt> file only stores image filenames. The links are later generated using the <tt>linkimagecounter</tt> counter, so that the first link always points to the first file etc.</p>
<p>Whenever there is an image to link, the user uses the <tt>\linkimage</tt> command:</p>
<pre>% use this command to link some content to a large picture at the end of your slides
\newcommand{\linkimage}[2]{%
% create link anchor where link from document's end points to
\hypertarget{linkimagerefbackward\arabic{linkimagecounter}}{%
% create link pointing forward to link source in frames at document's end
\hyperlink{linkimagerefforward\arabic{linkimagecounter}}{%
#1%
}} % close both hypertarget and hyperlink
\immediate\write\linkimageoutputstream{#2}
% step counter
\addtocounter{linkimagecounter}{1}
}</pre>
<p>This command takes two arguments: First, the object which is the link source. This can be for example an <tt>\includegraphics</tt>, a <tt>\copyrightbox</tt>, or a <tt>\beamerbutton</tt> command. The second argument is the image&#8217;s filename; no includegraphics statement should be used here, as this will be called automatically when generating the big-photo-only slides.<br />Example:<br /><tt>\linkimage{\copyrightbox{\includegraphics[height=3em]{photo2}}{Thomas Fischer}}{photo2}</tt><br /><tt>\linkimage{\beamerbutton{Show Photo}}{photo2}</tt></p>
<p>Finally, at the end of your slide set after the slide with &#8220;questions now, please&#8221;, you have to call <tt>\flushlinkimages</tt> which will insert all big-photo-only slides.</p>
<pre>% call this command at the very end of your presentation (even after "Now questions, please" slide)
\newcommand{\flushlinkimages}{%
% internal counter for loop over all linked images
\newcounter{linkimagetotal}
\setcounter{linkimagetotal}{\value{linkimagecounter}}
\setcounter{linkimagecounter}{0}

% close auxiliary file linkimage.aux and re-open it again for reading
\immediate\closeout\linkimageoutputstream
\newread\linkimageinputstream
\immediate\openin\linkimageinputstream=linkimage.aux

% loop over all linked images ...
\whiledo{\value{linkimagecounter}&lt;\value{linkimagetotal}}{%
% read one line (one image filename) at a time (and strip new line character at end)
\endlinechar=-1\immediate\read\linkimageinputstream to \linkimagefilename
% create a new frame per image, center content
\begin{frame}\begin{center}
% create link pointing backward to link source in main document
\hyperlink{linkimagerefbackward\arabic{linkimagecounter}}{%
% create link anchor where link from main document points to
\hypertarget{linkimagerefforward\arabic{linkimagecounter}}{%
\includegraphics[width=\linewidth,height=0.75\paperheight,keepaspectratio]{\linkimagefilename}%
}% hypertarget
}% hyperlink
\end{center}\end{frame}
% step counter
\addtocounter{linkimagecounter}{1}
} % whiledo
% close file
\immediate\closein\linkimageinputstream
}</pre>
<p>In above code, first some counters are initialized. As you remember, we use counters to match images and hyper-references. Next we close our <tt>.aux</tt> file (still open for writing) and open it for reading. This makes a single LaTeX run sufficient to generate the extra slides, as the <tt>.aux</tt> file is written and read in one pass.</p>
<p>The interesting part is the loop, going through all photos. In each iteration, one filename is read from the <tt>.aux</tt> file and a simple frame environment is created holding an <tt>\includegraphics</tt> command maximizing the photo while keeping its aspect ratio. You may have to adjust the <tt>height</tt> parameter for your personal Beamer theme. Hyper-references (<tt>\hyperlink</tt> and <tt>\hypertarget</tt>) are generated as well, corresponding the commands created in the original <tt>\linkimage</tt> call.</p>
<p>As a clarification: All the LaTeX code above should be placed in a class or style file to be included in your presentation. Within your presentation, you should only use <tt>\linkimage</tt> and <tt>\flushlinkimages</tt>, everything else happens automatically.
</p>
<p>I would be interested in hearing from you if you see ways to make it more efficient, simpler, or more flexible.</p>
<br />Filed under: <a href='http://tfischernet.wordpress.com/category/latex/'>LaTeX</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tfischernet.wordpress.com/487/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tfischernet.wordpress.com/487/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tfischernet.wordpress.com/487/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tfischernet.wordpress.com/487/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tfischernet.wordpress.com/487/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tfischernet.wordpress.com/487/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tfischernet.wordpress.com/487/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tfischernet.wordpress.com/487/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tfischernet.wordpress.com/487/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tfischernet.wordpress.com/487/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tfischernet.wordpress.com/487/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tfischernet.wordpress.com/487/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tfischernet.wordpress.com/487/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tfischernet.wordpress.com/487/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=487&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tfischernet.wordpress.com/2010/09/07/more-on-latex-beamer-linking-images-to-an-enlarged-version/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tfischernet</media:title>
		</media:content>
	</item>
		<item>
		<title>Some new LaTeX Beamer Tricks</title>
		<link>http://tfischernet.wordpress.com/2010/08/17/some-new-latex-beamer-tricks/</link>
		<comments>http://tfischernet.wordpress.com/2010/08/17/some-new-latex-beamer-tricks/#comments</comments>
		<pubDate>Tue, 17 Aug 2010 18:52:04 +0000</pubDate>
		<dc:creator>Thomas Fischer</dc:creator>
				<category><![CDATA[LaTeX]]></category>

		<guid isPermaLink="false">http://tfischernet.wordpress.com/?p=469</guid>
		<description><![CDATA[The Swedish summer fades into a rainy autumn, which means it is time again to prepare lectures for the coming months. As a long-time LaTeX user, I use the LaTeX Beamer package for all my slides. During the last few months, I have developed some new helper commands and environments for LaTeX slides, which I [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=469&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The Swedish summer fades into a rainy autumn, which means it is time again to prepare lectures for the coming months. As a long-time LaTeX user, I use the LaTeX Beamer package for all my slides. During the last few months, I have developed some new helper commands and environments for LaTeX slides, which I want to present here.</p>
<p style="text-align:center;"><a href="http://tfischernet.files.wordpress.com/2010/08/history11.png"><img title="Example slide made with LaTeX using Beamer" src="http://tfischernet.files.wordpress.com/2010/08/history11.png?w=302&#038;h=226" alt="" width="302" height="226" /></a><a href="http://tfischernet.files.wordpress.com/2010/08/history2.png"><img title="Example slide made with LaTeX using Beamer" src="http://tfischernet.files.wordpress.com/2010/08/history2.png?w=302&#038;h=226" alt="" width="302" height="226" /></a></p>
<h2>The <tt>multiframe</tt> environment</h2>
<p>The Beamer package&#8217;s <tt>frame</tt> environment has the option <tt>allowframebreaks</tt> to automatically split a frame once it becomes full or split frames manually using the <tt>\framebreak</tt> command. Although this solution works, it has two drawbacks:</p>
<ol>
<li>No animation steps can be included using e.g. <tt>\only</tt> or <tt>\pause</tt>.</li>
<li>The first frame is such a sequence of “split” frames sets its content with a slightly different vertical offset. This is very annoying, because flipping between slides makes the content jump up and down.</li>
</ol>
<p>Therefore I designed my own solution. Although it is not perfect, it does not show above flaws. The idea is to define a new environment called <tt>multiframe</tt> via <tt>newenvironment</tt> and accept one optional parameter. This new environment acts as a replacement for the known <tt>frame</tt> environment. An important difference is the optional parameter: Whereas Beamer&#8217;s original <tt>frame</tt> parameter accepts a list of options such as <tt>allowframebreaks</tt> or <tt>fragile</tt>, <tt>multiframe</tt>&#8216;s parameter is the frame&#8217;s title. Thus, the frame title is no longer set via <tt>\frametitle</tt> but with this parameter.</p>
<p>Now, the trick to get a sequence of frames is to omit the optional parameter with subsequent frames. In this case, the <tt>multiframe</tt> environment assumes that this new frame is part of sequence, reuses the previous frame title, but increases the sequence counter as shown in the title.</p>
<pre>% new counter to now which frame it is within the sequence
\newcounter{multiframecounter}
% initialize buffer for previously used frame title
\gdef\lastframetitle{\textit{undefined}}
% new environment for a multi-frame
\newenvironment{multiframe}[1][]{%
\ifthenelse{\isempty{#1}}{%
% if no frame title was set via optional parameter,
% only increase sequence counter by 1
\addtocounter{multiframecounter}{1}%
}{%
% new frame title has been provided, thus
% reset sequence counter to 1 and buffer frame title for later use
\setcounter{multiframecounter}{1}%
\gdef\lastframetitle{#1}%
}%
% start conventional frame environment and
% automatically set frame title followed by sequence counter
\begin{frame}%
\frametitle{\lastframetitle~{\normalfont(\arabic{multiframecounter})}}%
}{%
\end{frame}%
}</pre>
<p>Drawback with this solution is that it creates a completely new frame, whereas <tt>\framebreak</tt> can be used (nearly) everywhere in the frame. For example, you can use <tt>\framebreak</tt> inside an <tt>itemize</tt> list and split this list. In my solution, you have to close all environments up to the current <tt>multiframe</tt> and open again all environments as desired.</p>
<h3>Example</h3>
<p>Without my new environment, you would set plain, single frames using the <tt>frame</tt> environment. Nothing changes here:</p>
<pre>\begin{frame}
\frametitle{The Frame's Title}
Some content \ldots
\end{frame}</pre>
<p>Things get different for sequences of frames. With plain LaTeX Beamer, you would do something like this:</p>
<pre>\begin{frame}[allowframebreaks]
\frametitle{The Frame's Title}
Some content \ldots
\framebreak
More content on next page
\end{frame}</pre>
<p>With my new environment, the corresponding solution would look like this:</p>
<pre>\begin{multiframe}[The Frame's Title]
Some content \ldots
\only&lt;2&gt;{Only seen in animation step}
\end{multiframe}
% this is like a frame break
\begin{multiframe}% no optional parameter here!
More content on next page
\end{multiframe}</pre>
<h2>The <tt>copyrightbox</tt> Command</h2>
<p>When you include photos, images, or drawing on your slides, you should always give credit to the original creator and show license and origin. Some licenses require you to state where you got the image from and which rights have been granted. For someone who wants to reuse your slides or parts of it, it clarifies under which conditions the materials are accessible. From a legal aspect, it suffices in most cases to show all relevant information next to the included image, or collected at the end of your document in a single list.</p>
<p>In the next-to-the-image case, it is common to set the information text in fine print along the bottom or right border of the image. But how to do it in LaTeX? For the solution I am presenting here, I am using a <tt>tikzpicture</tt> environment to set both the image and the accompanying text in two nodes next to each other. The new command <tt>\copyrightbox</tt> takes two mandatory parameters and one optional parameter. The first mandatory parameter is supposed to contain the command showing the image or drawing, e.g. an <tt>\includegraphics</tt> command. The second parameter takes the copyright statement and is usually plain text. The optional parameter is a single character describing the position of the text in relation to the image. Possible values include <tt>b</tt> (below), <tt>l</tt> (left), and <tt>r</tt> (right), where “right” is default if nothing else is specified.</p>
<p>Now, the tricky part is that the image should determine the <tt>copyrightbox</tt>&#8216;s size and the text should follow this format. In particular, if the text is below the image, the text (more specific, the node containing the text) should be node wider than the image (more specific, the node containing the image); instead it should wrap around consuming several lines if necessary. The same applies to the height in case of left or right alignment. To get the width and height of a node in Ti<i>k</i>Z, I had to search for a proper solution on the Internet resulting in a quite long statement for commands <tt>ydiff</tt> and <tt>xdiff</tt>.</p>
<pre>\makeatletter
\newdimen\tu@tmpa%
\newdimen\ydiffl%
\newdimen\xdiffl%
\newcommand\ydiff[2]{%
    \coordinate (tmpnamea) at (#1);%
    \coordinate (tmpnameb) at (#2);%
    \pgfextracty{\tu@tmpa}{\pgfpointanchor{tmpnamea}{center}}%
    \pgfextracty{\ydiffl}{\pgfpointanchor{tmpnameb}{center}}%
    \advance\ydiffl by -\tu@tmpa%
}
\newcommand\xdiff[2]{%
    \coordinate (tmpnamea) at (#1);%
    \coordinate (tmpnameb) at (#2);%
    \pgfextractx{\tu@tmpa}{\pgfpointanchor{tmpnamea}{center}}%
    \pgfextractx{\xdiffl}{\pgfpointanchor{tmpnameb}{center}}%
    \advance\xdiffl by -\tu@tmpa%
}
\makeatother
\newcommand{\copyrightbox}[3][r]{%
\begin{tikzpicture}%
\node[inner sep=0pt,minimum size=2em](ciimage){#2};
\usefont{OT1}{phv}{n}{n}\fontsize{4}{4}\selectfont
\ydiff{ciimage.south}{ciimage.north}
\xdiff{ciimage.west}{ciimage.east}
\ifthenelse{\equal{#1}{r}}{%
\node[inner sep=0pt,right=1ex of ciimage.south east,anchor=north west,rotate=90]%
{\raggedleft\color{black!33}\parbox{\the\ydiffl}{\raggedright{}#3}};%
}{%
\ifthenelse{\equal{#1}{l}}{%
\node[inner sep=0pt,right=1ex of ciimage.south west,anchor=south west,rotate=90]%
{\raggedleft\color{black!33}\parbox{\the\ydiffl}{\raggedright{}#3}};%
}{%
\node[inner sep=0pt,below=1ex of ciimage.south west,anchor=north west]%
{\raggedleft\color{black!33}\parbox{\the\xdiffl}{\raggedright{}#3}};%
}
}
\end{tikzpicture}
}</pre>
<h3>Example</h3>
<p>To use this new command, you simply set the mandatory parameters with some useful values:</p>
<pre>\copyrightbox{\includegraphics[width=0.5\linewidth]{images/osmphoto}}{CC-BY-SA, Thomas Fischer}
\copyrightbox[b]{\includegraphics[width=0.5\linewidth]{images/osmphoto}}{CC-BY-SA, Thomas Fischer}</pre>
<p>The first example above creates a <tt>copyrightbox</tt> containing an image as loaded from <tt>images/osmphoto.jpg</tt> (pdflatex searches for known extensions if you do not specify one), scaled to 50% of the line width, and the copyright statement “CC-BY-SA, Thomas Fischer”. The text will be written on the image&#8217;s right side, starting in the lower right corner going upwards. In the second line, the text&#8217;s alignment is changed to <tt>b</tt>: Here the text starts in the lower left corner and goes to the right as usual.</p>
<p>Be aware that the <tt>copyrightbox</tt>&#8216;s total size is a combination of both the image and text. It will thus be larger than the image alone (as specified with <tt>width</tt> or <tt>height</tt>).</p>
<br />Filed under: <a href='http://tfischernet.wordpress.com/category/latex/'>LaTeX</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tfischernet.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tfischernet.wordpress.com/469/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tfischernet.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tfischernet.wordpress.com/469/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tfischernet.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tfischernet.wordpress.com/469/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tfischernet.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tfischernet.wordpress.com/469/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tfischernet.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tfischernet.wordpress.com/469/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tfischernet.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tfischernet.wordpress.com/469/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tfischernet.wordpress.com/469/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tfischernet.wordpress.com/469/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=469&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tfischernet.wordpress.com/2010/08/17/some-new-latex-beamer-tricks/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tfischernet</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2010/08/history11.png" medium="image">
			<media:title type="html">Example slide made with LaTeX using Beamer</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2010/08/history2.png" medium="image">
			<media:title type="html">Example slide made with LaTeX using Beamer</media:title>
		</media:content>
	</item>
		<item>
		<title>KParts Browser Plugin</title>
		<link>http://tfischernet.wordpress.com/2010/05/22/kparts-browser-plugin/</link>
		<comments>http://tfischernet.wordpress.com/2010/05/22/kparts-browser-plugin/#comments</comments>
		<pubDate>Sat, 22 May 2010 17:09:46 +0000</pubDate>
		<dc:creator>Thomas Fischer</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://tfischernet.wordpress.com/?p=443</guid>
		<description><![CDATA[One of the biggest advantages of Konqueror is that it smoothly integrates with the KDE desktop. Any file type can be opened within Konqueror as it loads KParts modules to handle non-HTML files. For example, to display PDF files within the browser, the embeddable part from Okular is used. Unfortunately, this technology is KDE-only, at [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=443&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>One of the biggest advantages of <a href="http://www.konqueror.org/">Konqueror</a> is that it smoothly integrates with the <a href="http://www.kde.org/">KDE desktop</a>. Any file type can be opened within Konqueror as it loads <a href="http://techbase.kde.org/Development/Architecture/KDE4/KParts">KParts</a> modules to handle non-HTML files. For example, to display PDF files within the browser, the embeddable part from <a href="http://okular.kde.org/">Okular</a> is used. Unfortunately, this technology is KDE-only, at least no other browser supports KParts.</p>
<p>On the other side, <a href="http://en.wikipedia.org/wiki/NPAPI#Browser_support">most browsers</a> support a <a href="http://en.wikipedia.org/wiki/NPAPI">plugin technology</a> originally coming from the good ol&#8217; Netscape 2.0. Most prominently, it is used for the Flash plugin from <a href="http://en.wikipedia.org/wiki/Adobe_Flash">Adobe</a> and the PDF plugin as part of the of Acrobat Reader.</p>
<p>So, why not combine both technologies to use KDE parts in &#8220;normal&#8221; browsers?<br />
With quite little effort, based on <a href="http://qt.nokia.com/products/appdev/add-on-products/catalog/4/Utilities/qtbrowserplugin">some examples</a> by <a href="http://qt.nokia.com/">Qt/Nokia</a>, I was able to hack a proof of concept: A small plugin which can be used with browsers such as Mozilla Firefox, Opera, <a href="http://code.google.com/p/arora/">Arora</a>, or Chromium.</p>
<p>So far, the plugin supports PDF and PostScript files (via Okular), OpenDocument text, presentation, and spreadsheet (via <a href="http://koffice.kde.org/">KOffice</a>) and MP3/OggVorbis files (via <a href="http://www.dragonplayer.net/">DragonPlayer</a>). More file types can be added with only a few lines of code, given that there is a KDE part installed which can handle this file.</p>
<p>Interested? Visit the <a href="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/">project&#8217;s homepage</a> and try it out yourself!</p>
<p><a href="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/firefox-kparts.png"><img style="border:solid 1px #666;margin:1ex;padding:1ex;" src="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/th_firefox-kparts.png" width="161" height="89" alt="" /></a><br />
<a href="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/firefox-pdf-full.png"><img style="border:solid 1px #666;margin:1ex;padding:1ex;" src="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/th_firefox-pdf-full.png" width="145" height="161" alt="" /></a><br />
<a href="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/firefox-pdf.png"><img style="border:solid 1px #666;margin:1ex;padding:1ex;" src="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/th_firefox-pdf.png" width="145" height="161" alt="" /></a><br />
<a href="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/opera-pdf-full.png"><img style="border:solid 1px #666;margin:1ex;padding:1ex;" src="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/th_opera-pdf-full.png" width="135" height="162" alt="" /></a><br />
<a href="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/opera-pdf.png"><img style="border:solid 1px #666;margin:1ex;padding:1ex;" src="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/th_opera-pdf.png" width="135" height="162" alt="" /></a></p>
<br />Filed under: <a href='http://tfischernet.wordpress.com/category/kde/'>KDE</a>, <a href='http://tfischernet.wordpress.com/category/linux/'>Linux</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tfischernet.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tfischernet.wordpress.com/443/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tfischernet.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tfischernet.wordpress.com/443/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tfischernet.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tfischernet.wordpress.com/443/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tfischernet.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tfischernet.wordpress.com/443/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tfischernet.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tfischernet.wordpress.com/443/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tfischernet.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tfischernet.wordpress.com/443/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tfischernet.wordpress.com/443/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tfischernet.wordpress.com/443/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=443&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tfischernet.wordpress.com/2010/05/22/kparts-browser-plugin/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tfischernet</media:title>
		</media:content>

		<media:content url="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/th_firefox-kparts.png" medium="image" />

		<media:content url="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/th_firefox-pdf-full.png" medium="image" />

		<media:content url="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/th_firefox-pdf.png" medium="image" />

		<media:content url="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/th_opera-pdf-full.png" medium="image" />

		<media:content url="http://www.unix-ag.uni-kl.de/~fischer/kpartsplugin/th_opera-pdf.png" medium="image" />
	</item>
		<item>
		<title>Recording VoIP Phone Calls with ALSA</title>
		<link>http://tfischernet.wordpress.com/2010/03/20/recording-voip-phone-calls-with-alsa/</link>
		<comments>http://tfischernet.wordpress.com/2010/03/20/recording-voip-phone-calls-with-alsa/#comments</comments>
		<pubDate>Sat, 20 Mar 2010 12:00:00 +0000</pubDate>
		<dc:creator>Thomas Fischer</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://tfischernet.wordpress.com/?p=429</guid>
		<description><![CDATA[Recently I stumbled upon the problem of how to record a phone call when using Skype (or any other VoIP technology) under Linux. For Windows and Mac OS X, there is a bunch of commercial software available, but nothing for Linux. But hey, it is open source and everything is documented, so why not figuring [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=429&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Recently I stumbled upon the problem of how to record a phone call when using Skype (or any other VoIP technology) under Linux. For Windows and Mac OS X, there is a bunch of commercial software available, but nothing for Linux. But hey, it is open source and everything is documented, so why not figuring out how to do it anyway?</p>
<p>After searching for options, I found a pointer to the <a href="http://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html#pcm_dev_names_tee"><tt>tee</tt></a> device, which works similar like the <tt>tee</tt> command on the command line: You can transparently pipe data through it and a copy of all data will be written to a file as well. A new ALSA output device can be configured in <tt>~/.asoundrc</tt> using the <tt>tee</tt> device. It can either record the <tt>default</tt> device or a specific device:</p>
<pre>
pcm.tee00 {
        type empty
        slave.pcm "tee:'plughw:0,0','/tmp/out0.wav',wav"
}
</pre>
<p>Above example will save all audio recording going through <tt>plughw:0,0</tt> to file <tt>/tmp/out0.wav</tt>. If you have different recording and playback devices (e.g. an USB microphone and standard speakers), add multiple section with the corresponding <tt>plughw</tt> number (also change the device&#8217;s name, e.g. <tt>pcm.tee10</tt>).<br />
In the VoIP application, you have to set the new sound devices for microphone and speakers accordingly:</p>
<p>
<a href="http://tfischernet.files.wordpress.com/2010/03/skypeaudiosettings.png"><img src="http://tfischernet.files.wordpress.com/2010/03/skypeaudiosettings.png?w=632&#038;h=322" alt="Skype Audio Settings" title="Skype Audio Settings" width="632" height="322" class="aligncenter size-medium wp-image-431" /></a><br />
(numbers and names of devices may differ for you!)</p>
<p>If you make a test call, you will get two output files: one with your microphone&#8217;s recording and one with your speaker&#8217;s recording. Using a sound editor like Audacity or SoX, you can edit and merge both files.</p>
<p>This approach, however, has one drawback. Every time an application &#8220;opens&#8221; a sound device, the output file will be recreated and the previous recording will be lost. With Skype, the hangup sound at the end of the recording is such a case. I haven&#8217;t found out if you can configure ALSA&#8217;s <tt>tee</tt> device to append to a file instead of overwriting it, but the solution I came up with is to copy the output files to a different location before the phone call is over. To automatize the process, I wrote the following shell script:</p>
<pre>
#!/bin/sh

while true ; do
        timestamp=$(date '+%Y%m%d-%H%M%S')
        for wav in /tmp/out*.wav ; do
                test -f "$wav" || break
                newwav="$HOME/out/"$(echo "$wav" | sed -e 's/\/tmp\///;s/.wav$/-'$timestamp'.wav/')
                echo "Copying  $wav  to  $newwav"
                cp "$wav" "$newwav"
        done
        sleep 10
done
</pre>
<p>When running, it will copy every 10 seconds all output wav files from <tt>/tmp/</tt> to the <tt>out/</tt> directory in your home and append a time stamp to the file name. You simply start this script before starting the phone call and exit it with Ctrl+C. Then, the largest of files <tt>out0*.wav</tt> or <tt>out1*.wav</tt>, respectively, in the <tt>out</tt> directory will be your microphone or speaker recording, respectively.</p>
<br />Filed under: <a href='http://tfischernet.wordpress.com/category/linux/'>Linux</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tfischernet.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tfischernet.wordpress.com/429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tfischernet.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tfischernet.wordpress.com/429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tfischernet.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tfischernet.wordpress.com/429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tfischernet.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tfischernet.wordpress.com/429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tfischernet.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tfischernet.wordpress.com/429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tfischernet.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tfischernet.wordpress.com/429/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tfischernet.wordpress.com/429/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tfischernet.wordpress.com/429/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=429&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tfischernet.wordpress.com/2010/03/20/recording-voip-phone-calls-with-alsa/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tfischernet</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2010/03/skypeaudiosettings.png" medium="image">
			<media:title type="html">Skype Audio Settings</media:title>
		</media:content>
	</item>
		<item>
		<title>Schnee zu Neujahr</title>
		<link>http://tfischernet.wordpress.com/2010/01/02/schnee-zu-neujahr/</link>
		<comments>http://tfischernet.wordpress.com/2010/01/02/schnee-zu-neujahr/#comments</comments>
		<pubDate>Sat, 02 Jan 2010 13:15:18 +0000</pubDate>
		<dc:creator>Thomas Fischer</dc:creator>
				<category><![CDATA[Schweden]]></category>
		<category><![CDATA[Skövde]]></category>
		<category><![CDATA[neujahr]]></category>
		<category><![CDATA[schnee]]></category>

		<guid isPermaLink="false">http://tfischernet.wordpress.com/?p=417</guid>
		<description><![CDATA[Das schöne an Schweden ist ja, dass es meistens mehr Schnee als in Deutschland gibt. Ungefähr seit dem 3.&#160;Advent liegt hier in Skövde Schnee und ab und zu kommt noch was oben drauf&#8230; Wenn mal die Sonne scheint, muss man natürlich gleich die Gelegenheit nutzen und raus an die frische (sprich: eiskalte) Luft gehen. Posted [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=417&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Das schöne an Schweden ist ja, dass es meistens mehr Schnee als in Deutschland gibt. Ungefähr seit dem 3.&nbsp;Advent liegt hier in Skövde Schnee und ab und zu kommt noch was oben drauf&#8230;</p>
<p>Wenn mal die Sonne scheint, muss man natürlich gleich die Gelegenheit nutzen und raus an die frische (sprich: eiskalte) Luft gehen.</p>
<p><a href="http://tfischernet.files.wordpress.com/2010/01/20100102-skovde-0231.jpg"><img src="http://tfischernet.files.wordpress.com/2010/01/20100102-skovde-0231.jpg?w=700&#038;h=524" alt="" title="Schneelandschaft in Skövde" width="700" height="524" class="aligncenter size-full wp-image-421" /></a><br />
<a href="http://tfischernet.files.wordpress.com/2010/01/20100102-skovde-026.jpg"><img src="http://tfischernet.files.wordpress.com/2010/01/20100102-skovde-026.jpg?w=700&#038;h=525" alt="" title="Schneelandschaft in Skövde" width="700" height="525" class="aligncenter size-full wp-image-422" /></a><br />
<a href="http://tfischernet.files.wordpress.com/2010/01/20100102-skovde-036.jpg"><img src="http://tfischernet.files.wordpress.com/2010/01/20100102-skovde-036.jpg?w=700&#038;h=525" alt="" title="Schneelandschaft in Skövde" width="700" height="525" class="aligncenter size-full wp-image-423" /></a><br />
<a href="http://tfischernet.files.wordpress.com/2010/01/20100102-skovde-081.jpg"><img src="http://tfischernet.files.wordpress.com/2010/01/20100102-skovde-081.jpg?w=700&#038;h=559" alt="" title="Es ist kalt" width="700" height="559" class="aligncenter size-full wp-image-425" /></a></p>
<br />Posted in Schweden, Skövde Tagged: neujahr, schnee <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tfischernet.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tfischernet.wordpress.com/417/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tfischernet.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tfischernet.wordpress.com/417/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tfischernet.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tfischernet.wordpress.com/417/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tfischernet.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tfischernet.wordpress.com/417/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tfischernet.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tfischernet.wordpress.com/417/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tfischernet.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tfischernet.wordpress.com/417/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tfischernet.wordpress.com/417/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tfischernet.wordpress.com/417/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=417&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tfischernet.wordpress.com/2010/01/02/schnee-zu-neujahr/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tfischernet</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2010/01/20100102-skovde-0231.jpg" medium="image">
			<media:title type="html">Schneelandschaft in Skövde</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2010/01/20100102-skovde-026.jpg" medium="image">
			<media:title type="html">Schneelandschaft in Skövde</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2010/01/20100102-skovde-036.jpg" medium="image">
			<media:title type="html">Schneelandschaft in Skövde</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2010/01/20100102-skovde-081.jpg" medium="image">
			<media:title type="html">Es ist kalt</media:title>
		</media:content>
	</item>
		<item>
		<title>Mounting devices in KDE without Konqueror, Dolphin, or digiKam &#8230;</title>
		<link>http://tfischernet.wordpress.com/2009/11/09/mounting-devices-in-kde-without/</link>
		<comments>http://tfischernet.wordpress.com/2009/11/09/mounting-devices-in-kde-without/#comments</comments>
		<pubDate>Mon, 09 Nov 2009 22:43:16 +0000</pubDate>
		<dc:creator>Thomas Fischer</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[KDE]]></category>
		<category><![CDATA[konqueror]]></category>
		<category><![CDATA[mount]]></category>
		<category><![CDATA[dolphin]]></category>
		<category><![CDATA[digikam]]></category>
		<category><![CDATA[kdialog]]></category>
		<category><![CDATA[device]]></category>
		<category><![CDATA[usb]]></category>
		<category><![CDATA[konsole]]></category>

		<guid isPermaLink="false">http://tfischernet.wordpress.com/?p=406</guid>
		<description><![CDATA[KDE&#160;4 has this nice plasma widget called &#8216;device notifier&#8217;, which shows attached devices such as USB flash drives, CD/DVD drives, or digital cameras. Clicking on this icon shows all attached devices, in my example it is a single USB flash drive named &#8217;256MThFisch&#8217;. Clicking on such a device brings up a list of possible actions, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=406&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.kde.org/">KDE&nbsp;4</a> has this nice plasma widget called &#8216;device notifier&#8217;, which shows attached devices such as USB flash drives, CD/DVD drives, or digital cameras.</p>
<div id="attachment_389" class="wp-caption aligncenter" style="width: 56px"><a href="http://tfischernet.files.wordpress.com/2009/11/mounting1.png"><img src="http://tfischernet.files.wordpress.com/2009/11/mounting1.png?w=700" alt="Device Notifier" title="Device Notifier"   class="size-full wp-image-389" /></a><p class="wp-caption-text">Device Notifier</p></div>
<p>Clicking on this icon shows all attached devices, in my example it is a single USB flash drive named &#8217;256MThFisch&#8217;.</p>
<div id="attachment_391" class="wp-caption aligncenter" style="width: 369px"><a href="http://tfischernet.files.wordpress.com/2009/11/mounting3.png"><img src="http://tfischernet.files.wordpress.com/2009/11/mounting3.png?w=700" alt="Device Notifier plasma widget" title="Device Notifier plasma widget"   class="size-full wp-image-391" /></a><p class="wp-caption-text">Device Notifier plasma widget</p></div>
<p>Clicking on such a device brings up a list of possible actions, e.g. to browse the files with <a href="http://dolphin.kde.org/">Dolphin</a> or <a href="http://konqueror.kde.org/">Konqueror</a>, downloading all photos with <a href="http://www.digikam.org/">digiKam</a>, or playing music titles with <a href="http://amarok.kde.org/">Amarok</a>.</p>
<div id="attachment_393" class="wp-caption aligncenter" style="width: 431px"><a href="http://tfischernet.files.wordpress.com/2009/11/mounting12.png"><img src="http://tfischernet.files.wordpress.com/2009/11/mounting12.png?w=700" alt="List of actions with device" title="List of actions with device"   class="size-full wp-image-393" /></a><p class="wp-caption-text">List of actions with device</p></div>
<p>Well, this is quite nice for users relying on KDE software only. But what happens if you are a power-user, using terminals such as <a href="http://konsole.kde.org/">Konsole</a>? Whenever you want to mount a device, you have to start an application such as Dolphin, Konqueror, or digiKam even if you do not want to use it &#8230;</p>
<h3>Adding your own Action for Mounting</h3>
<p>As KDE4 is very configurable, you can improve this situation. In the System Settings you can configure which action are available when a storage medium becomes available. Here, we are going to add our own action which &#8216;just&#8217; mounts a device.</p>
<p><div id="attachment_394" class="wp-caption aligncenter" style="width: 502px"><a href="http://tfischernet.files.wordpress.com/2009/11/mounting4.png"><img src="http://tfischernet.files.wordpress.com/2009/11/mounting4.png?w=700" alt="System Settings - Advanced" title="System Settings - Advanced"   class="size-full wp-image-394" /></a><p class="wp-caption-text">System Settings - Advanced</p></div><br />
<div id="attachment_395" class="wp-caption aligncenter" style="width: 316px"><a href="http://tfischernet.files.wordpress.com/2009/11/mounting5.png"><img src="http://tfischernet.files.wordpress.com/2009/11/mounting5.png?w=700" alt="Configuration of Actions for Devices" title="Configuration of Actions for Devices"   class="size-full wp-image-395" /></a><p class="wp-caption-text">Configuration of Actions for Devices</p></div></p>
<p>To add you own action, click on the &#8216;Add&#8217; button and enter a name for the new action, such as &#8216;Mount&#8217;.</p>
<div id="attachment_397" class="wp-caption aligncenter" style="width: 327px"><a href="http://tfischernet.files.wordpress.com/2009/11/mounting71.png"><img src="http://tfischernet.files.wordpress.com/2009/11/mounting71.png?w=700" alt="Adding a new action" title="Adding a new action"   class="size-full wp-image-397" /></a><p class="wp-caption-text">Adding a new action</p></div>
<p>In this new action, you can an icon which resembles that action of mounting. In my case, I chose <code>emblem-mounted.png</code> from the <code>emblems</code> directory in the <a>Oxygen icon set</a>. For the command to execute, you can enter any command you like. If you want to see no feedback, use <code>/bin/true</code>. In my example, I used <code>/usr/bin/kdialog --msgbox</code> to get a message box showing a confirmation once the mount process is complete.</p>
<p>Next time you plug in an USB drive, a new option will show up to &#8216;just&#8217; mount you device without starting any bloated application.</p>
<div id="attachment_402" class="wp-caption aligncenter" style="width: 431px"><a href="http://tfischernet.files.wordpress.com/2009/11/mounting14.png"><img src="http://tfischernet.files.wordpress.com/2009/11/mounting14.png?w=700" alt="List of actions, &#39;just mount&#39; option included" title="List of actions, &#39;just mount&#39; option included"   class="size-full wp-image-402" /></a><p class="wp-caption-text">List of actions, 'just mount' option included</p></div>
<p>Once you activate the &#8216;Mount&#8217; option, it takes 1-2 seconds and a message box pops up confirming the mount operation. The device is read to use in any application.</p>
<div id="attachment_400" class="wp-caption aligncenter" style="width: 244px"><a href="http://tfischernet.files.wordpress.com/2009/11/mounting16.png"><img src="http://tfischernet.files.wordpress.com/2009/11/mounting16.png?w=700" alt="Message box" title="Message box"   class="size-full wp-image-400" /></a><p class="wp-caption-text">Message box</p></div>
<h3>Current Issues</h3>
<p>The current approach has some minor issues which may get addressed in later improvements:</p>
<ul>
<li>Cases where the mounting operation fails are not handled</li>
<li>The message box does not show the devices name, type or mount point</li>
</ul>
<p>Still, good luck with testing this &#8216;hack&#8217; <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<br />Posted in KDE, Linux Tagged: device, digikam, dolphin, kdialog, konqueror, konsole, mount, usb <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tfischernet.wordpress.com/406/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tfischernet.wordpress.com/406/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tfischernet.wordpress.com/406/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tfischernet.wordpress.com/406/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tfischernet.wordpress.com/406/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tfischernet.wordpress.com/406/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tfischernet.wordpress.com/406/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tfischernet.wordpress.com/406/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tfischernet.wordpress.com/406/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tfischernet.wordpress.com/406/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tfischernet.wordpress.com/406/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tfischernet.wordpress.com/406/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tfischernet.wordpress.com/406/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tfischernet.wordpress.com/406/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=406&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tfischernet.wordpress.com/2009/11/09/mounting-devices-in-kde-without/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tfischernet</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/11/mounting1.png" medium="image">
			<media:title type="html">Device Notifier</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/11/mounting3.png" medium="image">
			<media:title type="html">Device Notifier plasma widget</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/11/mounting12.png" medium="image">
			<media:title type="html">List of actions with device</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/11/mounting4.png" medium="image">
			<media:title type="html">System Settings - Advanced</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/11/mounting5.png" medium="image">
			<media:title type="html">Configuration of Actions for Devices</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/11/mounting71.png" medium="image">
			<media:title type="html">Adding a new action</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/11/mounting14.png" medium="image">
			<media:title type="html">List of actions, &#039;just mount&#039; option included</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/11/mounting16.png" medium="image">
			<media:title type="html">Message box</media:title>
		</media:content>
	</item>
		<item>
		<title>Reiten auf Islandpferden</title>
		<link>http://tfischernet.wordpress.com/2009/10/25/reiten-auf-islandpferden/</link>
		<comments>http://tfischernet.wordpress.com/2009/10/25/reiten-auf-islandpferden/#comments</comments>
		<pubDate>Sun, 25 Oct 2009 16:29:38 +0000</pubDate>
		<dc:creator>Thomas Fischer</dc:creator>
				<category><![CDATA[Schweden]]></category>
		<category><![CDATA[islandpferde]]></category>
		<category><![CDATA[isländer]]></category>
		<category><![CDATA[kyrkekvarn]]></category>
		<category><![CDATA[reiten]]></category>

		<guid isPermaLink="false">http://tfischernet.wordpress.com/?p=341</guid>
		<description><![CDATA[Vor zwei Wochen war ich mit Freundin und Bekannten auf einer Reittour mit Islandpferden. Wie auf Wikipedia beschrieben und was ich auch bestätigen kann, sind diese Pferde schön ruhig, nicht zu groß und lassen sich auch ohne Erfahrung reiten. An besagtem Reitsonntag sind wir zu viert nach Kyrkekvarn zu einem Reithof gefahren und haben eine [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=341&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Vor zwei Wochen war ich mit Freundin und Bekannten auf einer Reittour mit <a href="http://de.wikipedia.org/wiki/Islandpferd">Islandpferden</a>. Wie auf Wikipedia beschrieben und was ich auch bestätigen kann, sind diese Pferde schön ruhig, nicht zu groß und lassen sich auch ohne Erfahrung reiten.</p>
<p>An besagtem Reitsonntag sind wir zu viert nach <a href="http://www.openstreetmap.org/?lat=57.99484&amp;lon=13.85101&amp;zoom=16&amp;layers=B000FTF">Kyrkekvarn</a> zu einem <a href="http://www.kyrkekvarn.com/">Reithof</a> gefahren und haben eine 2-Stunden-Tour gebucht. Am Stall angekommen, mussten wir uns erstmal Ausrüstung (Helm) aus dem Lager aussuchen und vor dem Tor aufstellen. Von einer der Tourleiterinnen wurde uns der Umgang mit Pferden erklärt, wie man Sattel und Saum einstellt und auf das Pferd auf- und absteigt. Jeder von uns wurde zu einem passenden Pferd im Stall eingeteilt und durfte es nach draußen führen. Nachdem alle aufgestiegen und alle Gurte überprüft waren, durften wir zum &#8220;Aufwärmen&#8221; in einer kleinen Koppel im Kreis reiten um etwas Gefühl für das Tier zu bekommen.</p>
<p>Danach ging es los in die Berge. Zwischendurch wurde immer wieder Halt gemacht, um einige Dinge zu erklären, z.B. die Gangarten. Eine Besonderheit von Islandpferden ist ihre Fähigkeit zum <a href="http://de.wikipedia.org/w/index.php?title=Tölt">Tölt</a>, eine Gangart, die einen ruhigen Ritt erlauben soll. Ich bin mir aber nicht sicher, ob das bei mir so richtig funktioniert hat, bin trotzdem gut durchgeschüttelt worden&#8230; <img src='http://s1.wp.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Da die gesamte Reittruppe aus ca. 15–20 Leute bestand, sind wir als eine lange Kette geritten. Mein Pferd („Blakkur“) kannte die Ausflugsroute schon sehr gut und ist praktisch ohne Lenken der Strecke gefolgt. Auf den Strecken, wo wir galoppieren durften, ist das Pferd von alleine losgerannt.</p>
<p>Etwa auf halber Strecke wurde Rast eingelegt mit Tee/Kaffee und belegten Broten. Für die Pferde gab es Knäckebrot. Danach wurde die Gruppe in eine &#8220;langsame&#8221; und eine &#8220;schnelle&#8221; Hälfte aufgeteilt. Als Anfänger sollte ich in der langsamen Gruppe bleiben, aber mein Pferd wollte unbedingt bei der schnellen Gruppe (zuerst weitergeritten) dabei sein. Nur mit kräftigen Zerren ließ es sich zum Warten überreden.</p>
<p>Auf dem Rückweg, überwiegend bergab, hatte man einen schönen Überblick über die Umgebung, trotz des leichten Regens, der dann einsetzte. Zurück am Stall mussten die Pferde versorgt, Zaumzeug abgemacht, gereinigt und ins Lager gebracht werden. Mit dem Wetter hatten wir insgesamt Glück, erst auf der Rückfahrt setzte der Wolkenbruch ein.</p>
<p>Insgesamt ein schöner Ausflug, kann ich jedem Schweden-Touristen wärmstens empfehlen.</p>
<p>Unten die <a href="http://www.informationfreeway.org/?lat=58.1107605251607&amp;lon=13.798505101668194&amp;zoom=9&amp;layers=B0000F000F">Karte</a> zeigt meinen GPS-Trace von der Reittour. Leider habe ich das Gerät erst ab der Rast eingeschaltet, daher fehlt die erste Tourhälfte.</p>
<div id="attachment_352" class="wp-caption aligncenter" style="width: 310px"><a href="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn_map2.png"><img src="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn_map2.png?w=300&#038;h=300" alt="Kyrekvarn (medium scale, Västra Götaland, Skövde and Jönköping)" title="Kyrkekvarn (medium scale)" width="300" height="300" class="size-medium wp-image-352" /></a><p class="wp-caption-text">Kyrekvarn (medium scale, Västra Götaland, Skövde and Jönköping)</p></div>
<p>Natürlich dürfen die obligatorischen Fotos nicht fehlen. Leider sind nicht alle Fotos auf Grund der wackligen und dunklen Bedingungen scharf geworden.</p>
<p><a href="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-01.jpg"><img style="border:1px solid #ccc;margin:1ex;padding:1ex;" src="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-01.jpg?w=207&#038;h=300" alt="Auf einem Pferd (1)" title="Auf einem Pferd (1)" width="207" height="300" class="alignleft size-medium wp-image-366" /></a><a href="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-02.jpg"><img style="border:1px solid #ccc;margin:1ex;padding:1ex;" src="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-02.jpg?w=300&#038;h=195" alt="Neben einem Pferd (1)" title="Neben einem Pferd (1)" width="300" height="195" class="alignleft size-medium wp-image-367" /></a><a href="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-03.jpg"><img style="border:1px solid #ccc;margin:1ex;padding:1ex;" src="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-03.jpg?w=300&#038;h=278" alt="Auf einem Pferd (2)" title="Auf einem Pferd (2)" width="300" height="278" class="alignleft size-medium wp-image-368" /></a><a href="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-04.jpg"><img style="border:1px solid #ccc;margin:1ex;padding:1ex;" src="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-04.jpg?w=271&#038;h=300" alt="Auf einem Pferd (3)" title="Auf einem Pferd (3)" width="271" height="300" class="alignleft size-medium wp-image-370" /></a><a href="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-05.jpg"><img style="border:1px solid #ccc;margin:1ex;padding:1ex;" src="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-05.jpg?w=300&#038;h=242" alt="Neben einem Pferd (2)" title="Neben einem Pferd (2)" width="300" height="242" class="alignleft size-medium wp-image-371" /></a></p>
<br />Posted in Schweden Tagged: islandpferde, isländer, kyrkekvarn, reiten <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tfischernet.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tfischernet.wordpress.com/341/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tfischernet.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tfischernet.wordpress.com/341/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tfischernet.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tfischernet.wordpress.com/341/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tfischernet.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tfischernet.wordpress.com/341/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tfischernet.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tfischernet.wordpress.com/341/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tfischernet.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tfischernet.wordpress.com/341/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tfischernet.wordpress.com/341/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tfischernet.wordpress.com/341/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=341&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tfischernet.wordpress.com/2009/10/25/reiten-auf-islandpferden/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tfischernet</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn_map2.png?w=300" medium="image">
			<media:title type="html">Kyrkekvarn (medium scale)</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-01.jpg?w=207" medium="image">
			<media:title type="html">Auf einem Pferd (1)</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-02.jpg?w=300" medium="image">
			<media:title type="html">Neben einem Pferd (1)</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-03.jpg?w=300" medium="image">
			<media:title type="html">Auf einem Pferd (2)</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-04.jpg?w=271" medium="image">
			<media:title type="html">Auf einem Pferd (3)</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/10/kyrkekvarn-reiten-05.jpg?w=300" medium="image">
			<media:title type="html">Neben einem Pferd (2)</media:title>
		</media:content>
	</item>
		<item>
		<title>Waltag</title>
		<link>http://tfischernet.wordpress.com/2009/09/22/waltag/</link>
		<comments>http://tfischernet.wordpress.com/2009/09/22/waltag/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 20:02:56 +0000</pubDate>
		<dc:creator>Thomas Fischer</dc:creator>
				<category><![CDATA[Society]]></category>
		<category><![CDATA[bundestagswahl]]></category>
		<category><![CDATA[wahl-o-mat]]></category>
		<category><![CDATA[wahltag]]></category>
		<category><![CDATA[waltag]]></category>

		<guid isPermaLink="false">http://tfischernet.wordpress.com/?p=326</guid>
		<description><![CDATA[Aus aktuellem Anlass möchte ich auf den Wahltag am kommenden Sonntag hinweisen. Wer noch nicht so wie ich per Briefwahl abgestimmt hat, kann also noch dem großen Moment des Kreuzchen-machens entgegenfiebern. Wer sich noch nicht sicher ist, was er wählen soll, sollte sich in der Parteienlandschaft außerhalb der &#8220;großen&#8221; Parteien umschauen. Bei mehr als 10 [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=326&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p style="text-align:center;"><img src="http://tfischernet.files.wordpress.com/2009/09/waltag.png?w=536&#038;h=127" alt="Waltag" title="Waltag" width="536" height="127" style="border:none;" /></p>
<p>Aus aktuellem Anlass möchte ich auf den Wahltag am kommenden Sonntag hinweisen. Wer noch nicht so wie ich per Briefwahl abgestimmt hat, kann also noch dem großen Moment des Kreuzchen-machens entgegenfiebern.</p>
<p>Wer sich noch nicht sicher ist, was er wählen soll, sollte sich in der Parteienlandschaft außerhalb der &#8220;großen&#8221; Parteien umschauen. Bei mehr als 10 <a href="http://www.bundeswahlleiter.de/de/bundestagswahlen/BTW_BUND_09/zugelassene_parteien/">weiteren Parteien</a> für die Zweistimme sollte sich eigentlich für jeden etwas finden. Gerade für computer-affine Bürger hat sich in den letzten Monaten eine <a href="http://klarmachen-zum-aendern.de/">Alternative</a> entwickelt. Stimmen für kleine Parteien sind übrigens keine verschenkten Stimmen, da Parteien pro erhaltene Stimme <a href="http://de.wikipedia.org/wiki/Parteienfinanzierung#Finanzierung_aus_staatlichen_Mitteln">Geld vom Staat</a> bekommen können.</p>
<p>Hilfe bei der Entscheidungsfindung bietet übrigens die Bundeszentrale für politische Bildung (kennen einige von uns sicher noch von den Heftchen aus dem Gemeinschaftskundeunterricht) mit ihrem <a href="http://www.wahl-o-mat.de/bundestagswahl2009/">Wahl-O-Mat</a>.</p>
<p>Tip: Wenn keiner der Kandidaten der Erststimme zusagt (insbesondere keiner der beiden großen Blockparteien), kann die Erststimme auch getrennt von der Zweitstimme ungültig gemacht werden (z.B. durch Durchstreichen).</p>
<br />Posted in Society Tagged: bundestagswahl, wahl-o-mat, wahltag, waltag <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tfischernet.wordpress.com/326/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tfischernet.wordpress.com/326/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tfischernet.wordpress.com/326/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tfischernet.wordpress.com/326/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tfischernet.wordpress.com/326/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tfischernet.wordpress.com/326/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tfischernet.wordpress.com/326/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tfischernet.wordpress.com/326/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tfischernet.wordpress.com/326/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tfischernet.wordpress.com/326/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tfischernet.wordpress.com/326/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tfischernet.wordpress.com/326/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tfischernet.wordpress.com/326/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tfischernet.wordpress.com/326/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=326&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tfischernet.wordpress.com/2009/09/22/waltag/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tfischernet</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/09/waltag.png" medium="image">
			<media:title type="html">Waltag</media:title>
		</media:content>
	</item>
		<item>
		<title>Automatic AdBlock filter list updates in Konqueror</title>
		<link>http://tfischernet.wordpress.com/2009/08/05/automatic-adblock-filter-list-updates-in-konqueror/</link>
		<comments>http://tfischernet.wordpress.com/2009/08/05/automatic-adblock-filter-list-updates-in-konqueror/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 22:08:41 +0000</pubDate>
		<dc:creator>Thomas Fischer</dc:creator>
				<category><![CDATA[KDE]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[adblock]]></category>
		<category><![CDATA[khtml]]></category>
		<category><![CDATA[konqueror]]></category>

		<guid isPermaLink="false">http://tfischernet.wordpress.com/?p=310</guid>
		<description><![CDATA[As a KDE user, Konqueror is my favorite browser. It offers smooth integration into KDE, both in looks and features (e.g. using the Okular part to view PDFs). Its rendering engine is so good that it was forked into WebKit used in Apple&#8217;s Safari and Qt. One aspect Konqueror lacks in comparison to Firefox, though, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=310&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>As a <a href="http://www.kde.org">KDE</a> <a href="http://userbase.kde.org/">user</a>, <a href="http://konqueror.kde.org/">Konqueror</a> is my favorite browser. It offers smooth integration into KDE, both in looks and features (e.g. using the <a href="http://okular.kde.org/">Okular</a> <a href="http://techbase.kde.org/Development/Architecture/KDE4/KParts">part</a> to view PDFs). Its rendering engine is so good that it was forked into <a href="http://webkit.org/">WebKit</a> used in <a href="http://developer.apple.com/opensource/internet/webkit.html">Apple&#8217;s Safari</a> and <a href="http://doc.trolltech.com/4.4/qtwebkit.html">Qt</a>. One aspect Konqueror lacks in comparison to <a href="http://www.mozilla.com/firefox">Firefox</a>, though, is the support of <a href="https://addons.mozilla.org/en-US/firefox/">plugins/addons</a> of all kinds to add more features to the browser. There is a set of <a href="https://addons.mozilla.org/en-US/firefox/browse/type:1/cat:12">security and privacy enhancing plugins for Firefox</a> I use myself and recommend to others. One of them is <a href="https://addons.mozilla.org/en-US/firefox/addon/1865">AdBlock Plus</a> which uses a well-maintained list of URLs to block if you want to experience the net with less annoyance.</p>
<p>On the other side, Konqueror has a similar adblocking functionality built-in since <a href="http://kde.org/announcements/visualguide-3.5.php">KDE 3.5</a> (late 2005). In the configuration dialog, users can add fragments or regular expressions of URLs to be blocked. Maintaining such a list yourself is quite cumbersome, especially if you have accounts on several computers. At least since March 2007 there has been a <a href="https://bugs.kde.org/show_bug.cgi?id=143495">feature request</a> in <a href="https://bugs.kde.org/">KDE&#8217;s bug tracking system</a> to add an automatic updater to Konqueror&#8217;s ad-filtering.</p>
<p>Last weekend, I started to scratch the itch and implemented an automatic filter list updater. Luckily, the internal format of AdBlock entries in Konqueror matches the one use by <a href="http://adblockplus.org/">AdBlock Plus</a>, except that some <a href="http://adblockplus.org/en/filters#elemhide_basic">advanced features</a> are not (yet) supported. Based on the then-current KDE 4.2.4 code I made changes to both <a href="http://api.kde.org/4.2-api/kdelibs-apidocs/">kdelibs</a> and kdebase. The former one contains the <a href="http://api.kde.org/4.2-api/kdelibs-apidocs/khtml/html/">KHTML component</a> including the actual filter, the latter contains the code for Konqueror&#8217;s settings GUI.</p>
<p>The <a href="https://bugs.kde.org/attachment.cgi?id=35762">changes I made to kdelibs</a> work as follows: Read the khtmlrc configuration file to get a list of filter files following the format used by AdBlock Plus. My <a href="https://bugs.kde.org/attachment.cgi?id=35778">example configuration file</a> contains several lists from <a href="https://easylist.adblockplus.org/">easylist.adblock.org</a>. The filter list files are downloaded and cached if no local copy is available or if it is outdated. Each filter list file is loaded and added to Konqueror&#8217;s current filter list each time the browser is started. The user-configured filter list is not modified, as the changes occur in memory only.</p>
<p>If you edit your khtmlrc manually to add new filter lists, this works already fine without GUI. For a better usability experience, I modified Konqueror&#8217;s settings dialog so that users can select from a list of preconfigured filter lists (currently, all lists from EasyList) which to actually use. Additionally, the time interval to refresh the lists can be configured.</p>
<p><a href="http://tfischernet.files.wordpress.com/2009/08/adblock1.png"><img src="http://tfischernet.files.wordpress.com/2009/08/adblock1.png?w=300&#038;h=188" alt="Manual filter in Konqueror&#039;s AdBlock" title="Manual filter in Konqueror&#039;s AdBlock" width="300" height="188" class="size-medium wp-image-314" /></a><a href="http://tfischernet.files.wordpress.com/2009/08/adblock2.png"><img src="http://tfischernet.files.wordpress.com/2009/08/adblock2.png?w=300&#038;h=188" alt="Automatic filter in Konqueror&#039;s AdBlock" title="Automatic filter in Konqueror&#039;s AdBlock" width="300" height="188" class="size-medium wp-image-315" /></a></p>
<p>I refrained from adding an option to add, modify or delete list entries in the GUI. This is simply for two reasons: (1) Users may tend to enter filter lists that do not follow the format (e.g. from other adblocking filter sites) and (2) the list of available filter lists does not change that often that it cannot be changed in the next monthly update of KDE. If users are eager to add more lists not officially approved, they can still edit their configuration files manually.</p>
<p>All patches and an example configuration file are available from <a href="https://bugs.kde.org/show_bug.cgi?id=143495">bug report 143495</a> in KDE&#8217;s bug tracking system. If you have constructive suggestions, please <a href="https://bugs.kde.org/show_bug.cgi?id=143495">add you comments to the bug report</a> (do not post comments in this blog, that won&#8217;t help). To support the patch in getting approved and added to the official code base, <a href="https://bugs.kde.org/votes.cgi?action=show_user&amp;bug_id=143495#vote_143495">vote for the bug</a> (login required).</p>
<p>Update (20091201): I posted the patches on <a href="http://reviewboard.kde.org/">KDE&#8217;s Review Board</a> a few days ago and got a <a href="http://reviewboard.kde.org/r/2265/">review</a> from <a href="http://www.kdab.com/~dfaure/">David Faure</a>. There are some minor issues to change and fix, but his overall comment was &#8220;Nice (but obviously not for 4.4 due to the feature freeze, it will have to be for 4.5)&#8221; <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Update (20100812): My AdBlock extension has become part of KDE 4.5 <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  Check out this screen shot:<a href="http://tfischernet.files.wordpress.com/2009/08/adblock-kde4-5.png"><img src="http://tfischernet.files.wordpress.com/2009/08/adblock-kde4-5.png?w=300&#038;h=197" alt="AdBlock filter list in KDE 4.5" title="AdBlock filter list in KDE 4.5" width="300" height="197" class="aligncenter size-medium wp-image-465" /></a></p>
<br />Posted in KDE, Linux Tagged: adblock, khtml, konqueror <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tfischernet.wordpress.com/310/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tfischernet.wordpress.com/310/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tfischernet.wordpress.com/310/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tfischernet.wordpress.com/310/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tfischernet.wordpress.com/310/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tfischernet.wordpress.com/310/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tfischernet.wordpress.com/310/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tfischernet.wordpress.com/310/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tfischernet.wordpress.com/310/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tfischernet.wordpress.com/310/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tfischernet.wordpress.com/310/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tfischernet.wordpress.com/310/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tfischernet.wordpress.com/310/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tfischernet.wordpress.com/310/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=310&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tfischernet.wordpress.com/2009/08/05/automatic-adblock-filter-list-updates-in-konqueror/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tfischernet</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/08/adblock1.png?w=300" medium="image">
			<media:title type="html">Manual filter in Konqueror&#039;s AdBlock</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/08/adblock2.png?w=300" medium="image">
			<media:title type="html">Automatic filter in Konqueror&#039;s AdBlock</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/08/adblock-kde4-5.png?w=300" medium="image">
			<media:title type="html">AdBlock filter list in KDE 4.5</media:title>
		</media:content>
	</item>
		<item>
		<title>Mittsommer in Schweden</title>
		<link>http://tfischernet.wordpress.com/2009/06/22/mittsommer-in-schweden/</link>
		<comments>http://tfischernet.wordpress.com/2009/06/22/mittsommer-in-schweden/#comments</comments>
		<pubDate>Mon, 22 Jun 2009 22:02:13 +0000</pubDate>
		<dc:creator>Thomas Fischer</dc:creator>
				<category><![CDATA[Schweden]]></category>
		<category><![CDATA[Skövde]]></category>

		<guid isPermaLink="false">http://tfischernet.wordpress.com/?p=288</guid>
		<description><![CDATA[Am vergangenen Wochenende war Mittsommer hier in Schweden. Anders als in Deutschland hat Mittsommer (schwed. Midsommar) hier Feiertagscharakter, was man spätestens daran merkt, daß Geschäfte, die eigentlich immer offen haben*, plötzlich erst später aufmachen. Nun, wir haben die Gelegenheit genutzt, eine kleine Nachtwanderung auf den Hausberg Billingen zu machen. Die drei folgenden Bilder zeigen den [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=288&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Am vergangenen Wochenende war <a href="http://de.wikipedia.org/wiki/Sonnenwende">Mittsommer</a> hier in Schweden. Anders als in Deutschland hat Mittsommer (schwed. <i>Midsommar</i>) hier Feiertagscharakter, was man spätestens daran merkt, daß Geschäfte, die <a href="http://www.ica.se/FrontServlet?s=butiker&amp;state=butikssida&amp;butiksid=09588">eigentlich</a> <a href="http://www.coop.se/sektioner/butik/butik_seneste_gem.asp?intKaedeId=30&amp;intButikId=42993103201372">immer</a> <a href="http://www.willys.se/showdoc.asp?docid=655&amp;channelid=3038&amp;channelitemid=445377">offen</a> haben<sup>*</sup>, plötzlich erst später aufmachen.</p>
<p>Nun, wir haben die Gelegenheit genutzt, eine kleine Nachtwanderung auf den Hausberg <a href="http://de.wikipedia.org/wiki/Billingen">Billingen</a> zu machen.<br />
Die drei folgenden Bilder zeigen den gleichen <a href="http://www.openstreetmap.org/?mlat=58.403&amp;mlon=13.81&amp;zoom=14&amp;layers=B000FTF">See</a> (fragt mich nicht nach dem Namen), wobei die dunklen von Norden nach Süden und das helle Bild von Süden nach Norden jeweils gegen Mitternacht aufgenommen wurden. Der Nebel deutet an, daß es gar nicht trocken-sommerlich warm war&#8230;<br />
<div id="attachment_289" class="wp-caption aligncenter" style="width: 310px"><a href="http://tfischernet.files.wordpress.com/2009/06/midsommar-billingen-1.jpg"><img src="http://tfischernet.files.wordpress.com/2009/06/midsommar-billingen-1.jpg?w=300&#038;h=184" alt="Midsommar auf Billingen" title="midsommar-billingen-1" width="300" height="184" class="size-medium wp-image-289" /></a><p class="wp-caption-text">Midsommar auf Billingen</p></div><br />
<div id="attachment_290" class="wp-caption aligncenter" style="width: 310px"><a href="http://tfischernet.files.wordpress.com/2009/06/midsommar-billingen-2.jpg"><img src="http://tfischernet.files.wordpress.com/2009/06/midsommar-billingen-2.jpg?w=300&#038;h=198" alt="Midsommar auf Billingen" title="midsommar-billingen-2" width="300" height="198" class="size-medium wp-image-290" /></a><p class="wp-caption-text">Midsommar auf Billingen</p></div><br />
<div id="attachment_291" class="wp-caption aligncenter" style="width: 310px"><a href="http://tfischernet.files.wordpress.com/2009/06/midsommar-billingen-3.jpg"><img src="http://tfischernet.files.wordpress.com/2009/06/midsommar-billingen-3.jpg?w=300&#038;h=224" alt="Midsommar auf Billingen" title="midsommar-billingen-3" width="300" height="224" class="size-medium wp-image-291" /></a><p class="wp-caption-text">Midsommar auf Billingen</p></div></p>
<p>Von besagtem Billingen aus hat man auch eine schöne Sicht auf die Stadt <a href="http://de.wikipedia.org/wiki/Skövde">Skövde</a> (wobei es auf dem Bild etwas heller aussieht, als es wirklich war):<br />
<div id="attachment_292" class="wp-caption aligncenter" style="width: 310px"><a href="http://tfischernet.files.wordpress.com/2009/06/midsommar-skovde.jpg"><img src="http://tfischernet.files.wordpress.com/2009/06/midsommar-skovde.jpg?w=300&#038;h=148" alt="Midsommar: Blick auf Skövde" title="midsommar-skovde" width="300" height="148" class="size-medium wp-image-292" /></a><p class="wp-caption-text">Midsommar: Blick auf Skövde</p></div></p>
<p>Mit diesen Bildern gehe ich in den Sommerurlaub und wünsche allen ein schönes Mittsommerfest! <img src='http://s0.wp.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><sup>*</sup> Anders als in Deutschland üblich verkaufen Lebensmittelgeschäfte, die sonntags offen haben, normalerweise kein Benzin.</p>
<br />Posted in Schweden, Skövde  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/tfischernet.wordpress.com/288/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/tfischernet.wordpress.com/288/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/tfischernet.wordpress.com/288/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/tfischernet.wordpress.com/288/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/tfischernet.wordpress.com/288/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/tfischernet.wordpress.com/288/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/tfischernet.wordpress.com/288/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/tfischernet.wordpress.com/288/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/tfischernet.wordpress.com/288/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/tfischernet.wordpress.com/288/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/tfischernet.wordpress.com/288/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/tfischernet.wordpress.com/288/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/tfischernet.wordpress.com/288/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/tfischernet.wordpress.com/288/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=tfischernet.wordpress.com&amp;blog=5193812&amp;post=288&amp;subd=tfischernet&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://tfischernet.wordpress.com/2009/06/22/mittsommer-in-schweden/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">tfischernet</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/06/midsommar-billingen-1.jpg?w=300" medium="image">
			<media:title type="html">midsommar-billingen-1</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/06/midsommar-billingen-2.jpg?w=300" medium="image">
			<media:title type="html">midsommar-billingen-2</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/06/midsommar-billingen-3.jpg?w=300" medium="image">
			<media:title type="html">midsommar-billingen-3</media:title>
		</media:content>

		<media:content url="http://tfischernet.files.wordpress.com/2009/06/midsommar-skovde.jpg?w=300" medium="image">
			<media:title type="html">midsommar-skovde</media:title>
		</media:content>
	</item>
	</channel>
</rss>
