Seiten

Categories

Archive

Tags

development gem linux merge rails redcloth ruby server subversion svn typo windows

Syndikat

Versionen der verwendeten GEMs herausfinden (in Rails)

Ich habe leider schon wieder ein paar Probleme mit RedCloth. Ich habe, wie in einem früheren Artikel hier beschrieben, das GEM von RedCloth ausgepackt und eingebunden, damit ich sicherstellen kann, daß ich überall die gleiche Version (3.0.3) bekomme. Denn die neuere Version 3.0.4 hat ein ganz seltsames Verhalten, daß man fast als Bug bezeichnen kann.

Wie auch immer, leider hat mich beim Start meines Projekts, eine Fehlermeldung in Phusion Passenger erwartet, wo ich mein Projekt erwartet hatte.

Im Prozess des Debuggens (obwohl ich meines Wissens nichts verändert habe) kam öfter die Frage auf, welche Version von RedCloth denn jetzt eigentlich verwendet wird momentan.

Herausfinden kann man das in der Konsole mit folgendem Befehl:

RedCloth::VERSION

Vielleicht braucht das ja mal jemand. Im Prinzip sollte das für alle GEMs funktionieren, die ihre Versions-Nummer in der Hauptklasse im Feld VERSION speichern. Ich hoffe, daß das alle sind, die ich mal auf solche Art untersuchen will.

PS: Die Version von Rails, die gerade verwendet wird bekommt man mit:

Rails::VERSION::STRING

 

Angelegt von Janko Sat, 16 Aug 2008 17:14:00 GMT


RedCloth line breaks, oder: "warum fehlt der Zeilenumbruch?"

Wieder mal ein Problem an einer Stelle, wo ich keins erwartet habe. Ich habe für ein Projekt das Gem RedCloth benutzt, was dafür da ist, einen Text nach gegebenen Regeln in schönes HTML zu verwandeln, das dann auch gut aussieht. Ich hatte also eine Stelle wie:

Das hier ist
ein Text.

Er hat große und
kleine Absätze.

Und genauso wollte ich den Text auch auf der Seite dargestellt haben. Nach einigem Probieren, hatte ich zwei Möglichkeiten:

1.

Das hier ist ein Text.

Er hat große und kleine Absätze.

oder 

2.

Das hier ist
ein Text.
Er hat große und
kleine Absätze.

Wie man sieht, beides nicht das, was ich wollte. ;)

Wie sich herausstellt ist das ein Problem mit der neuesten Version von RedCloth 3.0.4. Mir war das nicht aufgefallen, weil auf meiner Entwicklungs-Maschine noch eine alte Version von RedCloth drauf war.

Na ja, die Lösung ist relativ einfach:

Man muss einfach wieder die etwas ältere Version 3.0.3 des RedCloth-Gems installieren:

gem uninstall RedCloth --version "3.0.4" 
gem install RedCloth --version "3.0.3"

Dann geht man in des Verzeichnis des Projekts und führt folgendes aus:

cd vendor

gem unpack RedCloth

Dadurch wird das aktuell installiert RedCloth-Gem entpackt und im Projekt in dieser Version gespeichert. Damit kann man RedCloth in dieser Version benutzen, egal welche Verison auf dem System installiert ist, wo die Applikation läuft. Das allerdings nur, wenn man noch folgende Zeile in die config/environment.rb einfügt:

require "#{File.expand_path(RAILS_ROOT)}/vendor/RedCloth-3.0.3/lib/redcloth.rb"

Hierdurch wird die richtige Version von RedCloth beim Starten der Applikation geladen und man kann fröhlich auch große Texte mit großen und kleinen Absätzen verwenden.

Gefunden habe ich die Lösung bei Neeraj.
via: http://www.neeraj.name/273/line-break-issue-with-redcloth

Vielleicht findet ja jemand diesen Artikel und freut sich über eine - zugegeben - pragmatische, aber schnelle Lösung. Ich weiß leider nicht, ob das Verhalten von RedCloth als Bug gewertet werden kann oder beabsichtigt ist. Im ersten Fall kann man ja hoffen, daß mit der nächsten Version auch solche Tricks nicht mehr nötig sein werden.

In diesem Sinne, viel Spaß mit Euren Applikationen und RedCloth!

Angelegt von Janko Wed, 02 Apr 2008 22:26:00 GMT