Indesign Menüs alle in Englisch

Nach eine Neuinstallation von Adobe CS5 auf Windows 7 waren plötzlich alle Menüs auf Englisch. Das Indesign selbst ist aber eine deutsche Variante. Alle Hinweise im Internet führten dazu in die Irre. Adobe selbst stellt unter dem Titel Menüs werden auf Englisch angezeigt | Lokalisiertes InDesign einen eigenen Knowledge Eintrag zur Verfügung.

Ein Hinweis war, dass mit abgeschalteter UAC bzw. „Als Administrator“ gestartet die Lokalisierung da war. Nur als normaler Benutzer nicht. Letztendlich brachte dann Sysinternals Process Monitor die Erkenntnis. Indesign möchte auf den schon Adobe genannten Registry Key HKLM\SOFTWARE\Adobe\InDesign nicht nur lesen, sondern auch schreiben. Man muss also zusätzlich zum Lesen auch noch das Ändern für alle Benutzer zulassen.

In diesem Fall ist es ein Single-User System, da ist das nicht so wichtig, ob Indesign eventuell global etwas speichert. Spannender stelle ich mir das schon vor wenn sich mehrer Personen den Arbeitsplatz teilen, wie das in Firmen teilweise üblich ist.

Garantiereparatur mit Qualen

Nachdem mein letzter Artikel quasi eine Lobeshymne auf mein Foxconn nanoPC AT-7500 war, muss ich heute deutlich zurückrudern. Nicht was das Gerät betrifft, aber was Foxconn angeht… Was ich bei dieser Garantiereparatur erlebt habe, ist mir bisher nicht untergekommen. Auch nicht während meiner Zeit als PC-Techniker, wo wir einige Sachen bei Acer reparieren lassen haben…

Donnerstag, 13.02.2014
Der Lüfter fängt aus heiterem Himmel an laut zu rattern. Das kannte ich schon vom Vorgänger, aber diesmal befanden wir uns noch in der Garantie. Also habe ich Caseking angeschrieben und den Sachverhalt direkt gemeldet.

Freitag, 14.02.2014
Caseking schrieb zurück, dass ich das Retoureformular ausfüllen soll und dass erstmal alles bei denen geprüft werden muss. Immerhin bekommt man direkt ein Rücksendeetikett.
Ich habe also das Formular ausgefüllt und auf das Etikett gewartet.

Montag, 17.02.2014
Das Etikett kam wie versprochen, zusammen mit einer Mail in der Stand, dass man alles sorgfältig verpacken und polstern soll. Soweit alles super schnell und Standard.

Donnerstag, 20.02.2014
Da man sich ja so schwer von seinem Rechner trennen kann, habe ich ihn erst am Mittwoch eingepackt und am Donnerstag zur Post gebracht. Freitag Vormittag war er dann schon am Ziel angelangt. Weil es ein Barebone ist, habe ich also Speicher und Platte ausgebaut, mich aber entschlossen das Netzteil dazuzulegen,  falls Caseking nix Passendes da hat.

Dienstag, 25.02.2014
Caseking schickt mir eine Eingangsbestätigung mit dem Hinweis, dass sie die Garantie nicht selbst bearbeiten können, sondern zurück zum Hersteller schicken. Dabei ein PDF, wo unter Anderem angegeben war, dass kein Zubehör dabei war. Ich habe dann nochmal drauf hingewiesen, dass ich mein Netzteil mitgeschickt habe, was dann intern wohl auch vermerkt wurde.

Montag, 17.03.2014
Nach nunmehr drei Wochen ohne Infos habe ich mal nachgefragt, wie der Bearbeitungsstand ist. Am selben Tag bekam ich noch Antwort, dass bei Foxconn zwei Wochen, inklusive Versandweg üblich sind und dass man sich für die Verzögerung entschuldigt. Man hätte jedoch keinen Einfluss darauf, und würde mich verständigen, sobald der Rechner wieder zurück sei.

Mittwoch, 19.03.2014
Ich weise darauf hin, dass man die Ungewöhnlichkeit der Verzögerung auch zum Anlass nehman kann, beim Hersteller mal nachzufragen.

Donnerstag, 20.03.2014
Man hat nachgefragt und meldet sich, sobald Antwort da ist.

Donnerstag, 27.03.2014
Sieh an, ein Paket von Caseking. Sollte ich nicht noch eine Mail erhalten? Egal. Paket aufgemacht und schon gesehen, dass es nicht meine Verpackung ist. Eine Anleitung hatte ich nämlich nicht mitgeschickt.

Man konnte keine Mängel feststellen, aus Kulanz verzichtet man aber auf eine Berechnung der Aufwände.

Sollte der Lüfter echt nicht mehr gerattert haben? Na, ich werds ja gleich wissen – Moment, wo ist das Netzteil?! Na super, extra drauf hingewiesen und dann ist es nicht dabei.

Gut, wollte ich den Rechner wenigstens zusammenbauen. Also aufgeschraubt, Speicher rein und dann des nächste WTF: kein Festplattenrahmen mehr drin. Nicht mal die Schrauben…

Ok, also nächste Mail an Caseking, Problem erläutert: Netzteil fehlt, Festplattenrahmen fehlt.

Freitag, 28.03.2014
Man habe die Teile beim Hersteller angefragt und werde sie umgehend an mich versenden, sobald sie da sind.

Mittwoch, 02.04.2014
Diesmal mal telefonisch nachgefragt. Einerseits um vielleicht etwas mehr Persönlichkeit reinzubringen, andererseits, um anzumerken, dass zum Festplattenrahmen auch Schrauben gehören. Nicht, dass diese am Ende fehlen.

Donnerstag, 10.04.2014
Mal wieder per Email nachgefragt, wie schwer es denn sein kann. Am selben Tag noch Antwort, dass die Teile bei Foxconn bestellt seien und dass es dafür Seitens Foxconn auch eine Bestätigung gibt. Wieder das Versprechen, umgehend alles zuzusenden.

Mittwoch, 16.04.2014
Heute wieder mal gemailt, da immer noch keine Info da ist. Sofortige Antwort, dass die Teile zu Caseking unterwegs sind und vermutlich morgen eintreffen.
Zusammen mit Ostern bedeutet das, dass ich mit viel Glück am Samstag ein Paket bekomme, oder erst nächste Woche…

Fassen wir nochmal zusammen: Einen Monat bis ich den Rechner wieder in den Händen hielt und nochmals – bisher – drei Wochen, bis ich zumindest weiß, dass die fehlenden Teile sich in meine Richtung bewegen.

Ich weiß bisher noch nicht, ob der Rechner überhaupt noch geht und ob der Lüfter dasselbe Fehlerbild zeigt.

Abgesehen davon, dass die Informationspolitib bei Caseking unter aller Sau ist, sonst hätte ich den Rechner nicht ohne Email zuvor erhalten, hätte doch bei Caseking schon jemand merken müssen, dass kein Netzteil dabei ist.

Und spätestens als klar war, dass jemand Mist gebaut hatte und Teile fehlen, hätte irgendjemand bei Caseking oder Foxconn ins Regal greifen, die Teile zusammensuchen und sie umgehend rausschicken müssen. Ich erwarte ja nicht Sameday, aber länger als eine Woche ist in der heutigen Zeit dafür echt zu viel.

Nachtrag:

Am Mittwoch den 21.04.2014 kam dann endlich der Rahmen, ein Netzteil und eine Handvoll Schrauben, die jemand mit in die Kiste gelegt hatte. Es waren nicht die Originalen, aber sie haben gepasst…
Aber, fast wie erwartet, fehlte wieder etwas. Diesmal das Anschlusskabel, um das Netzteil an den Strom anzuschließen. Ok, mein Fehler – davon hatte ich bisher nicht gesprochen. Mitdenken ist aber auch nicht die große Stärke…

Das Kabel habe ich dann wieder moniert und es kam Ende der Woche. Jetzt kann ich endlich wieder an meinem Rechner arbeiten. Und der Lüfter ist wieder fast unhörbar. Dabei hatte doch Foxconn keinen Fehler finden können…

neuer NanoPC

Kurz nach meinem Beitrag über mein „neues Notebook“ traf schon der Foxconn NanoPC AT-7500 ein. Dazu hatte ich noch ein 8GB RAM Modul bestellt und habe die 500GB Seagate Momentus 7200.4 eingebaut, die schon im vorherigen Foxconn werkelte. Dieser hat jetzt eine 320GB WDC Scorpio Blue bekommen, die zwar nur mit 5400 rpm läuft, aber das ist für seine Aufgabe nicht wichtig.

Zuerst einmal hat sich das Design weiterentwickelt. Der NanoPC ist etwas dicker, hat gebürstete Metallflächen und eine neue, deutlich stabilere VESA Halterung. Der Karton erinnert sehr an Apple und das Auspacken ist ein echtes Erlebnis.

Lüfterlos ist er indes nicht. Auch wenn der Lüfter selbst unhörbar ist, so hört man deutlich einen Luftstrom, wenn die CPU Last bekommt. Das alte Modell ist jedoch lauter, wenn der Lüfter heult. Durch die immensen Reserven der CPU lüftet der NanoPC eh deutlich seltener.

Zum Leistungsvergleich vielleicht der Windows 8 Experience Index:

Performance Index E350, WDC blue
nt-A3500, 4GB, WDC Scorpio Blue
Performance Index - AT-7500, Seagate Momentus 7200.4
AT-7500, 8GB, Seagate Momentus 7200.4

Man sieht deutlich den Unterschied zwischen den beiden CPUs, dem Speichertakt (1600 gegen 1033) und sogar den rpm der Festplatten.

Ich kenne den Zotac nicht, aber ich bin mit der Entscheidung für den Foxconn NanoPC sehr glücklich. Er ist leise, schick und hat genug Leistungsreserven…

Das neue Notebook

Oder warum es eben kein Notebook wird …

Es ist knapp zwei Jahre her, dass ich mein letztes Notebook – ein  Thinkpad SL300 – beim Versuch, die CPU durch ein stromsparenderes Modell zu ersetzen, geschrottet habe. Damals war die bange Frage, welches Modell ein ebenbürtiger Ersatz sein könnte.

Das Display war mir mit 13 Zoll zu klein geworden. Außerdem störten mich die permanenten Lüfter- und auch andere Geräusche. Zudem wurde es im Sommer ziemlich warm und am Ende saß ich eh immer am selben Platz. Nicht zuletzt war das Geld knapp und ein neues, gutes Notebook einfach nicht drin.

Für knapp 400 € holte ich mir ein 22″ Display und einem Nettop von Foxconn (nT-A3500) mit dem damals noch sehr frischen und vielversprechenden AMD Fusion E-350. Leistungsmäßig war ich dadurch knapp unter dem Core2 Duo des SL300, bei einem sehr ansprechenden Preis. Da ich eh keine Spiele spiele, und sonst auch eher Standardaufgaben mache, war der E-350 keine schlechte Wahl.

Nun, wie gesagt knapp zwei Jahre später, merkt man die knapp bemessene Leistung an allen Ecken und Enden. Videos Full-HD in Vollbild sind kein Problem, wenn man VLC benutzt. Auf youtube ging es zwar am Anfang, aber mittlerweile verlangt der Flash-Player einfach zu viel. Andere Plattformen wie vimeo sind noch schlimmer dran. Da scheint die Optimierung zu hängen.

Ich habe wieder ein wenig Java-Programmierung angefangen. Eclipse oder Netbeans sind da kein Spaß. IntelliJ IDEA geht gerade noch. Aber direkt fluffig ist anders. Und wenn man da auf Arbeit an einem ausgewachsenen i5 der neuesten Generation sitzt, ist man doch ein klein wenig verwöhnt.

Aber wovon rede ich hier? Der Nettop sollte ersetzt werden. Zuerst sollte es ein neuer Nettop – oder zumindest Mini-PC – sein. Dann dachte ich mir, dass man für den anvisierten Preis von 400-500 € mittlerweile ja ganz brauchbare Notebooks bekommt. Also habe ich in die Richtung recherchiert und ein Toshiba Satellite Pro C850 mit i5 und 6GB RAM erworben.

Das Display ist erfreulich gut und auch wieder matt. Notebook flott, bleibt auch erstaunlich kühl und ruhig. Aber die Tastatur sehr schwammig. Sie biegt sich bei jedem Druck durch. Akku-Laufzeit geht noch ok. Der Klang – was für ein Witz. Das Notebook sollten sie ohne Lautsprecher verkaufen. Selbst das T60 meiner Frau klingt um Welten besser, und das ist 5 Jahre alt …

Und dann Anschlüsse. 2x USB 1.1 und 1x USB 2.0. Keiner davon always on. Ehrlich? Wir haben 2013! Selbst mein Nettop hat 2x USB 3.0. Und dazu noch optischen Audio-Out.

Nee, sorry, das Notebook ging wieder zurück. Aber zumindest wusste ich jetzt die Leistungsklasse, die es schon sein sollte. Die CPU war auf dem Notebook deutlich unterbeschäftigt. Vielleicht auch, weil der Rest nicht so gut abgestimmt ist …

Zurück zur Nettop Idee.

Die Zotac Zbox ID83 machte eine gute Figur. Aktueller i3 mit ansprechenden Leistungsdaten. Soll auch halbwegs ruhig sein. Nur irgendwie ist das Teil nirgendwo lieferbar. Cyberport spricht von Juli. Conrad hat gerade wieder eine Woche verschoben. Dann gibt es bei Zotac scheinbar auch keine Updates. Das BIOS ist immer noch auf Auslieferversion. Bei meinem Foxconn gibt es 10 Nachfolgeversionen. Gut, das kann auch heißen, dass Zotac von vornherein gute Ware liefert und Foxconn schlampt.

Foxconn hat eine neue Serie im Programm die äußerst ansprechend klingt: AT-7300, AT-7500 und AT-7700. Lüfterloses Design und aktueller i3, i5 bzw. i7. Nach meinen sehr guten Erfahrungen mit Foxconn, ist nun ein AT-7500 auf dem Weg zu mir. Durch die Low-Voltage Varianten, wollte ich lieber nicht das Risiko mit der niedrigen Leistung des i3 auf 1,8GHz eingehen. Der i5 hat ja immer noch seinen Turbo-Gang, der schon Einiges bringt.

Ich bin gespannt und werde berichten…

2-klick Buttons sozialer Netzwerke

Jeder kennt sie, die Tweet-, Like- und +1-Knöpfe, die sich auf fast jeder Webseite tummeln. Vielleicht weniger bekannt, aber bereits durch das Anzeigen dieser „Buttons“, weiß das entsprechende soziale Netzwerk, auf welchen Seiten man sich so rumtreibt. Zumindest solange man gerade eingeloggt ist und die entsprechenden Cookies aktiv sind.

Um den Besuchern ein wenig mehr Privatsphäre zu gönnen, hat die c’t das Projekt 2-Klick social share privacy ins Leben gerufen. Der Besucher muss nun aktiv den jeweiligen Knopf freischalten, um ihn zu benutzen. Alternativ kann sich der Besucher auch entscheiden, dass die Knöpfe immer aktiv sein sollen, ohne dass er sie extra freischaltet. Dafür muss er sich aber bewusst entscheiden.

Lange Rede, kurzer Sinn – die Idee gefiel mir und ich wollte sie auf meiner Webseite umsetzen. Nun gibt es zwar ein, zwei Plugins, die das bereits machen, aber sie haben sich nicht so schön mit dem von mir werwendeten Theme – PressWork – integriert. Für PressWork gibt es bereits eine schöne Anleitung, wie man die Social Media Buttons integriert, so dass sie hübsch aussehen. Nämlich nicht ans Ende des Beitrags, sondern direkt darunter. Leider wurde das Projekt unlängst eingestellt und – noch schlimmer – auch die Webseite zeigt nur noch genau diese Information.

Zum Glück gibt es aber das Webarchiv und es gibt somit auch eine Kopie der PressWork Dokumentation dort zu finden. Somit hatte ich also alle Informationen, die ich brauchte und entschied mich als Grundlage das Plugin wp-socialshareprivacy zu nehmen. An sich hätte das schon genügt für die Anzeige, aber ich wollte ja eine andere Position. Glücklicherweise besteht der eigentliche HTML-Code für die Anzeige nur aus der Zeile:

Diese habe ich in der wp-socialprivacy.php auskommentiert. Somit wird zwar durch wp-socialshareprivacy der ganze Code eingebunden und man kann auch die komplette Konfiguration bequem vornehmen, die Anzeige passiert aber woanders.

        function add_content($content = '') {
                global $Default_options;

                $setting_options = get_option('wpssp_options' );
                if ( $setting_options ) {
                        foreach ( array_keys($Default_options[services]) as $service ) {
                                if ( !isset($setting_options['services_' . $service . '_status']) ) {
                                        $setting_options['services_' . $service . '_status'] = 'off';
                                }
                        }
                        foreach ( $setting_options as $key => $value) {
                                if ( isset($value) && strlen($value) ) {
                                        if ( preg_match('/^services_(facebook|twitter|gplus)_(.*)$/', $key, $matches ) ) {
                                                $Default_options[services][$matches[1]][$matches[2]] = $value;
                                        }
                                        else {
                                                $Default_options[$key] = $value;
                                        }
                                }
                        }
                }
                $id = 'socialshareprivacy_' . md5(get_permalink());
                // $content .= '
'; $content .= " "; $content .= ''; return $content; }

Nun zum PressWork Teil. Zu Allererst sollte man in WordPress nicht im originalen Theme ändern, sondern man erstellt ein Child-Theme. Das hat den Vorteil, dass Änderungen durch Updates nicht überschrieben werden. Nun kann man sich streiten, ob das für PressWork noch nötig ist, da es ja vermutlich keine Updates mehr gibt.

Für PressWork gibt es sogar eine eigene Anleitung. Im Prinzip muss man aber nur in wp-content/themes neben den presswork Ordner einen eigenen Ordner anlegen. Darin legt man eine Datei style.css, die minimal folgenden Inhalt hat:

/*
 Theme Name: PressWork - Child theme
 Theme URI: http://presswork.me
 Description: A basic child theme for PressWork
 Author: c.bavota
 Author URI: http://bavotasan.com/
 Template: presswork
 Version: 0.1
 */

@import url("../presswork/style.css");

Dieses Child Theme wird jetzt in WordPress unter Themes angezeigt und kann ausgewählt werden. Danach legt man nach der Anleitung eine actions.php im Ordner an und realisiert damit die Anzeige der Buttons:

< ?php

function share_buts(){
	$id = 'socialshareprivacy_' . md5(get_permalink());
	$content .= '
'; echo $content; } add_action('pw_single_post_bottom', 'share_buts'); ?>

Im Anschluss daran sind die Buttons da wo sie sein sollten, allerdings passt das Layout noch nicht ganz, da das CSS der Buttons nicht ganz sauber ist und teilweise von PressWork Einstellungen überschrieben wird. Dies könnte man im Plugin ändern, welches ja eh schon bearbeitet ist. Aber um für eventuelle Updates gerüstet zu sein, trägt man die entsprechenden Optionen lieber am Ende der style.css des Child-Theme ein:

.social_share_privacy_area ul {
	list-style-type: none;
}
.social_share_privacy_area li {
  clear: none;
	list-style-type: none;
}

Das Ergebnis kann man hier direkt unter dem Artikel bewundern und auch gern ausprobieren… 😉

XML auf der Kommandozeile parsen

Den heutigen Abend habe ich unter Anderem damit zugebracht, von der arte Webseite eine Anzahl Videos herunterladen zu wollen. Normalerweise nehme ich dazu MediathekView, aber diese Videos waren leider nicht drin. Nach einiger Suche habe ich dann auch die Playlist gefunden – eine XML Datei, in der sowohl die niedrige als auch die hohe Qualität der Filme vermerkt waren.

      

Mir ging es jetzt also darum, die einzelnen HD-URLs rauszuparsen. Da ich auf Arbeit gerade viel mit Microsoft PowerShell hantiere, fiel mir ein, wie einfach das jetzt wäre:

$videos = [XML] (Get-Content -Path video-playlist-46.xml)
$urls = Select-XML -Content $videos -XPath "//urlHd" | % {$_.node.InnerXML}

Den Umweg über Get-Content könnte man sich sogar noch sparen …

Tja, nun habe ich zu Hause aber Linux. Die üblichen Verdächtigen habe ich dann gleich mal drauf angesetzt.
grep liefert die Tags mit. awk – zumindest so, wie ich es auf die Schnelle geschrieben habe, liefert auch die ganze Zeile, also mit Tags. Bevor ich weiter mit egrep versucht habe, bzw. meine Perl Kenntnisse ausgegraben habe, befragte ich die große Datenhalde.

Rausgekommen sind zwei Erkenntnisse:

Das Tool xml_grep liefert dann auch schnell die gewünschten Ergebnisse:

xml_grep urlHd video-playlist-46.xml --text_only

Am Runterladen der Videos bin ich trotzdem gescheitert, flvstreamer fehlt wohl noch eine Option, dass es klappt. So findet er keinen Mediastream…

App für teilAuto

Die Tage flatterte eine Neuigkeit von teilAuto ins Haus: Es gibt eine neue App, WebApp. Diese soll nicht nur die bisherige mobile Webseite ersetzen, sondern auch die aktuelle iPhone App.

Eine WebApp? teilAuto hat also Geld in die Hand genommen und eine neue mobile Webseite programmiert bw. programmieren lassen. Löblich ist, dass diesmal nicht nur auf das iPhone geschielt wurde, wie bei der letzten App, sondern auf die ganze Bandbreite der mobilen Geräte. Warum die mobile Webseite nun zur WebApp mutiert, kann wohl nur das Marketing beantworten – vermutlich ist „mobile Webseite“ nicht sexy genug.

Was mir aber völlig schleierhaft ist, warum teilAuto überhaupt selbst entwickeln muss. Offiziell gab es bisher nur die iPhone App. Aber, wer genau hingeschaut hat, der hat gesehen, dass teilAuto sowieso die Infrastruktur von flinkster nutzt. Ich hatte es vor Ewigkeiten ausprobiert – die Android flinkster App funktioniert gut auch für teilAuto. Hätte man die nicht einfach besser vermarkten können? Evtl. auch von den flinkster Entwicklern eine umgelabelte Version erhalten können?

Verstehe ich nicht – als ob das Geld nicht auch anders hätte ausgegeben werden können. Zum Beispiel in die Weiterentwicklung der flinkster App. Mir fallen da spontan der Verfügbarkeitskalender, der nur ein heruntergeladenes Bild ist und ein fehlendes Feld für den Rechnungsbetreff ein.

Neues Jahr, neue Seite, …

… neuer Name, neue Software, neues Glück?

Letzteres wird sich noch zeigen. Auf jeden Fall wird es auf dieser Seite keine alten Inhalte geben. Abgesehen vielleicht von zwei oder drei der am meisten gelesenen Artikel, bzw. Sachen, die mir sehr am Herzen lagen und immer noch liegen. Außerdem werde ich hier wohl nicht allein bleiben, auch wenn das noch nicht ganz sicher ist.

Sicher ist, dass es wieder jede Menge Computerkram geben wird, ein wenig Whippet- und Hundekram und all die anderen Sachen, die mich so bewegen.