ACHTUNG. Das ist ein Archiv des alten forum.ruby-portal.de. Die aktuelle Mailingliste gibt es auf lists.ruby-lang.org/pipermail/ruby-de.

NOTICE. This is a ready-only copy of the old forum.ruby-portal.de. You can find the current mailing list at lists.ruby-lang.org/pipermail/ruby-de.

Die Programmiersprache Ruby

Blog|

Forum|

Wiki  


Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]

Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
BeitragVerfasst: 24 Aug 2016, 19:13 
Offline
Interpreter
Benutzeravatar

Registriert: 18 Sep 2008, 22:32
Beiträge: 1821
Wohnort: NRW → UN
Ich hatte neulich mit dem Tool ri herumprobiert, also dem Kommandozeilenwerkzeug für die Ruby-Dokumentation. So wirklich nützlich ist es aber nicht:



1
2
$ ri Array
Nothing known about Array


Habe ich da irgendetwas übersehen?

Vale,
Quintus

_________________
Habe den Mut, dich deines eigenen Verstandes zu bedienen! — Immanuel Kant

Ich bin freischaffender Softwareentwickler und freue mich über jedes neue Projekt. Kontaktinformation auf meiner Website.

Mein Blog | GitHub-Profil | Auf Twitter: @qquintilianus | PGP/GPG-Schlüssel: B1FE 958E D5E8 468E AA20 8F4B F1D8 799F BCC8 BC4F


Nach oben
 Profil  
 
BeitragVerfasst: 24 Aug 2016, 20:14 
Offline
Metaprogrammierer

Registriert: 20 Nov 2011, 21:51
Beiträge: 693
Naja, ri bedarf eines Index und dieser muss gepflegt werden.

Wurde bei der Installation von ri dieser nicht für bisher installierte Libs und Gems erstellt, und wurden ausserdem im Nachhinein Gems mit der Option --no-ri oder --no-documents installiert, wird der Index im Anschluss auch nicht erweitert.

ri steht und fällt also mit dem Umfang der Ruby-Installation und der Art und Weise wie Gems installiert werden (bundler installiert per default ohne Doku) oder dem Inhalt der ~/.gemrc.

RVM und rbenv installieren AFAIK beide per default ohne einen Index der stdlib für ri zu erstellen.

In meiner Anfangszeit, als mir apt-get install ruby noch genu war, nutzte ich ab und an auch ri, doch wie so viele andere Tools auch, verliert es extrem an Wert wenn man versucht nach Methoden zu suchen die nur per #method_missing implementiert werden. Wo diese bei yard (und AFAIK auch yri) noch bedingt dokumentierbar sind, waren diese mit ri nicht findbar. Mag heute (7 Jahre später) aber auch anders sein.

_________________
Ubuntu Gnome 14.04 LTS
rvm mit App-spezifischer Ruby-Version (meist 2.2.x) und -Gemset

Github ProfilBitbucket Profil


Nach oben
 Profil  
 
BeitragVerfasst: 25 Aug 2016, 20:40 
Offline
Interpreter
Benutzeravatar

Registriert: 18 Sep 2008, 22:32
Beiträge: 1821
Wohnort: NRW → UN
Okay danke. Mal schauen, ob man den Index nachträglich generieren kann oder ob ich an Rubys Kompilationsoptionen drehen muss.

Vale,
Quintus

_________________
Habe den Mut, dich deines eigenen Verstandes zu bedienen! — Immanuel Kant

Ich bin freischaffender Softwareentwickler und freue mich über jedes neue Projekt. Kontaktinformation auf meiner Website.

Mein Blog | GitHub-Profil | Auf Twitter: @qquintilianus | PGP/GPG-Schlüssel: B1FE 958E D5E8 468E AA20 8F4B F1D8 799F BCC8 BC4F


Nach oben
 Profil  
 
BeitragVerfasst: 27 Aug 2016, 11:51 
Offline
Lehrling
Benutzeravatar

Registriert: 28 Feb 2012, 21:58
Beiträge: 86
Wohnort: NRW
Heyho,
also ich würde mal das hier versuchen um für alles die Docs zu erstellen.



gem rdoc --all --ri --no-rdoc

oder was bei mir geklappt hat ist wenn du RVM verwendest kannst du das hier machen.



rvm reinstall ruby-VERSION --docs --disable-binary


lg Manchotix


Nach oben
 Profil  
 
BeitragVerfasst: 27 Aug 2016, 15:02 
Offline
Interpreter
Benutzeravatar

Registriert: 18 Sep 2008, 22:32
Beiträge: 1821
Wohnort: NRW → UN
Also, fehlende Dokumentation für den Ruby-Kern lässt sich nach der Installation nicht mehr nachholen, weil dazu die C-Quelltexte erforderlich sind. Ruby muss mit den Optionen --enable-install-doc --enable-install-rdoc kompiliert werden, die standardmäßig eingeschaltet sind, aber von den typischen Redistributoren offenbar regelmäßig abgeschaltet werden.

Danach funktioniert ri so wie es sollte. Allerdings kann es wohl keine Dateien (insb. README) anzeigen?

NobbZ hat geschrieben:
verliert es extrem an Wert wenn man versucht nach Methoden zu suchen die nur per #method_missing implementiert werden.


ri kann nur das anzeigen, was RDoc aus dem Quelltext herausholen konnte. Methoden, die per #method_missing implementiert wurden, müssen RDoc durch Quelltext-Meta-Kommentar bekannt gegeben werden:



1
2
3
##
# :method: meta_method
# Doc text...


Diese Kommentare einzufügen ist Sache des Maintainers einer Library. Mach einen Bugreport auf, wenn sie fehlen, das ist ein Dokumentationsfehler.

Danke für eure Antworten!

Valete,
Quintus

_________________
Habe den Mut, dich deines eigenen Verstandes zu bedienen! — Immanuel Kant

Ich bin freischaffender Softwareentwickler und freue mich über jedes neue Projekt. Kontaktinformation auf meiner Website.

Mein Blog | GitHub-Profil | Auf Twitter: @qquintilianus | PGP/GPG-Schlüssel: B1FE 958E D5E8 468E AA20 8F4B F1D8 799F BCC8 BC4F


Nach oben
 Profil  
 
BeitragVerfasst: 30 Aug 2016, 18:07 
Offline
Interpreter
Benutzeravatar

Registriert: 18 Sep 2008, 22:32
Beiträge: 1821
Wohnort: NRW → UN
ri kann auch Dateien anzeigen, wie ich jetzt festgestellt habe. Die Syntax ist nur etwas unerwartet. Mithilfe von $ ri sequel: kann man sich eine Liste aller Dokumentationsseiten anzeigen lassen (also typischerweise die .rdoc-Dateien). Mithilfe von $ ri sequel:README kann man dann eine dieser Dateien (hier die README) lesen.

Valete,
Quintus

_________________
Habe den Mut, dich deines eigenen Verstandes zu bedienen! — Immanuel Kant

Ich bin freischaffender Softwareentwickler und freue mich über jedes neue Projekt. Kontaktinformation auf meiner Website.

Mein Blog | GitHub-Profil | Auf Twitter: @qquintilianus | PGP/GPG-Schlüssel: B1FE 958E D5E8 468E AA20 8F4B F1D8 799F BCC8 BC4F


Nach oben
 Profil  
 
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach: