ChickenLipsRfun2eat
Anmeldungsdatum: 6. Dezember 2009
Beiträge: 12067
|
Hallo zusammen! Ich beschäftige mich gerade mit Struktur und Organisation meiner "Projekte". Projekte sind:
kleinere Apps, Scripte, etc. die ich zur eigenen Verwendung schreibe Dokumentationen, Ideen, Bilder, PDF, etc. die allgemeineren Charakter haben, aber verlinkbar sein sollten Konfigurationen und deren Änderungen für alle Geräte protokollieren/dokumentieren Code-Schnipsel-Sammlung Musik-Snippets, Notenblätter (meist gescannte PDF/jpg) Diverse Sammlungen (Bücher, CD, DVD und sowas) usw.
Also eher viel Kleinkram. Da ich gerade einen Plan schmiede meine Heimknechte neu aufzusetzen, würde ich das Konzept dazu gerne vorher fertighaben. Aktuell angesehen und ausprobiert habe ich ein lokales Git in Verbindung mit Redmine. Da ich aber kein Ruby-Wissen habe und mir somit schwer tue das auf meine Bedürfnisse anzupassen, suche ich noch Alternativen. Eine Nextcloud-Instanz habe ich auch verfügbar, so das es mir am liebsten wäre, ich könnte diese irgendwie™ (z.B. per Custom-Seite) dazu verwenden. Ziel wäre es, alle zusammengehörigen Punkte zu finden und mir sozusagen ein lokales Wiki-Git-Nextcloud aufzubauen. Ein wichtiger Aspekt ist, Projekte auch untereinander verknüpfen zu können. Dabei gibt es einige Dinge, die eher statischen Charakter haben, wie die Sammlungen, andere, die einem ständigen Änderungswahn unterliegen, wie eigene Apps ☺ Tagbasiertes suchen wäre also auch wünschenswert. Fällt jemandem von euch ein, wie man das alles unter einen Hut bekommt? Redmine war nur ein Beispiel, es muss keine 1:1 Alternative sein und ich wäre in der Lage meinen Workflow entsprechend anzupassen.
|
seahawk1986
Anmeldungsdatum: 27. Oktober 2006
Beiträge: 11179
Wohnort: München
|
Ist dir eine Weboberfläche bzw. ein kollaborativer Ansatz wichtig? IMHO bringt das viel Komplexität mit sich, die einem das Leben auf lange Sicht nicht unbedingt einfacher macht. Wenn das nur für einen selber gedacht ist, könnte man sich überlegen, ob man das nicht mit Emacs lösen will. Dann kommt man ohne ständig erreichbare Server-Dienste aus und muss nur dafür sorgen, dass man die Daten zwischen den genutzten Rechnern abgleicht (da man größtenteils mit Plain-Text arbeitet, kann man die Dateien z.B. mit seiner NextCloud synchronisieren oder in ein Git packen). Jedes Projekt kann unabhängig vom Rest sein, man muss sich für Referenzen zu anderen Projekten nur überlegen, wie man da einen langfristig stabilen Pfad/URL umsetzen will.
Die Dateien kann man dann (mit gewissen Einschränkungen) auch auf Mobilgeräten nutzen, dafür gibt es z.B. orgzly für Android und beorg für iOS. Damit man bei der Konfiguration nicht von vorne anfangen muss, gibt es Projekte wie z.B. Spacemacs und hlissner/doom-emacs, die versuchen einem eine angenehme Emacs-Umgebung zu liefern, ohne dass man sich alles selbst zusammensuchen muss.
|
ChickenLipsRfun2eat
(Themenstarter)
Anmeldungsdatum: 6. Dezember 2009
Beiträge: 12067
|
Hallo und ein großes Dankeschön für deine sehr umfassende Antwort! Ich habe tatsächlich mit emacs und vi bisher wenig gemacht, es klingt aber durchaus interessant. Webbasiert ist keine Pflicht, es ist nur einfacher, da ich ja auch eine Dokumentation für alles brauche → Wiki, weswegen ich auch Redmine ausprobiert habe. Dein Ansatz erfordert einiges an Einarbeitung, scheint aber tatsächlich vieles ( oder alles ) abzudecken, was mir so vorschwebt. Ich werde allerdings einiges ausprobieren müssen, um da eine passende Arbeitsweise zu finden.
|
seahawk1986
Anmeldungsdatum: 27. Oktober 2006
Beiträge: 11179
Wohnort: München
|
ChickenLipsRfun2eat schrieb: da ich ja auch eine Dokumentation für alles brauche → Wiki, weswegen ich auch Redmine ausprobiert habe.
Das könnte man z.B. mit org-wiki umsetzen. Man kann die Dokumentation aber z.B. auch direkt in den Projektordnern halten und die Dateien in die Variable org-agenda-files aufnehmen - darin definierte Dateien kann man mit den Mitteln von org-mode leicht nach Tags, Eigenschaften oder Text durchsuchen. Tags lassen sich auf Wunsch auch pro Datei setzen und an untergeordnete Elemente automatisch vererben, so dass man Kategorien und Themenzugehörigkeiten leicht definieren kann. Dein Ansatz erfordert einiges an Einarbeitung,
Ja, Emacs ist in der Hinsicht etwas speziell (dafür aber auch gut dokumentiert) und elisp als Sprache für die Konfiguration und eigene Funktionen ist am Anfang etwas ungewohnt (das Meiste kann man aber auch bequemer über die Customization Menüs konfigurieren), dafür kann man das System sehr gut an die eigenen Vorlieben anpassen. scheint aber tatsächlich vieles ( oder alles ) abzudecken, was mir so vorschwebt. Ich werde allerdings einiges ausprobieren müssen, um da eine passende Arbeitsweise zu finden.
Ja, das kann dir niemand abnehmen. Die Trennung von Projektcode und Wiki finde ich immer etwas unglücklich, denn wenn man da nicht ständig dahinter her ist das parallel zu pflegen, läuft das gerne mal auseinander.
|
ChickenLipsRfun2eat
(Themenstarter)
Anmeldungsdatum: 6. Dezember 2009
Beiträge: 12067
|
seahawk1986 schrieb: Das könnte man z.B. mit org-wiki … org-agenda-files …
Ist schon Wahnsinn, was es alles rund um Emacs gibt.
Ja, das kann dir niemand abnehmen. Die Trennung von Projektcode und Wiki finde ich immer etwas unglücklich, denn wenn man da nicht ständig dahinter her ist das parallel zu pflegen, läuft das gerne mal auseinander.
Richtig. Da ich aber mein eigener Kunde bin, ärgere ich mich, wenn ich nicht ausführlich geschrieben habe, was ich mir eigentlich sagen wollte ☺ Bei Quellcode ist das Dank Doxygen und Kommentarzeilen eigentlich kein Problem. Es geht eher um die Dinge, die bislang in Textdateien landeten, die dann irgendwo mit rumflogen, teils allgemein, teils im Projekt. Nachdem ich vorhin schon einiges gelesen und das mitgelieferte Emacs-Tutorial genossen habe, werde ich mir jetzt mal die Rundum-Sorglos-Pakete ansehen. Ich denke das schwierigste wird die Umgewöhnung der Tastenkombis. Aber so geht es mir ja mit vi/qutebrowser und deren Handhabe auch immer.
|
seahawk1986
Anmeldungsdatum: 27. Oktober 2006
Beiträge: 11179
Wohnort: München
|
ChickenLipsRfun2eat schrieb: Ich denke das schwierigste wird die Umgewöhnung der Tastenkombis.
Die lassen sich bei Emacs zum Glück beliebig anpassen. Für die gewohnten Tastenkombinationen für Kopieren und Einfügen gibt es schon fertige Lösungen wie den cua-mode. Die Fertiglösungen sind in der Hinsicht natürlich stark von den Vorlieben ihrer Autoren beeinflusst (z.B. die Befehlsauswahl mit einem von VIM bekannten Leader-Key und das Verteilen der Befehle auf Hydra-Menüs, damit es beim Einstieg leichter hat bzw. selten genutzte Funktionen leichter finden kann). Zu Doom-Emacs gibt es übrigens eine nette kleine Tutorial-Serie.
|
ChickenLipsRfun2eat
(Themenstarter)
Anmeldungsdatum: 6. Dezember 2009
Beiträge: 12067
|
seahawk1986 schrieb: ChickenLipsRfun2eat schrieb: Ich denke das schwierigste wird die Umgewöhnung der Tastenkombis.
Die lassen sich bei Emacs zum Glück beliebig anpassen…
Das schon. Ich nutze die Programme aber gerne, wie sie sind, damit ich nicht zu viel rumbasteln muss. Das doom-emacs habe ich nun gerade vor mir und wühle mich durch die Konfiguration. Zu Doom-Emacs gibt es übrigens eine nette kleine Tutorial-Serie.
Danke. Ich bevorzuge immer noch die Schriftform und bin da schon fündig geworden ☺ Aktuell bin ich mit einem cheat sheet schon zufrieden und habe gerade ein neues, leeres Projekt zum Spielen gestartet und parallel andere geladen, um mich dran zu gewöhnen. Habe auch schon einiges aktiviert (javascript, qt, etc.) und die code-completion installiert. Noch ein wenig rumspielen und ich kann es mal einsetzen. Learning by doing eben. Nochmal danke für deinen ausführlichen Post und den super Tipp! Ich liebe Klartextdateien ☺
|
Cranvil
Anmeldungsdatum: 9. März 2019
Beiträge: 990
|
Ich habe kürzlich mal ein ganz klein wenig mit Fossil gespielt und denke, dass du darüber vielleicht auch einige deiner Anforderungen erfüllen kannst. Wie bereits geschrieben, fehlt mir nach ein bis zwei Stunden rumspielen noch die Erfahrung, allerdings finde ich es bei Fossil toll, dass erstmal alles in einer einzelnen (sqlite-)Datenbank gespeichert wird, was sonst im .git-Verzeichnis landet. Wenn ich mal keinen Bock mehr auf ein Projekt habe, checke ich alle offenen Änderungen bei Bedarf ein, werfe die Arbeitsverzeichnisse weg und habe genau eine Datei rumliegen. Man kann sowohl über den integrierten Webserver als auch über die Befehlszeile Wiki, Tickets etc. eintragen und pflegen sowie Anhänge integrieren. Irgendwo auf deren Website haben sie auch dokumentiert, wie sie beispielsweise mit den Downloads umgehen, da sie die Binärpakete nicht unmittelbar im eigenen Repo haben. Wenn man den integrierten Webserver in einem Verzeichnis mit mehreren Repositories (Datenbanken) startet, bietet der einem beim Aufruf der Seite auch eine Auswahl zwischen diesen. Eine weitere, aus meiner Sicht coole, Sache ist die Möglichkeit, durch die Anpassung des Schemas weitere Informationen zu bestimmten Objekten speichern zu können. Die Dokumentation weist an verschiedenen Stellen auch darauf hin, welche Felder mindestens vorhanden sein oder eben nicht angerührt werden sollten. Ich finde es cool, sehe jedoch zumindest für mich noch keinen Bedarf, da was dran zu ändern. Da dich Fossil bzgl. des Editors nicht einschränkt, könntest du beispielsweise auch die Vorteile des org-mode mit den Vorteilen dieses SCM verbinden. ☺
|
ChickenLipsRfun2eat
(Themenstarter)
Anmeldungsdatum: 6. Dezember 2009
Beiträge: 12067
|
Cranvil schrieb: Ich habe kürzlich mal ein ganz klein wenig mit Fossil gespielt und denke, dass du darüber vielleicht auch einige deiner Anforderungen erfüllen kannst.
Hallo! Habe gerade mal ein wenig damit gespielt, allerdings noch keine 2 Stunden ☺ Ist auf jeden Fall ein interessanter Ansatz. Soweit ich das jetzt überblicke dürfte es aber schwer werden dort Projekte zu verknüpfen. Ggf. geht das mit einem "Masterprojekt". Erfordert ein wenig Spielerei, für die ich mir die Tage mal Zeit nehmen muss. Die git-ähnliche Kommandozeile ist zumindest schonmal einfach zu lernen. Ein wenig Zweifel habe ich beim integrierten Webserver, der lediglich ein Repo abbilden kann. Dadurch, dass aber pro request eh eine Instanz gestartet (und beendet) wird, könnte das trotzdem funktionieren. Wie gesagt, da ist ein wenig Testen und Recherche nötig ☺
Da dich Fossil bzgl. des Editors nicht einschränkt, könntest du beispielsweise auch die Vorteile des org-mode mit den Vorteilen dieses SCM verbinden. ☺
Sehr gutes Argument 😀 Der Doom-Emacs und ich beginnen gerade eine innige Beziehung^^ Danke für den Tipp! //Nachtrag: vs-fossil gibt es auch in Emacs ☺
|
ChickenLipsRfun2eat
(Themenstarter)
Anmeldungsdatum: 6. Dezember 2009
Beiträge: 12067
|
Für mich ist das Thema mit der Klartext-Version und Emacs gelöst. Ich werde noch einige Monate brauchen, mich entsprechend einzuarbeiten und einen passenden Workflow zu finden, aber für mich ist das tatsächlich die Lösung, in Verbindung mit der NC-Synchronisierung. DANKE!
|