25/09/2008

HTML special characters with KFileReplace

O my beloved Umlaut! … and all the characters I never wanted to know about … €¶Ŧ←↓→ØÞ¨ÆßÐŊĦĸŁ …
Copy and paste of non-standard ASCII text in Quanta can be cumbersome as the automatic replacement plugin only works with typing (Settings->Configure Quanta…->Automatic replacement of the accented characters). Another option would be to do some batch search-and-replace.
KFileReplace works both as a standalone app and a Quanta plugin (I don't think there is a Kate plugin yet). Multiple strings can be replaced directory-wide in one go, the session format is XML. I just googled a special character map (for reference, see e. g. here), wrote the .kfr XML file with a spreadsheet editor, and loaded it from KFileReplace. (Search/Replace->Strings->Load Strings List From File...)
Warning: Alpha-Howto! This has not been tested rigorously and might do some unwanted replacements; neither can it be a comprehensive list (e.g. no Greek characters except µ, sadly, I also decided against Chinese). Also, KFileReplace overwrites your original file (no undo!). I strongly recommend to enable "Do backup copy instead of overwrite" in the "Customise Search/Replace Session" dialog.
Whoever finds another culprit in the replacement list, please leave a comment.

Firefox 3.0.2

According to the German Heise Security page Mozilla has patched some important security issues in Firefox 3.0.2. As of this morning, that version is not yet available in the main update repo, but you can get it from the Mozilla Build Service Repo.
Update: 3.0.2 had another bug, passwords containing non-ASCII characters can't be accessed. 3.0.3 is already out and fixed (same repo).

19/09/2008

KRDC/KDE4 screws up my keystrokes...

...and just now I have neither time nor nerve to look for a fix. "O" apparently is transmitted as enter, the left mouse button opens context menus, and so on. Neither a VNC restart on the remote machine nor a KRDC restart change anything - I've had that problem before (maybe it's the compressed ssh tunnel). Most forum and blog posters complain about apparent tightvnc bugs, but for me, switching to a different viewer already did the job.
Usually, the KDE3 KRDC version is less buggy (look for package kdenetwork3-vnc), but if you need just a plain vanilla VNC without extras like full screen windows and special key transmission, tightvnc's vncviewer (package tightvnc, binary is /usr/bin/vncviewer) has a nice minimalist interface (no space-eating menus). The -fullscreen option is also very useful.

18/09/2008

Setting up an Apache server for testing purposes

First, why the hell would we do that? In my case, I have to play around with some simple PHP gallery scripts at the moment, and I am not very keen on testing them instantly on our university server (I expect the sysadmins aren't very keen on that, either, I'm a complete noob on a steep learning-by-doing curve).
Note: I include some MySQL directions here, because a lot of scripts manage MySQL databases. However, e.g. for a not-too-complicated image gallery PHP alone should do the job.
Warning: Don't follow this to configure a fully functional web server: a little knowledge is a dangerous thing - and who lets a total noob configure a web server anyway? This is just to get some practice - reduce my amount of noobness, so to say - working locally, I didn't care too much about security.
Packages to install: Either go for the full LAMP glory (YaST->Software->Patterns>Web and LAMP server), or install by hand apache2, php5, apache2_mod_php5 (if you want php4, find a repo, it's not in the official openSuSE 11 distro any more), if you want Mysql, also mysql, php5-mysql and probably phpMyAdmin. For any kind of server administration, Webmin is also not a bad idea.
To start the apache daemon: run sudo /etc/init.d/apache2 start (at least that's where the http daemon is on my system - you need the full path because it's not in PATH). Guess the code for stopping…

Check your firewall (YaST->Security and users). The allowed services for the External zone should include nothing like 'Apache' or 'HTTP daemon'. Thus, you won't need to fiddle with access control settings, the server is only accessible from localhost (however, some good information on that subject is here and here).
I don't know about other distros, but on openSuSE there is a public_html directory in your home folder. Any HTML documents you store there can be accessed on http://localhost/~<your user name>.
This is comfy if you keep the server local. On a public server I would strongly advise against public folders in one's home directory. However, you can change that in the Apache config files: Remove the userdir entry from the APACHE_MODULES list in /etc/sysconfig/apache2 (either modify the file directly or use the YaST module System->/etc/sysconfig Editor).

Konqueror wants to open web documents in editor

Konqueror trying to open HTML web document
One of the problems when you marry a file manager to a web browser. I don't recollect why the file association got changed in the first place, but it's easy to change it back again:
Settings->Configure Konqueror...->File associations: Search for HTML under 'Find filename pattern', it's probably in 'text' or 'application'. Set 'Show file in embedded viewer' in the Embedding tab and make sure 'KHTML' is the first item under Services Preference Order.
If you still want to edit local HTML documents, use the right-click menu.

12/09/2008

More gcc 4.3 'victims'

Quoting from a KDE mailing list: "In GCC 4.3, the C++ header
dependencies have been cleaned up. The advantage of this is that programs will compile faster. The downside is that you actually
need to directly #include everything you use".
So, if you get make errors like "error: 'free' was not declared in this scope", this might be due to a source file missing the (c)stdlib dependency.
This is kind of a wailing wall for patch candidates.
  • miktex: patch exists
  • qtpfsgui-1.8.12: #include <stdlib.h> in src/Libpfs/pfs.cpp and src/TM_operators/ashikhmin02/tmo_ashikhmin02.cpp
    1.8.12 is the current stable release, the "new" version (>1.9.2) is already patched.
  • lshw-B.02.13: src/core/abi.cc needs cstdlib
And yes, it's not a bug, it's a feature. Really.