7 Makros für den Freeware-Editor Vim bzw. gVim, um Kommentierungen in CSS- und PHP-Dateien zu übersetzen mit Google
 
Botschaften an die Menschheit im Namen der Wahrheit und des göttlichen Lichts.

Beitrag 122 von UFO-Peter » 05.09.2011, 15:22

3 Makros für den Freeware-Editor Vim bzw. gVim, um Kommentierungen in PHP-Dateien zu übersetzen mit Google

Einige Wochen dauerte es, bis ich endlich diese drei Makros für den Editor Vim bzw. gVom 7.1 fertiggestellt hatte, um Kommentierungen in PHP-Dateien leichter übersetzen zu können. Den Editor Vim bzw. gVim gibt es übrigens auch als deutsche Version, nämlich hier:

http://www.vim.org/download.php

Mit dem ersten Makro Klick! (Rechtsmausklick und >Ziel speichern unter...) werden jeweils alle Kommentierungen ans Ende der Datei verschoben mit Nummerierung. Bspw. mit Google kann man diese übersetzen und unten die englischsprachigen Kommentare durch die übersetzten ersetzen. Das zweite Makro Klick! oder wahlweise Klick! ordnet diese Kommentierungen wieder automatisch in die Datei ein.

Besser finde ich es aber, wenn in der Datei sowohl die englischsprachigen, als auch die übersetzten Kommentierungen vorhanden sind. Um das zu erreichen benutzt man letztgenanntes Makro, das die übersetzten Auskommentierungen wieder in die Datei zurückverschiebt.

Diese 3 Makros arbeiten völlig präzise, sodass auch jede Leerzeile, jeder Zeilenumbruch, jede Leerstelle und jeder Tabstob exakt so erhalten bleibt, wie ursprünglich im Code eingefügt. Insbesondere das letzte Makro (2-sprachig) finde ich sehr praktisch, weil nämlich oftmals die automatische Übersetzung nicht besonders gut ist, und man jeweils auch die Originalsprache zur Verfügung hat.

Die übersetzten Kommentare werden automatisch so eingefügt, dass diese formatgetreu und somit übersichtlich jeweils genau unter den originalsprachigen (englischen) Kommentare eingefügt werden. Es werden jeweils nur Wörter von auskommentiertem Text, die ausschließlich aus Buchstaben bestehen, jeweils einzeln ans Ende der Datei verschoben.

Intern geschehen einige Ersetzungen, die jeweils wieder rückgängig gemacht werden. Nach Abarbeitung des ersten Makros wurden durch das Makro sämtliche ggf. vorhandenen Symbole ¤ durch eine dreißigstellige Zeichenfolge ersetzt. Auch sind alle öffnenden runden Klammern ( durch ¤5, und alle schließenden runden Klammern ) durch ¤6 ersetzt worden, weil die runden Klammern vom System zur internen Kennzeichnung gebraucht werden. Nach Abarbeitung des zweiten Makros sind aber diese Zeichenfolgen natürlich wieder alle zurückersetzt.
In den letzen Monaten habe ich mich ziemlich gut mit dem Editor Vim bzw. gVim 7.1 eingearbeitet und in meinem alten Forum (neues phpBB3-Forum geplant) habe ich zu diesem Editor diese Beiträge geschrieben: Klick!

Das Makro mit Vim öffnen, mit gg an den Anfang des Makros gehen und "ay$ tippen. Dieses Makro ist nun im Register a gespeichert. Dann die PHP-Datei mit Vim öffnen und das Makro a ausführen mit @a. Als Registernamen nur jeweils einen einzelnen Kleinbuchstaben wählen! Mit a oder i kommt man in den Bearbeitungsmodus und mit Esc ist man im Befehlsmodus. Das Makro ins Register speichern und ausführen geschieht im Befehlsmodus. Zu Editoren siehe auch diesen Beitrag von mir: Klick!

Im Vergleich zu meinen anderen 4 Makros, um Kommentare in CSS-Dateien zu übersetzen sind diese drei Makros noch besser gelungen, weil ich inzwischen mehr Erfahrungen habe. Nur läuft die Abarbeitung erheblich langsamer ab, was ich nicht vermeiden konnte.

Bei der Konzipierung habe ich mich an der Information von dieser Webseite orientiert: Klick! Leider wusste ich nicht, ob die dort angeführten Beispiele bereits eine Formatierung beinhalten, um Kommentare entsprechend übersichtlich zu gestalten.

Bei einzeiligen Kommentaren, die jeweils am Zeilenanfang mit // beginnen, ist es einfach. Bei auskommentierten Absätzen ist es aber komplizierter. Die Makros arbeiten bei diesen so, dass nur solche Texte als Kommentare nach unten verschoben werden, die jeweils mit /* beginnen und mit */ enden, wenn zwischen so einer Zeichenfolge und dem Zeilenanfang jeweils allenfalls nur Leerstellen und/oder Tabulatoreinrückungen sind. Bspw. so:

Code: Alles auswählen
    /* Wort 1
       Wort 2
    */

Leider weiß ich nicht, ob ich das so richtig gemacht habe. Wird also die erste Zeile von PHP erkannt als Kommentierung, obwohl sich das Wort 1 in derselben Zeile wie /* befindet? Und falls sich */ in derselben Zeile hinter Wort 2 befinden würde, wäre das auch eine exakte Kommentierung? Gegebenenfalls würde ich diese drei Makros entsprechend ändern.

Liebe Leser! Wenn Sie die Schildbürgerstreiche der Politik(er) schon lange satt haben, unter­stützen Sie bitte dieses Forum, indem Sie es auf anderen Seiten verlinken, oder nur aufs 'Welt­rettungs­forum' aufmerk­sam machen!
 
Falls Sie aber meinen, dass ein Staat gemäß Grund­gesetz schon dann demo­kratisch ist, wenn das Wahlvolk alle vier Jahre wählen gehen darf, wer die Dikta­toren sein sollen. Lügenpresse? Lügen­medien? Fall­bei­spiele!
 
Oder es in Ordnung wäre, dass im Gegensatz zur ehe­ma­ligen DDR, Menschen so wenig ver­dienen, dass es nicht zum Leben reicht und vieler­orts unver­schuld­ete Ob­dach­losig­keit herrscht; während dem­gegen­über einige wenige Multi­million­äre in uner­mess­lichem Reich­tum schwelgen.
 
Oder, wenn Sie meinen, dass AfD und PEGIDA rechts­radikal wären, weil beide gegen das Gut­menschen­tum sind, das alle Flücht­linge inte­grieren will ein­schließ­lich Deutsch­lern­pflicht; obwohl sie doch in einem Lager mit Wohn­con­tainern viel besser auf­ge­hoben wären.
 
Oder, wenn Sie abstreiten, dass auch Deutschland den Flüchtlingsstrom mit verursachte, indem die deutsche Regierung verantwortlich dafür war, dass Deutschland 2014 nur noch die Hälfte an den UNHCR zahlte, wodurch eine Hungersnot in den Flüchtlingslagern ausgelöst wurde.
 
Oder, wenn Sie die BRD für einen Rechts­staat halten, obwohl Richter und An­wälte durch per­ma­nente Rechts­beugung vor­ein­ge­nom­men um den Er­halt ihrer Arbeits­plätze be­müht sind; und mich deswegen Richter Rüdiger Richel rechtskräftig dazu verurteilte, Kinder zu ermorden. Wir brauchen eine un­vor­ein­ge­nom­me­ne Justiz anstatt eine unab­hängige Justiz. Genauso brauchen wir un­ab­häng­ige Lehrer anstatt ein (staat­lich ge­steu­er­tes) Bildungs­system.
 
Oder, wenn Sie glauben, dass die Kirche mit ihrer geistes­kranken Wahn­vor­stellung recht hat; dass einst Gott seinen (angeb­lich) einzigen Sohn sandte, damit dieser als Opfer­lamm brutal er­mordet wird zwecks Sünden­ver­gebung. Juden unschuldig an der Kreuzigung Jesu.
 
Oder, wenn Sie allen Ernstes meinen, dass soge­nannte "Lesben" und "Schwule" sexuell so orien­tiert sind, dass unbe­dingt die Ge­nital­ien nicht zu­ein­an­der passen dürfen; oder, dass der Terror­an­schlag in Paris nichts mit dem Islam zu tun hat.
 
Oder die sexuelle Neigung zu 'vor­puber­tärem' Kind ab­artig sei, obwohl manche Mädchen fast schon im Klein­kind­alter ge­schlechts­reif sind und trotzdem zur Prüderie gezwungen werden; Sie aber demgegenüber Zwangs­be­berg­steigung, Zwangs­artistik und Zwangs­leistungs­be­sportung von Kindern OK finden; brauchen Sie dieses Forum natürlich nicht unter­stützen.


Vorherige