\lstinputlisting mit inputencoding=utf8 und eigenem Style

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: \lstinputlisting mit inputencoding=utf8 und eigenem Style

von Johannes_B » Mi 1. Okt 2014, 13:33

Nein. Das Paket kann nur externe Dateien einlesen und konvertieren.

Wie kann ich Umlaute mit dem Paket listings darstellen?

von Oekel » Mi 1. Okt 2014, 13:28

Hi, ja das war dumm die \acros und \colours drin zu lassen.

Ich habe leider immer noch Probleme bei der Anwendung der
\lstnewenvironment{myxml}[2] 
  {\lstset{language={XML},inputencoding=utf8/latin1,style=myxmlstyle,caption={#1},label={#2}}}{}
Jetzt mal aus dem letzten Post.
Könnte mir da noch Jemand ein Bsp. geben, das funktioniert?
\begin{myxml}{Some xml source }{xml}
Viele Grüße Oekel
\end{myxml}

von Johannes_B » Mi 1. Okt 2014, 11:58

1. Kein Minimalbeispiel, läuft nämlich nicht durch ;-)
2. Ja, du musst laut Anleitung eine 1Bit-Kodierung angeben. Listingsutf8 macht dann Magic (anders kann man es echt nicht sagen)
3. Probier es aus. Du kannst das global setzen, oder als Parameter beim Laden übergeben.
\begin{filecontents*}{\jobname.code}
	<?xml version="1.0" encoding="iso-8859-1"?>
	<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
	Transitional//EN"
	"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
	<html xmlns="http://www.w3.org/1999/xhtml">
	<html dir="ltr">
	<title=äÖß>
\end{filecontents*}
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{listingsutf8}
\usepackage[ngerman]{babel}
\usepackage{xcolor}

\lstdefinestyle{myxmlstyle}{
	inputencoding=utf8/latin1,%%%%%%%%<- set here
   extendedchars=true,
   belowcaptionskip=5pt,
   xleftmargin=1.8em,   xrightmargin=0.5em,
   numbers=left, numberstyle=\small\ttfamily\bf,
   frame=single, breaklines=true, breakatwhitespace=true, breakindent=0pt,
   emph={}, emphstyle=\color{red},
   basicstyle=\small\ttfamily,
   columns=fullflexible,
   showstringspaces=false,
   commentstyle=\color{gray}\upshape,
   morestring=[b]",
   morestring=[s]{>}{<},
   morecomment=[s]{<?}{?>},
   morecomment=[s][\color{orange}]{<!--}{-->},
   keywordstyle=\color{cyan},
   stringstyle=\color{black},
   identifierstyle=\color{blue},
   morekeywords={version,type, upload, generator, id, action, visible, lat, lon, ref, k, v}
}

\lstnewenvironment{myxml}[2]
  {\lstset{language={XML},inputencoding=utf8/latin1,style=myxmlstyle,caption={#1},label={#2}}}{}

\begin{document}
\section{}
\lstinputlisting[style=myxmlstyle, caption={Some nice
caption}]{\jobname.code}


Ich bin kein Minimalbeispiel, obwohl ich kompiliere.
\end{document}
 

von esdd » Mi 1. Okt 2014, 11:54

Dein Code ist für andere nicht lauffähig.

\lstinputlisting mit inputencoding=utf8 und eigenem Style

von Oekel » Mi 1. Okt 2014, 11:22

Ich versuche als erstes mal ein Minibeispiel zu geben:
\usepackage[utf8]{inputenc}
\usepackage{listingsutf8}
\usepackage[ngerman]{babel}

\lstdefinestyle{myxmlstyle}{
	extendedchars=true,
	belowcaptionskip=5pt,
	xleftmargin=1.8em,	xrightmargin=0.5em,
	numbers=left, numberstyle=\small\ttfamily\bf,
	frame=single, breaklines=true, breakatwhitespace=true, breakindent=0pt,
	emph={}, emphstyle=\color{red},
	basicstyle=\small\ttfamily,
	columns=fullflexible,
	showstringspaces=false,
	commentstyle=\color{gray}\upshape,
	morestring=[b]",
	morestring=[s]{>}{<},
	morecomment=[s]{<?}{?>},
	morecomment=[s][\color{orange}]{<!--}{-->},
	keywordstyle=\color{cyan},
	stringstyle=\color{black},
	identifierstyle=\color{darkblue},
	morekeywords={version,type, upload, generator, id, action, visible, lat, lon, ref, k, v}
}

\lstnewenvironment{myxml}[2]
  {\lstset{language={XML},inputencoding=utf8/latin1,style=myxmlstyle,caption={#1},label={#2}}}{}

\begin{document}
\section{}
%\lstset{extendedchars=\true, inputencoding=utf8/latin1}
%\lstinputlisting[style=myxmlstyle, caption={\acl{OSM}}-\ac{Bsp.},label=lst:OSM02, firstline=875, lastline=902]{listings/josm_Bremen-Falltum.osm}

%\begin{myxml}{Some xml source }{xml}
%testgrüße
%\end{myxml}
\end{document}
Also alle Dateien (auch die *.tex) habe ich als UTF8 unter Windows abgespeichert.
Nun weiß ich aber nicht, wo genau das "inputencoding=utf8/latin1" alles hin muss. In meinen style, oder in die Parameter von "lstinputlisting" oder muss ich jedes mal doch ein "lstset" vor das "lstinputlisting" machen und es dort eintragen?

1. Mir fehlt einfach die Ordnung in diesem System. Könnte das einer für mich testen und dann sagen, wo es wie genau hingehört und warum:?:

2. Muss es eigentlich "inputencoding=utf8/latin1" sein, oder reicht nicht auch "inputencoding=utf8".:?:

Grüße Oekel

Nach oben