RML/XML Dateien in der Schnellansicht mit Markup anzeigen

German support forum

Moderators: white, Hacker, Stefan2

Post Reply
Kab
Junior Member
Junior Member
Posts: 5
Joined: 2016-07-20, 08:51 UTC

RML/XML Dateien in der Schnellansicht mit Markup anzeigen

Post by *Kab »

Hallo allerseits,
Ich würde gerne RML files (=Redline Markup Language File - basiert auf XML) in der Schnellansicht (Strg+q) mit markup anzeigen lassen.
Ich nutze Win7, Total Commander 8.52a 32bit mit den plugins die unten aufgelistet sind. Die Dateien sind lokal vorhanden.

Bisherige fehlgeschlagene Lösungsversuche:
- Wie aus dem Auszug der wincmd.ini unten zu sehen ist habe ich bereits probiert die RML file extension dem xBaseView plugin zuzuordnen (..|EXT="RML"...) aber ohne Erfolg. Es wird immer nur der Lister benutzt.
- Das verschieben von xBaseView an den Anfang der Liste der Plugins.
- Suche nach Lösungen im Forum

Notepad++ zeigt es wunderbar an (farbig, ausklappen von Gruppen). Der Lister markiert jedoch nichts.

Ein Minimalbeispiel (Dateiname: Beispiel.rml):
--------------------------------------------------------------
<?xml version='1.0' encoding='UTF-8'?>
<lab>
<beamline>
<object name='HIS13' type='Point Source'>
<param id='photonEnergy'>21.219</param>
<param id='energySpreadType' comment='white band'>0</param>
</object>
</beamline>
<ExtraData />
</lab>
--------------------------------------------------------------

Auzug aus wincmd.ini:
--------------------------------------------------------------
[ContentPlugins]
0=...DirSizeCalc.wdx
1=...ImgSize.wdx
...
[Extensions]
rml=""C:\Program Files (x86)\Notepad++\notepad++.exe" ^.rml"
[ListerPlugins]
0=...pdfview.wlx
0_detect="ext="PDF" | ext="PS" | ext="EPS" | ([0]="%" & [1]="!" & [2]="P" & [3]="S") | ([0]="%" & [1]="P" & [2]="D" & [3]="F" & [4]="-")"
1=...DirSizeCalcCharts.wlx
2=...wlx_csv.wlx
3=...xBaseView.wlx
3_detect="EXT="CDS"|EXT="CSV"|EXT="DB"|EXT="DBF"|EXT="TAB"|EXT="rml"|EXT="xml"|size=0"
4=...excellence.wlx
4_detect="ext="XLS" | ext="XLSX" | ext="XLSM" | ext="XLSB" | ext="ODS" | ext="SXC" | ext="XML" | EXT="RML" | ext="GNUMERIC" | ext="GNM" | ext="KSP" | ext="CSV" | ext="DIF" | ext="SLK" | ext="SYLK" | ext="XLT" | ext="XLTX" | ext="XLTM" | ext="XLW" | ext="OTS" | ext="UOS" | ext="UOF""
5=...Imagine.wlx
5_detect="MULTIMEDIA"
6=...ImgView.wlx
6_detect="MULTIMEDIA & (EXT="ANI" | EXT="BMP" | EXT="CUR" | EXT="EMF" | EXT="EPS" | EXT="GIF" | EXT="ICO" | EXT="JPEG" | EXT="JPG" | EXT="PCX" | EXT="PIC" | EXT="PNG" | EXT="PSD" | EXT="PSP" | EXT="PSPIMAGE" | EXT="SCR" | EXT="SGI" | EXT="TGA" | EXT="THM" | EXT="TIF" | EXT="WMF")"
--------------------------------------------------------------

Grüße
Karl
User avatar
ZoSTeR
Power Member
Power Member
Posts: 1013
Joined: 2004-07-29, 11:00 UTC

Post by *ZoSTeR »

xBaseView zeigt nur sehr spezielle XML-Typen an.

Versuch mal SynWrite Editor.
Einen XML (+JSON) Viewer ganz nach meinem Geschmack hab ich auch noch nicht gefunden. Nutze derzeit den firstobject XML Editor, dieser ist aber extern und unterstützt somit kein Quickview.

Sollte es sich überwiegend um XML-Dateien mit demselben Schema handeln, könnte man nen Parser bauen und das Ergebnis in einem der Script-Listerplugins anzeigen lassen. Ist natürlich relativ aufwendig.

Edit:
Habe mal AnyCmd mit XMLStarlet kombiniert.

Mit der Zeile

Code: Select all

command=xml.exe sel -t -v "//object/@name" -o " (" -v "//object/@type" -o ")" -n -m "//object/param" -v "@id" -o ": " -v "." -o " [" -v "@comment" -o "]"  -n  %s
erscheint dann zB als Resultat im Lister

Code: Select all

HIS13 (Point Source)
photonEnergy: 21.219 []
energySpreadType: 0 [white band]
Die Syntax sieht wilder aus als sie ist, erfordert XPath und ne handvoll Parameter.
User avatar
HolgerK
Power Member
Power Member
Posts: 5406
Joined: 2006-01-26, 22:15 UTC
Location: Europe, Aachen

Post by *HolgerK »

Kab
Junior Member
Junior Member
Posts: 5
Joined: 2016-07-20, 08:51 UTC

Post by *Kab »

Danke an ZoSTeR und HolgerK für die schnellen Antworten.
Ich habe SynWrite und htmlview ausprobiert. Beide zeigen die gewünschte Farbkodierung (markup) an. HtmlView funktioniert sofort, SynWrite ist umfangreicher und muss eingestellt werden (siehe unten).

Während markup mit den Standardeinstellungen bei HtmlView sofort geschieht, startet SynWrite erst im normalen Textediter modus (Ausgabe wie beim Lister) und ich muss erst in der Leiste unten X->XML auswählen. Dafür erlaubt SynWrite das einklappen von Gruppen, was bei HtmlView nicht möglich ist.

Ich habe probiert die Dateierweiterung rml dem Lexer XML hinzuzufügen:
1. Öffne eine Datei mit F3 so dass SynWrite im Lister angezeigt wird
2. SynWrite Menü>Einstellungen>Lexer-Bibliothek verwalten...
3. XML markieren und Einstellungs-Button (Zahnrad) klicken
4. Unter Allgemein>Dateierweiterungen rml hinzufügen.
5. Neustart TC

EDIT: ok die Einstellung hat erst nichts gebracht und nach 1/2h Stunde nichts verändern (bzw. nach Lösungen googlen) geht es auf einmal... Also geduld haben!?

@ZoSTeR und AnyCmd/XMLStarlet:
Danke für die Mühe, aber das Auswerten/Formatieren der XML Befehle ist momentan nicht mein Ziel da ich alle Zeichen in der RML Datei sehen möchte. Ich verändere die Datei mit einem eigenem Program an dem ich gerade arbeite und gebe Sie dann an ein anderes Program weiter - kurz: ich muss sehen wenn ich Mist in der RML Datei baue... :mrgreen:

Grüße,
Karl
Post Reply