Wadoku.de Forum
  [Search] Search   [Recent Topics] Recent Topics   [Hottest Topics] Hottest Topics  
[Register] Register /  [Login] Login 
Messages posted by: system
Forum Index » Profile for system » Messages posted by system
Message
image
Die XML-Daten von Januar 2011 wurden mit diesem Perl-Skript umgewandelt. Es sind noch ein paar Sachen dabei, die schlecht formatiert werden und ein paar Sachen werden einfach komplett ignoriert. Ich hatte auch mal mit der Umwandlung zu Romaji herumgespielt, aber leider wurde da immer irgendwas falsch umgewandelt. Eventuell könnte man da noch mal hier im Java-Quellcode nachlesen, wie man das richtig macht.

#!/opt/local/bin/perl
use strict;
use warnings;
use XML::Twig;
use utf8;
use Data::Dumper;
use HTML::Entities;
binmode STDOUT, ":utf8";
binmode STDERR, ":utf8";
#require 'Kana.pl';#kana2romaji

open(XML, '>', "wadoku.xml") or die $!;
binmode XML, ":utf8";
print XML qq'<?xml version="1.0" encoding="UTF-8"?>\n';
print XML qq'<d:dictionary xmlns="http://www.w3.org/1999/xhtml" xmlns:d="http://www.apple.com/DTDs/DictionaryService-1.0.rng">\n';
my $i=0;

my $t = XML::Twig->new(
	twig_handlers => {
		entry => \&entry
	}
);
$t->parsefile( 'wadoku');
print XML qq'</d:dictionary>';
close XML; 

sub flatten 
{
	my ($t) = @_;
	
	if($t->has_children()) {
		my @children = $t->children();
		my $output = "";
		foreach my $c (@children) {
			if($c->tag eq 'token') 
			{
				my $type = $c->att('type')||"N";
				die "bad type: $type\n" if $type ne 'N';
				my $gen = $c->att('genus') || "";
				my $num = $c->att('numerus')||"";
				if("$gen$num" ne "") {
					$output .= flatten($c);#.qq!<span class="genus"> $gen$num </span>!;
				} else{
					$output .= flatten($c);#.qq!<span class="genus"> (NAr) </span>!;
				}
			} elsif($c->tag eq 'text') {
				my $nach = $c->att('hasFollowingSpace')||"";
				my $vor = $c->att('hasPrecedingSpace')||"";
				$output .= " " if $vor;
				$output .= flatten($c);
				$output .= " " if $nach;
			} elsif($c->tag eq 'bracket') {
				my $x = flatten($c);
				$x =~ s!;? $!!;
				$output .= qq!<span class="klammer"> (!.$x.") </span>";
			} elsif($c->tag eq 'tr') {
				$output .= flatten($c)."; ";
			} elsif($c->tag eq 'def') {
				$output .= flatten($c)."; ";
			} elsif($c->tag eq '#PCDATA') {
				$output .= encode_entities($c->text,'<>&"');
			} elsif($c->tag eq 'ref') {
				my $id = $c->att('id');
				my $type = $c->att('type');
				my $jap = $c->first_child('jap');
				if((not defined $jap) || (not defined $type)) {
						my $x = flatten($c);
						$output .= qq!<span class="ref">!.$x." </span>";
						#print "\n$x\n";
						#print "\n";
						#$c->print;
						#print "\n";
						#$t->print;
						#print "\n";
						#die "not ref";
				} else {		
					$jap = flatten($jap);
					$type =~ s!^altread$!→!;
					$type =~ s!^syn$!⇒!;
					$type =~ s!^anto$!⇔!;
					if(defined $id) {
						$output .= qq!<a href="x-dictionary:r:wadoku$id">$type ($jap)</a>; !;
					} else {
						$output .= qq!<a href="x-dictionary:d:$jap">$type ($jap)</a>; !;
					}
				}
			} elsif($c->tag eq 'foreign') {
				$output .=  '<span class="foreign">'.flatten($c)." </span>";
			} elsif($c->tag eq 'emph') {
				$output .=  '<em>'.flatten($c)."</em>";
			} elsif($c->tag eq 'etym') {
				$output .=  '<span class="etym">'.flatten($c)." </span>";
			} elsif($c->tag eq 'title') {
				$output .=  '<span class="title">'.flatten($c)." </span>";
			} elsif($c->tag eq 'date') {
				$output .=  '<span class="date">'.flatten($c)." </span>";
			} elsif($c->tag eq 'birthdeath') {
				$output .=  '<span class="birthdeath">'.flatten($c)."</span>";
			} elsif($c->tag eq 'impli') {
					#keine ausgabe
			} elsif($c->tag eq 'usg') {
					my $type = $c->att('type')||"";
					my $reg = $c->att('reg');
					if($type eq "") {
						if(not defined $reg) {
							#print "\n";
							#$c->print;
							#print "\n";
							#$t->print;
							#print "\n";
							#die "no reg";
						} else {
							$reg = ucfirst $reg;
							$output .= qq'<span class="register">$reg </span> ';
						}
					} else {
					if($type eq 'hint') {
						$output .= '<span class="rel">||</span> ';
					} 
					elsif($type eq 'dom') {
						$output .=  '<span class="dom">'.flatten($c)." </span>";
					}
					elsif($type eq 'abrev') {
						$output .=  '<span class="abrev">'.flatten($c)." </span>";
					}
					elsif($type eq 'time') {
						$output .=  '<span class="time">'.flatten($c)." </span>";
					}
					else {
						print "\n";
						$c->print;
						print "\n";
						$t->print;
						print "\n";
						die "rel $type";
					}
					}
			} else {
			    my $x =  '<span class="'.$c->tag.'">'.flatten($c)." </span>";
				$output .= $x;
				if($c->tag ne 'trans'
				&& $c->tag ne 'expl'
				&& $c->tag ne 'famn'
				&& $c->tag ne 'transl'
				&& $c->tag ne 'topic'
				&& $c->tag ne 'literal'
				&& $c->tag ne 'deu_gr'
				&& $c->tag ne 'specchar'
				&& $c->tag ne 'iron'
				&& $c->tag ne 'jap'
				&& $c->tag ne 'descr'
				&& $c->tag ne 'transcr'
				&& $c->tag ne 'expli') {
					print "\n".$c->tag;
					print "\n";
					$c->print;
					print "\n";
					$t->print;
					print "\n";
					print "$output\n";
					die "handle me";
					#$c->print;
					#print "\nx: $output\n";
				}
			}
		}
		return $output;
	} 
	else {
	 	return $t->text();
	}
}

sub entry 
{
	my ($t, $entry) = @_;
	
	my $id = $entry->att('id');
	if((not defined $id) || (not $id =~ m!^[0-9]+$!)) {
		$entry->print;
		exit;
	}
	
	my @form = $entry->children('form');
	
	if(length @form != 1) {
		$entry->print;
		exit;
	}
	
	my @orth = $form[0]->children('orth');
	if(length @orth < 1) {
		$entry->print;
		exit;
	}	
	
	my @pron = $form[0]->children('pron');
	if(length @pron < 1) {
		$entry->print;
		exit;
	}
	
	my $lemma = undef;
	my $schreibweise = "";
	foreach my $orth (@orth) {
		my $o = $orth->text;
		my $is_lemma = $orth->att('midashigo') || "";
		$lemma = $o if $is_lemma or not defined $lemma;
		my $is_irr = $orth->att('irr') || "";
		$schreibweise .= "$o; ";
	}
	$schreibweise =~ s!; $!!;
	
	if(not defined $lemma) {
		$entry->print;
		exit;
	}
	
	$lemma =~ s!×!!g;
	$lemma =~ s!△!!g;
	$lemma = encode_entities($lemma,'<>&"');
	#print "lemma: $lemma\n";
	
	my $aussprache = undef;
	my $aussprachen = "";
	foreach my $pron (@pron) {
		my $is_hatsuon = $pron->att('type') || "";
		if($is_hatsuon) {
			my $p = $pron->text;
			#my $romaji = kana2romaji($p);
			#$romaji =~ s!/!!g;
			#$romaji =~ s!<!!g;
			#$romaji =~ s!>!!g;
			#$romaji =~ s!ux!u!g;
			#$romaji =~ s!doxu!du!g;
			#$romaji =~ s!dexy!dy!g;
			#$romaji =~ s!u゛x(.)!v$1!g; # fix va, vi, ve ...
			#$romaji =~ s!\[Gr\](.)!uc $1!eg;
			#$romaji =~ s!\[Jo\]ha!wa!g;
			#$romaji =~ s!\[Jo\]he!e!g;
			#$romaji =~ s!wo!o!g;
			#$romaji =~ s!\[Dev\]([^aiueo]*)([aiueo])!$1<span class="devok">$2</span>!g;
			#$romaji =~ s!\[[^]]*\]!!g;
			#$romaji =~ s! ! !g;
			#$romaji =~ s!、!,!g;
			#$romaji =~ s!。!.!g;
			#$romaji =~ s!dexi!di!g;
			#$romaji =~ s!ixyu!yu!g;
			#$romaji =~ s!ixyo!yo!g;
			#$romaji =~ s!ixya!ya!g;
			#$romaji =~ s!ixe!ye!g;
			#$romaji =~ s!fuxa!a!g;
			#$romaji =~ s!jixe!je!g;
			#$romaji =~ s!_!!g;
			#$romaji =~ s!'!!g;
			#$romaji =~ s!・!!g;
			#$romaji =~ s!’!!g;
			#$romaji =~ s!・!!g;
			#$romaji =~ s!っ(.)!$1$1!g;
			#$romaji =~ s!&!&!g;
			
			$p =~ s!×!!g;
			$p =~ s!△!!g;
			$p =~ s!〈!!g;
			$p =~ s!〉!!g;
			$p =~ s!\{([^ ]+)\}!$1!g;
			$p =~ s!\[[^]]*\]!!g;
			$p =~ s!_!!g;
			$p =~ s!'!!g;
			$p =~ s!・!!g;
			$p =~ s!/!!g;
			$p =~ s!<!!g;
			$p =~ s!>!!g;
			$p =~ s!’!!g;
			$p =~ s!・!!g;
			$p =~ s!~!!g;
			$p = encode_entities($p,'<>&"');
			#$aussprachen .= "$p $romaji; ";
			$aussprachen .= "$p; ";
		}
	}
	$aussprachen =~ s!; $!!g;
	
	my @sense = $entry->children('sense');
	if(length @sense < 1) {
		$entry->print;
		exit;
	}
	
	my $yomi;
	
	foreach my $pron (@pron) {
		my $p = $pron->text;
		my $is_hatsuon= $pron->att('type') || "";
		if($is_hatsuon) {
			$p =~ s!×!!g;
			$p =~ s!△!!g;
			$p =~ s!〈!!g;
			$p =~ s!〉!!g;
			$p =~ s!\{([^ ]+)\}!$1!g;
			$p =~ s!'!!g;
			$p =~ s!\[[^]]*\]!!g;
			$p =~ s!/!!g;
			$p =~ s!<!!g;
			$p =~ s!>!!g;
			$p =~ s!\s+!!g;
			$p =~ s!・!!g;
			$p =~ s!_!!g;
			$p =~ s!’!!g;
			$p =~ s!…!!g;
			$p =~ s!~!!g;
			$p = encode_entities($p,'<>&"');
			$yomi = $p;
		}
	}
	
	if(not defined $yomi) {
		foreach my $pron (@pron) {
			my $p = $pron->text;
			$p =~ s!×!!g;
			$p =~ s!△!!g;
			$p =~ s!〈!!g;
			$p =~ s!〉!!g;
			$p =~ s!\{([^ ]+)\}!$1!g;
			$p =~ s!'!!g;
			$p =~ s!\[[^]]*\]!!g;
			$p =~ s!/!!g;
			$p =~ s!<!!g;
			$p =~ s!>!!g;
			$p =~ s!\s+!!g;
			$p =~ s!・!!g;
			$p =~ s!_!!g;
			$p =~ s!’!!g;
			$p =~ s!…!!g;
			$p =~ s!~!!g;
			$p = encode_entities($p,'<>&"');
			$yomi = $p;
		}
	}
	
	die "no yomi\n" if not defined $yomi;
	
	print XML qq!<d:entry id="wadoku$id" d:title="$lemma">!;
	foreach my $orth (@orth) {
		my $o = $orth->text;
		$o =~ s!…!!g;
		$o =~ s!×!!g;
		$o =~ s!△!!g;
		$o =~ s!〈!!g;
		$o =~ s!〉!!g;
		$o =~ s!\{([^ ]+)\}!$1!g;
		if($o =~ m!\([^)]*\)!) {
			while($o =~ s!([^;]*)\(([^)]*)\)([^;]*)!$1$2$3;$1$3!g) {};
		}
		my @x = split ";",  $o;
		foreach my $x (@x)  {
			$x = encode_entities($x,'<>&"');
			print XML qq!<d:index d:value="$x" d:yomi="$yomi"/>!;
		}
	}
	
	foreach my $pron (@pron) {
		my $p = $pron->text;
		my $is_hatsuon= $pron->att('type') || "";
		
		if(not $is_hatsuon) {
			#my $romaji = kana2romaji($p);
			#$romaji =~ s!u゛x(.)!v$1!g;
			#$romaji =~ s! ! !g;
			#$romaji =~ s!、!,!g;
			#$romaji =~ s!。!.!g;
			$p = encode_entities($p,'<>&"');
			#$romaji = encode_entities($romaji,'<>&"');
			print XML qq!<d:index d:title="$lemma" d:value="$p" d:yomi="$yomi"/>!;
			#print XML qq!<d:index d:title="$lemma" d:value="$romaji" d:yomi="$yomi"/>!;
		}
	}
	
	my $bedeutung = "";
	my $cnt=0;
	my $ms = @sense;
	foreach my $sense (@sense) {
			my $eintrag = flatten($sense);
			$eintrag =~ s!; $!!;
			$cnt++;
			$bedeutung .= " " if $ms>1 && $cnt!=1;
			#$bedeutung .= "<p>";
			$bedeutung .= "[$cnt] " if $ms>1;
			$bedeutung .= $eintrag;
			#$bedeutung .= "</p>";
	}
	
	#print "bedeutung: $bedeutung\n";
	
	#exit if $i++>100;
	
	print XML qq!<div><h1><span class="headword">$lemma</span> <span class="hyouki">【$aussprachen】</span></h1></div>!;
	#print XML qq!<div class="hyouki">【$aussprachen】</div>!;
	print XML qq!<div class="meaning">$bedeutung</div>!;
	print XML qq!</d:entry>\n!;
	$entry->purge;
	return 1;
}
Hier noch der Beitrag zu den alten Daten von Ende 2009.

Basierend auf der Gjiten-Version vom 20. Dezember 2009 von hier. Sollte ab Mac OS X 10.5 funktionieren; wurde aber nur mit 10.6.2 und 10.6.3 getestet.

Entpacken und nach ~/Library/Dictionaries oder /Library/Dictionaries kopieren, dann einfach Lexikon/Dictionary neu starten.

Downloadlink:
http://rapidshare.com/files/327430334/Wadoku.dictionary.zip (82,4 MB)

image

Hier das Perl-Skript zum selber konvertieren:
#!/usr/bin/perl -w
use strict;
use utf8;

binmode STDOUT, ":utf8";
open FH,"<:encoding(utf-8)","WADOKUJT.txt" or die "could not open dict";
print qq(<?xml version="1.0" encoding="UTF-8"?>\n);
print qq(<d:dictionary xmlns="http://www.w3.org/1999/xhtml" xmlns:d="http://www.apple.com/DTDs/DictionaryService-1.0.rng">\n);

my @bdl;
my @lel;
my @wwl;
while(my $entry = <FH>) {
    chop($entry);
    if($entry =~ m!([^[]+) \[([^\]]+)\] (.*)$!) {
        my $lesung = $2;
        my $woeter = $1;
        my $bedeutung = $3;
        push @bdl,$bedeutung;
        push @wwl,$woeter;
        push @lel,$lesung;
    } else {
        $bdl[-1]=$bdl[-1].$entry;
    }    
}

sub safe($) {
    my $wort = pop();
    $wort =~ s/&/&/g;
    $wort =~ s/\>/>/g;
    $wort =~ s/\</</g;
    $wort =~ s/"/"/g;
    $wort =~ s/'/&apos;/g;
    $wort =~ s!\x0B!!g;
    $wort =~ s!\x10!!g;
    return $wort;
}

for(my $i=0; $i < $#wwl; $i++) {
    my $bedeutung = safe($bdl[$i]);
    my $lesung = safe($lel[$i]);
    my $haupt = safe($wwl[$i]);
    my @einzel = split(/ /,$haupt);
    $haupt =~ s! !; !g;
    print qq(<d:entry id="eintrag-$i" d:title="$haupt">\n);
    for(@einzel) {
        print qq(<d:index d:value="$_" d:title="$_" d:yomi="$lesung" />\n);
    }
    print qq(<h1><span class="headword">$haupt</span> <span class="hyouki">【$lesung】</span></h1>\n);
    $bedeutung =~ s!^/!!;
    $bedeutung =~ s!/$!!;
    $bedeutung =~ s!\s*/\s*!; !g;
    $bedeutung =~ s!^\s*!!;
    $bedeutung =~ s!\s*$!!;
    print qq(<div class="meaning">$bedeutung</div>\n);
    print qq(</d:entry>\n);
}
close FH;
print qq(</d:dictionary>\n);
Die Ausgabe dieses Perl-Skripts einfach als /Developer/Extras/Dictionary Development Kit/project_templates/MyDictionary.xml speichern und dann "make" im selben Verzeichnis aufrufen und schon sollte das Wörterbuch erstellt werden. Zum Erstellen von Wörterbüchern muss XCode installiert sein.

Ich hatte auch mal die Edict2-Version konvertiert. Die ist aber älter (Februar 2009). http://rapidshare.com/files/327377080/WadokuMac.sitx (74 MB). Das Skript dazu gibt es auf Nachfrage. Ich kann auch noch C-Quellcode anbieten mit dem man EPWING-Datei in flache Textdateien konvertiert.
So, der Loginkram sollte bei beiden Stilen jetzt zu sehen sein, außerdem sind die Genusangaben nun unsichtbar.

Dan, könnte man diese Sachen wie ×, △ und so auch irgendwie per CSS auswählbar machen. Ob das jetzt ein Kanji oder eine Lesung auf irgendeiner Behördenliste steht oder nicht, finde ich nicht so wichtig.
Hier mal der selbe Stil aber mit den Farben ein bisschen so wie bei der alten Suche:
image

#mainright{
 position: absolute;
 top: 2px;
 right: 10px;
}
#langselect{
 display: none;
}
body{
 background: #e6e6fa;
 font-family: arial, sans-serif;
 padding:0;
 margin:0;
}
ul.mainnav{
 display: block;
 text-align: left;
 font-size: small;
}
ul.mainnav,ul.mainnav *{
 list-style:none;
 text-align:left;
 margin: 0;
 margin-left: 8px;
 padding: 0;
 padding-top: 1px;
}
ul.mainnav:before{
 content:'Wadoku';
 font-weight:bold;
}
ul.mainnav li{
 display:inline-block;
}
.resultinfo{
 display:none;
}
.searchtime{
 display:none;
}
#sidepane{
 display: none;
}
.paginginfo{
 display:none;
}
.options{
 display:none;
}
.logo{
 display:none;
}
.buttons{
 display:none;
}
.pagefooter{
 display:none;
}
.umlaut{
 display: none;
}
#smallsearch{
 margin-top: 1px;
 border-top: 1px solid #C9D7F1;
 text-align: center;
}
#hd {
 height: 20px;
 width: 100%;
}
#smallsearch label {
 display: none;
}
#case{
 display: none;
}
button{ 
 border: none !important;
 color: black !important;
}
a .ui-button-text {
 color: #4272DB;
}
span.button {
 background: white;
 border: none;
}
a.button {
 background: white;
 border: none;
}
.aboveresult {
 display: none;
}
.belowresult {
 text-align:center;
}
#resulttab {
 width: 900px;
 margin-right: auto;
 margin-left: auto;
 font-size: large;
 border: thin solid black;
 background-color: #eee;
}
.searchinfo {
 display: block;
 text-align:center;
 width: 900px;
 margin-right: auto;
 margin-left: auto;
 font-size: small;
}
span#messages {
 display: none;
}
h2[onclick="show('#daijirin');"], #daijirin {
 display: none;
}
h2[onclick="show('#daijisen');"], #daijisen {
 display: none;
}
h2[onclick="show('#wikipediaja');"], #wikipediaja {
 display: none;
}
img[src="/wadoku/img/treeExpanded.png"] {
 display: none;
}
#breadcrumbs {
 background: white;
 color: white;
 border: none;
}
div.ui-widget-content {
 border: none;
}
#tagedit {
 display: none;
}
h2.ui-widget-header {
 display: none;
}
button[title="Eintrag in die Ablage legen."] {
 display: none;
}
button[title="Copy to Clipboard"] {
 display: none;
}
div[style="margin-left:2em;"]  {
 color: white;
}
.resultline{
 background-color: white;
}
.resultline.even{
 background-color: #fea;
}
td a {
 text-decoration: none;
}
#content {
 margin: 10px;
}
#searchinput {
 width: 700px;
 margin-right: auto;
 margin-left: auto;
}
div.showoptions {
 display: none;
}
#searchoptions {
 display: none;
}
.menu1 {
 display: none;
}

.entry .reading,.entry .romaji{font-size:small;height:1.4em}
.entry .reading .b{border-bottom:1px dotted gray}
.entry .reading .t{border-top:1px dotted gray}
.entry .reading .l{border-left:1px dotted gray}
.entry .reading .r{border-right:1px dotted gray}
.entry .romaji .devok{color:gray}
.entry .homophoncount,.entry .homographcount{font-size:x-small;vertical-align:top}
.entry .left{display:inline-block;text-align:center}
.entry .middle{display:inline-block;font-size:x-large;vertical-align:top;}
.entry .right{padding-left:10px;color:gray;display:none}
.entry .uid{font-size:x-small}
.entry .rel,.entry .indexnr {color: #000066}
.entry .top{border-bottom:1px solid #CCC;}
.entry .pos{margin-top:2px;font-family:Verdana,sans-serif;font-size:x-small}
.entry .pos:after{content:']'}
.entry .pos:before{content:'[';}
.entry .bottom{margin-top:5px;margin-bottom:8px;margin-left:10px;font-size:medium}
.entry .senses{margin-top:2px}
.entry .sense:hover{background-color:#f0f8ff;}
.senses .tr{font-family:Verdana,sans-serif}
.sense .def:before{content:'Def.: '}
.sense .latin:before{content:'lat.: ';font-style:italic;color:gray}
.sense .indexnr:before{content:'['}
.sense .indexnr:after{content:']\00a0'}
.sense .season:before{content:'【'}
.sense .season:after{content:'】'}
.sense .title:before{content:'\201e'}
.sense .title:after{content:'\201f'}
.jap:before{content:' ('}
.jap:after{content:')'}
.transcr:before{content:'<'}
.transcr:after{content:'>'}
.genus{ display: none; }
.foreign{font-style:italic;color:gray}
.reflink.syn:before{content:'\21d2\00a0'}
.reflink.anto:before{content:'\21d4\00a0'}
.reflink.main:before{content:'\21d1\00a0'}
.reflink.aread:before{content:'\2192\00a0'}
.reflink:hover,.token:hover{cursor:pointer}
.dom{color:darkgreen;font-style:italic;font-variant:small-caps}
.reg{font-style:italic;color:#483d8b}
.usage{color:maroon;font-style:italic}
.etym,.def{color:gray}
.famn{font-weight:bold;}
.klammer{color:gray}
.emph{font-weight:bold;font-style:italic;}
.reflink {}
Wobei man da vorher wohl noch einige kleine Änderungen vornehmen müsste. Die Sachen zum Anmelden usw. sind momentan unsichtbar und sollten eigentlich nach rechts oben. Die Breite der drei Felder in der Suchliste ist flexibel. Da sollte noch ein fester Wert eingestellt werden, damit es für jede Seite unabhängig von der Länge der Ergebnisse gleich aussieht. Eigentlich würde ich auch gerne etwa die Geschlechtsangaben bei den deutschen Nomen entfernen, nur bleiben dann immer noch ein paar hässliche Leerzeichen übrig.

Wenn das wenn ich mit dem Konvertieren der XML-Daten für das Apple-Wörterbuch fertig bin und sich inzwischen sonst kein Freiwilliger gefunden hat, werde ich da noch einmal drüber schauen.
Die letzte Benachrichtigungsmail wurde bei mir nun sofort und automatisch richtig angezeigt.
Ich habe mal eben etwas mit der User-CSS-Funktion rumgespielt. Vielleicht gefällt es ja jemandem.

Suchergebnisse:
image

Einzeleintrag:
image

Bei Interesse einfach unter http://www.wadoku.de/wadoku/user/ einfügen und dann "user" auswählen.
#mainright{
 position: absolute;
 top: 2px;
 right: 10px;
}
#langselect{
 display: none;
}
.menu1 {
 display: none;
}
body{
 background:white;
 font-family: arial, sans-serif;
 padding:0;
 margin:0;
}
ul.mainnav{
 display: block;
 text-align: left;
 font-size: small;
}
ul.mainnav,ul.mainnav *{
 list-style:none;
 text-align:left;
 margin: 0;
 margin-left: 8px;
 padding: 0;
 padding-top: 1px;
}
ul.mainnav:before{
 content:'Wadoku';
 font-weight:bold;
}
ul.mainnav li{
 display:inline-block;
}
.resultinfo{
 display:none;
}
.searchtime{
 display:none;
}
#sidepane{
 display: none;
}
.paginginfo{
 display:none;
}
.options{
 display:none;
}
.logo{
 display:none;
}
.buttons{
 display:none;
}
.pagefooter{
 display:none;
}
.umlaut{
 display: none;
}
#smallsearch{
 margin-top: 1px;
 border-top: 1px solid #C9D7F1;
 text-align: center;
}
#hd {
 height: 20px;
 width: 100%;
}
#smallsearch label {
 display: none;
}
#case{
 display: none;
}
button{ 
 border: none !important;
 color: black !important;
}
a .ui-button-text {
 color: #4272DB;
}
span.button {
 background: white;
 border: none;
}
a.button {
 background: white;
 border: none;
}
.aboveresult {
 display: none;
}
.belowresult {
 text-align:center;
}
#resulttab {
 width: 900px;
 margin-right: auto;
 margin-left: auto;
 font-size: large;
}
.searchinfo {
 display: block;
 text-align:center;
 width: 900px;
 margin-right: auto;
 margin-left: auto;
 font-size: small;
}
span#messages {
 display: none;
}
h2[onclick="show('#daijirin');"], #daijirin {
 display: none;
}
h2[onclick="show('#daijisen');"], #daijisen {
 display: none;
}
h2[onclick="show('#wikipediaja');"], #wikipediaja {
 display: none;
}
img[src="/wadoku/img/treeExpanded.png"] {
 display: none;
}
#breadcrumbs {
 background: white;
 color: white;
 border: none;
}
div.ui-widget-content {
 border: none;
}
#tagedit {
 display: none;
}
h2.ui-widget-header {
 display: none;
}
button[title="Eintrag in die Ablage legen."] {
 display: none;
}
button[title="Copy to Clipboard"] {
 display: none;
}
div[style="margin-left:2em;"]  {
 color: white;
}
.resultline.even{
 background-color:#f0f8ff;
}
td a {
 text-decoration: none;
}
#content {
 margin: 10px;
}
#searchinput {
 width: 700px;
 margin-right: auto;
 margin-left: auto;
}
div.showoptions {
 display: none;
}
#searchoptions {
 display: none;
}

.entry .reading,.entry .romaji{font-size:small;height:1.4em}
.entry .reading .b{border-bottom:1px dotted gray}
.entry .reading .t{border-top:1px dotted gray}
.entry .reading .l{border-left:1px dotted gray}
.entry .reading .r{border-right:1px dotted gray}
.entry .romaji .devok{color:gray}
.entry .homophoncount,.entry .homographcount{font-size:x-small;vertical-align:top}
.entry .left{display:inline-block;text-align:center}
.entry .middle{display:inline-block;font-size:x-large;vertical-align:top;}
.entry .right{padding-left:10px;color:gray;display:none}
.entry .uid{font-size:x-small}
.entry .rel,.entry .indexnr {color: #000066}
.entry .top{border-bottom:1px solid #CCC;}
.entry .pos{margin-top:2px;font-family:Verdana,sans-serif;font-size:x-small}
.entry .pos:after{content:']'}
.entry .pos:before{content:'[';}
.entry .bottom{margin-top:5px;margin-bottom:8px;margin-left:10px;font-size:medium}
.entry .senses{margin-top:2px}
.entry .sense:hover{background-color:#f0f8ff;}
.senses .tr{font-family:Verdana,sans-serif}
.sense .def:before{content:'Def.: '}
.sense .latin:before{content:'lat.: ';font-style:italic;color:gray}
.sense .indexnr:before{content:'['}
.sense .indexnr:after{content:']\00a0'}
.sense .season:before{content:'【'}
.sense .season:after{content:'】'}
.sense .title:before{content:'\201e'}
.sense .title:after{content:'\201f'}
.jap:before{content:' ('}
.jap:after{content:')'}
.transcr:before{content:'<'}
.transcr:after{content:'>'}
.genus{display:none;}
,.foreign{font-style:italic;color:gray}
.reflink.syn:before{content:'\21d2\00a0'}
.reflink.anto:before{content:'\21d4\00a0'}
.reflink.main:before{content:'\21d1\00a0'}
.reflink.aread:before{content:'\2192\00a0'}
.reflink:hover,.token:hover{cursor:pointer}
.dom{color:darkgreen;font-style:italic;font-variant:small-caps}
.reg{font-style:italic;color:#483d8b}
.usage{color:maroon;font-style:italic}
.etym,.def{color:gray}
.famn{font-weight:bold;}
.klammer{color:gray}
.emph{font-weight:bold;font-style:italic;}
.reflink {}
Bei der "Benachrichtigung bei allen neuen Beiträgen senden:"-Funktion, die man unter "Mein Profil" findet, werden Emails im HTML-Format an mich verschickt, die aber nicht als HTML-Emails gekennzeichnet sind. Daher zeigen mir meine Mailprogramme immer den HTML-Quellcode an, anstatt die Emails wie eine Webseite zu rendern.
Könnte man in der Content-Type-Kopfzeile dieser Emails vielleicht "text/plain" durch "text/html" ersetzen?
Aktuelle falsche Kopfzeile wrote:Content-Type: text/plain; charset=UTF-8


愛しています ist zumindest eine Möglichkeit so etwas wie "Ich liebe dich" zu sagen.

Tristezza wrote:Und noch als Nebenfrage: Weiß zufällig jemand wo ich Mangas/Comics in Kanji herbekomme? Amazon und ebay zeigen leider nur Lehrbücher an.

Da gibt es ja ganz viele Seiten im Internet für, eine wäre etwa:
http://www.yesasia.com/global/en/japanese-comics.html

Haus, Familie


和睦 Friede, Versöhnung

adrino wrote:Und noch eine Frage: Damit die Zeichen einen Sinn ergeben, muss ich die untereinander setzen oder nebeneinander, oder spielt das überhaupt eine Rolle?

Das spielt keine Rolle, sowohl nebeneinander als auch untereinander ist okay, solange die Reihenfolge stimmt.


Da bekomme ich nur:
*edit: lange fehlermeldung entfernt*
Naja, ich vermute souljumper will wohl gedacht haben, dass das irgendwie von 欲しい; ほしい【ほしい】kommt .

Der Mann wollte natürlich eine Katze, weil er hungrig war.
Wadoku wrote:欲しがる【ほしがる】

wünschen; begehren (etw. zu begehren scheinen).
Wieso ist es nicht Hepburn?
http://en.wikipedia.org/wiki/Hepburn_romanization wrote:
In revised Hepburn:
When he へ is used as a particle it is written e.
When ha は is used as a particle it is written wa.
When wo を is used as a particle it is written o.

The long vowels are indicated by a circumflex or a macron—e.g., long o is written ô or ō.

 
Forum Index » Profile for system » Messages posted by system
Go to: