Demnächst muß ich wohl meine Emails anders verwalten, zustellen, aufheben und sortieren als das bis jetzt über meinen Uni-Account möglich war. Spannende Programme in diesem Zusammenhang scheinen zu sein:
Nur wie ich das jetzt alles machen soll, das habe ich noch nicht entschieden :-)
This week, I was having a coffee with Petra and Immanuel and we were discussing the importance of good notation.
Somehow, the idea of writing a script that permutes the notation in a given document came up, perhaps to illustrate this viewpoint.
It sounded like a fun project, and so I wrote permute_notation.py, a short Python script that takes a latex file and produces a copy of the file with completely permuted notation. The effects are not really surprising: usually, you do not understand your own work anymore :)
You can download it and try for yourself. It is quite simple to use: permute_notation.py input.tex output.tex
Attention: The script unconditionally overwrites output.tex, so be careful!
By default, the script permutes lower and upper case Latin and Greek letters. You can specify the switch -s to permute alphabets only among themselves, such that the text might remain at least barely legible.
As usual, the script is provided under the GPL.
Note: This script has been tested to work with my diploma thesis(result [PDF]). I hope that it will also work with your document. If not, just copy a latex snippet which is permuted incorrectly into the comments and I will take care of it.
If you are running linux and want to assign replay gain values to your mp3s recursively, you are currently out of luck since mp3gain does not yet have a recursive mode. The simple solution
find /path/to/mp3s -iname "*.mp3" -exec mp3gain -r -k -p {} \;
only works if you want to have radio gain mode, i.e. all mp3s are brought to uniform common volume.
But if you are like me and you would like to listen to whole albums at a time, the -a switch is your friend and the above solution does no longer work. I have written two small python scripts which do this, assuming your mp3s are sorted either like this:
artist/single_song.mp3
artist/album/song.mp3
Then you can use calculate_gain_all_in_one_folder.py. If instead your artists are grouped by initials like so:
initial/artist/single_song.mp3
initial/artist/album/song.mp3
then use calculate_gain_for_initial_folders.py. Both scripts do the right thing, i.e. apply album gain to albums and radio gain to single songs. They are not exactly userfriendly, but you should manage. Both scripts are released under the GPL.
By the way, vorbisgain has a recursive mode which works (almost) perfectly (only almost, since it of course does not known when to apply album and when to apply radio gain).
Lars hat heute etwas echt praktisches verschickt: den LaTex-Symbol-Erkenner! Kein mühsames Suchen in Symboltabellen oder per Google mehr, einfach schnell das Symbol malen, und man kriegt den richtigen TeX-Code :) Super!
Neulich beim Lesen des englischen XeTeX-Wikipedia-Eintrags habe ich einen spanennde Blogeintrag gefunden, der ein Loblied auf LaTeX und den tollen Schriftsatz singt und dabei ein paar schöne Schriften vorführt, bzw darauf verlinkt. Unter anderem auf diesen tolle Zusammenstellung professioneller und freier Schriftarten.
Das hat mich dazu motiviert, selbst ein paar tolle (hauptsächlich OpenType-)Schriftarten zu suchen, und eine kleine Zusammenstellung zu schreiben. Benutzen kann man so etwas natürlich sehr gut z.B. mit scribus, einem sehr guten Open-Source-Desktop-Publishing-Programm. Hier also eine kleine Auswahl:
In den Essays von praegnanz.de gibt es außerdem sehr schöne Artikel über freie Schriften und ihre Anwendung und daher noch viele Anregungen.
Mannomann, so viele gute Nachrichten an einem Tag!
Gerade gefunden: Anscheinend kommt morgen der erste Teil von Tales of Monkey Island, einer Episoden-Fortsetzung der legendären Monkey Island-Spiele heraus!! Das gab es ja schon für Sam & Max und war auch sehr lustig! Total cool!
Gleichzeitig habe ich gesehen, dass außerdem LucasArts eine neue, aufgemotzte Version von The Secret of Monkey Island rausbringt. Keine Ahnung, ob das gut ist, aber das wäre ja vielleicht ein Anlaß, das mal wieder zu spielen :)
Und weil wir gerade am Surfen sind, dieses neue Projekt von Ron Gilbert sieht auch lustig aus.
Ich warte gespannt auf KDE 4.3. Einen Release Candidate gibt es schon. Leider hatte ich keine Zeit, um ihn mal zu testen. Mit Hilfe des kde-testing Overlays wäre das auf Gentoo sicher ganz leicht gewesen.
Die neuen Features sehen spannend aus, insbesondere stark verbessertes Plasma und ein neuer Systray. Natürlich sind wir alle noch gespannter auf neue Features in KDE 4.4 :)
Und damit jeder weiß, wie lange er oder sie noch genau warten muss:
Edit: Eigentlich sollte hier ein hübscher Zähler auftauchen, der die Tage bis KDE 4.3 zählt. Leider scheint der nur sehr selten zu funktionieren. Vielleicht klappt es ja bei euch?
Kurze Notiz, falls es jemandem hilft:
Falls euer KDE4.1 sofort nach dem Einloggen den gesamten X-Server zum Abstürzen bringt, hilft vielleicht, wie bei mir, die Option backingstore in der xorg.conf auf false zu setzen.
Funktioniert bei mir super, ich weiß nur nicht, ob ich jetzt auf KDE4 umsteigen soll.
Der erste Release Candidate von Amarok 2.0 ist draußen. Warum ist immer noch Beta 1 die aktuellste Version in portage? Mein KDE 4.1 geht aber irgendwie eh nicht, und ich hab weder Zeit noch Lust, es zu reparieren. KDE 3.5.10 läuft super, schnell und stabil…aber auf Amarok 2.0 bin ich trotzdem gespannt!
Suppose you have two computers, one running Linux, the other one Windows. Suppose further there is a directory on each computer which has to be kept synchronised between those computers. Worst of all, changes might be made to each directory at the same time, so synchronising is not a simple matter of copying files.
This situation is (relatively) easily manageable with unison, a file-synchronizing tool running both under Linux and Windows. It is very fast, works locally and over SSH connections and does a very good job in detecting changes and deletes. There are plenty of good tutorials to be found and it has an excellent manual.
However, there are problems concerning non-ASCII characters, as can be read in the unison Wikipedia entry: Note that when synchronising data between different computer systems, Unison has significant problems if the file names contain accented or international characters.
This is certainly true, because unison itself does not do any encoding translation. However, with Cygwin and the excellent UTF-8 Cywgin project, it is not hard to make things just work. However, information on this method is scant, and I had to search for a longer time. This is why I decided to write a short tutorial to make things easier for other people having this problem.
Important: This will only work if your Linux machine is configured to use a UTF-8 locale. As far as I know, this is standard in most modern Linux distributions. For Gentoo, see ‘Using UTF-8 with Gentoo’. All you have to do is to enable the unicode use flag and set unicode=”YES” in /etc/rc.conf.
- Install unison (and openssh, if it is not installed yet) on the Linux machine. In Gentoo, a simple
emerge unison as root is enough, it should not be much harder in other Linux distributions. Remember the version number of unison — the major and minor version of unison have to agree on both computers. The one I used is 2.27.
- Start the ssh daemon on the Linux machine. In Gentoo, enter
/etc/init.d/sshd start as root.
- On the Windows machine, go to the Cygwin website and download
setup.exe. Start the installer, click through and select openssh and unison to be installed as well. Make sure that you have identical major and minor versions of unison on both computers!
- Here is the important step: Go to the UTF-8 Cygwin project page and download the binary
cywgin1.dll package (currently called cygwin1-dll-20-11-18.tar.bz2). Unpack the dll and put it into c:\CYGWIN\bin, assuming that is where you installed Cygwin, and replace the standard dll with it. This dll translates the internal Windows file name encoding to UTF-8, magically making unison ‘just work’.
- Start cygwin and run
unison once to set up the home directory.
- Edit
~/.unison/default.pdf or c:\CYGWIN\home\username\.unison\default.pdf, respectively, (perhaps with a text editor which is able to respect UNIX line breaks, I am not sure about that) to configure unison. An easy example is
root = /cygdrive/drive_letter/Path/to/Directory to synchronize/
root = ssh://user@linux_computer//home/user/path/
Detailed descriptions of the file format can be found in the unison manual. For Gentoo, do not forget to add addversionno = true, since the name of the unison binary is actually unison-2.27.
- Start unison by either starting a Cygwin shell and entering
unison or just by executing C:\CYGWIN\bin\unison-2.27.exe directly. Enter your Linux machine password, and everything should work.
The first synchronisation will take a long time, but subsequent runs will be much faster. Determining changed files in about 50GB of data takes less than 5 minutes for me. Transferring the changed files is done via rsync which is also quite efficient, but this of course depends largely on the amount of changed data. This should work in a local network as well as over the internet. I encourage you to try, I highly recommend it.