Posts mit dem Label Blog werden angezeigt. Alle Posts anzeigen
Posts mit dem Label Blog werden angezeigt. Alle Posts anzeigen

Dienstag, 26. Februar 2013

HTML in Blogger posten

Ich habe hier nun ein nettes kleines Tool gefunden, das mir HTML-Code in SimpleCode umwandelt, der in Blogger angezeigt werden kann. Problematisch scheinen dabei die Zeilenumbrüche zu sein und die eckigen Klammern, also < und >. Daraus ergibt sich für mich, dass sich das (bestimmt) auch einfach als Desktop-Tool mit GUI umsetzen lässt, denn die Korrekturen scheinen momentan nicht der Rede wert.

HTML-CODE Zeichen
< &lt;
> &gt;
\n <br />

Ferner muss oben und unten ein code-Tag ergänzt werden, wobei die Zeile ansonsten freibleibt. Auch das ist in Python nicht kompliziert umzusetzen.

Samstag, 2. Februar 2013

Indexseite aufbessern

Manchmal macht man sich etwas zu viel Arbeit. Die index-Seite fand ich zu umständlich, weil ich nicht direkt einzelne Buchstaben ansteuern konnte, sondern erst einmal scrollen musste. Ich habe mir überlegt die einzelnen Überschriften mit einem Anker zu versehen, um sie ansteuern zu können. SELFHTML hat hier geholfen, weil hier die projektinternen Anker vorgestellt werden.

Im Kern muss man eine Überschrift oder einen Text auf der Seite mit einem Anker der Form

<a name="NAME_DES_ANKERS">TEXT_ZUM_ANKER</a>

versehen, den man anschließend direkt ansteuern kann und zwar in der Form:

http://www...de/seite.html#NAME_DES_ANKERS

Ich habe jetzt für meine Indexseite einen Parser erstellt, der auf den Seiteninhalt in einer Textdatei zugreift und die Seite um die Anker ergänzt. Schöner wäre sicherlich, wenn das Skript direkt auf die Indexseite zugreifen und die nötigen Änderungen dort direkt vornehmen und speichern könnte.

Das Skript in der aktuellen Fassung:
liste = []
item = ""

with open("indexseite.txt") as f:

    for line in f:


        if item != "":
            line = item + line
            liste.append(line.replace("\n",""))
            item = ""
            
        elif line.startswith("<h2>"):
            item = line
            
        else:
            liste.append(line.replace("\n",""))


for item in liste:

    if item.startswith("<h2>"):
        ''' da soll ein Anker rein!
        http://de.selfhtml.org/html/verweise/projektintern.htm#anker
        z. B.

        <h2><a name="kapitel2">Kapitel 2</a></h2>

        also Element zwischen den h2-Tags ermitteln
        und daraus den Anker basteln...
        
        '''

        # <h2>Ziel</h2>
        ziel = item.rsplit("<")
        # ['', 'h2>A', '/h2>']
        ziel = ziel[1].split(">")
        # ['h2', 'A']
        ziel = ziel[1]
        # 'A'
        zeile = '<h2><a name="{0}">{0}</a></h2>\n'.format(ziel)
        
    else:
        zeile = item + "\n"

    with open("zieldatei.txt","a") as g:
            print(zeile)
            g.write(zeile)
Das Skript funktioniert und speichert in die zieldatei.txt die gewünschten Inhalte. Ein weiteres Skript erzeugt ein Inhaltsverzeichnis, das ich oben auf der Seite einfügen kann. Da bereits alle Buchstaben angelegt sind, muss ich nicht erst prüfen, ob die Buchstaben auf der Seite vorhanden sind.
import string


def inhaltsverzeichnis_erzeugen():
    ''' Die Links haben die Form
    http://pixewakb.blogspot.de/p/index.html#C

    '''

    abc = string.ascii_uppercase
    url = '{0}'
    
    for a in abc:
        
        print(url.format(a), end=" • " if not a == abc[-1] else "")


inhaltsverzeichnis_erzeugen()
Wünschenswert wäre noch ein Zurücklink bei jedem Anker, aber erst einmal läuft das so.

Nachtrag 2. Februar 2013


Ich habe gerade manuell einen Anker auf der Seite ergänzt und die Links in den Überschriften dahingehend angepasst, dass die Links jetzt auf diesen Seitenkopf-Anker verweisen. Anscheinend ändert blogger.com die Links der Anker auf die Blog-ID um, was zu Fehlern führt. Das Skript müsste das noch beachten...

Freitag, 28. Dezember 2012

Hallo Welt

Hallo Welt :D
print("Hallo Welt :D")
Gerade habe ich mir die Syntaxhervorhebung für meinen Blog aktiviert. Es handelt sich um SyntaxHighlighter von Alex Gorbatchev. In der HTML-Ansicht kann der SyntaxHighlighter genutzt werden, indem

<pre class="brush:py">
...
</pre>

eingefügt werden und der Quelltext zwischen diesen Tags platziert wird.

Unschön ist, dass keine Buttons hinzugefügt werden, über die man - wie bei Wordpress - den Quellcode direkt in die Zwischenablage kopieren oder drucken kann.

Ich bin nach einem Blogger-Blog über einen Wordpress-Blog nun zu Blogger zurückgekehrt, weil ich das Bloggen hier einfacher finde. Gefühlt ist die Software schneller und wirkt so auf mich robuster.