LINUX.ORG.RU

LaTex вставка исходного кода

 


0

1

Есть некая проблема, при вставке кода с помощью lstinputlistings . Код выходит за границы страницы. Из-за того что код очень ступенчатый. Как это исправить?

http://i.imgur.com/Sy41KJJ.png

★★

Последнее исправление: Chubakur (всего исправлений: 2)

Если годятся переносы строк, вот мои настроечки для кода в октаве:

\lstset{basicstyle=\small,breaklines=true,language=Octave,
    extendedchars=true,aboveskip=1em,belowcaptionskip=5pt,
    prebreak = \hbox{%
\normalfont\small\hfill\green{\ensuremath{\hookleftarrow}}},
    postbreak = \hbox to 0pt{%
\hss\normalfont\small\green{\ensuremath{\hookrightarrow}}\hspace{1ex}},
    commentstyle=\color{blue},showspaces=false,
    showstringspaces=false,stringstyle=\bfseries\color[rgb]{0.6,0,1},
    numbers=left,numberstyle=\tiny,stepnumber=2,
    keywordstyle=\bfseries\color[rgb]{0,0.1,0.5},
    frameround=tttt,frame=trBL,tabsize=4,backgroundcolor=\color[rgb]{.9,.9,1}}
\lstloadlanguages{Octave}
\def\lstlistingname{Листинг}
\def\lstref#1{(см.~листинг~\ref{#1})}
Eddy_Em ☆☆☆☆☆
()

\trollmode: LaTeX тебе как бы намекает, что твой код «очень ступенчатый». Переписывай, чтобы влазил в 72 символа. Глубокие вложения признак Г-кода.

beastie ★★★★★
()
Ответ на: комментарий от beastie

Переписывай, чтобы влазил в 72 символа.

Ты где такие узкие мониторы видел? Вот 100 символов — ОК. Но в данном случае — да, уж очень огромный отступ.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Больше 80 - уже не труЪ. 72 - немного архаично, но сойдёт.

В былые времена, помнится, призывали форматировать по 40.

userid2
()
Ответ на: комментарий от Evgueni

80 - это ещё и размер терминала. 72 - он же, но с небольшим запасом,

userid2
()
Ответ на: комментарий от beastie

Создал класс - 4 пробела, начал писать функцию - еще 4. Теперь представь более менее сложный алгоритм, хотя бы сложности O(n^3) и добавь туда еще условие/пару. Уже 16 пробелов только на отступы. А цикл for с итераторами сам по себе сколько занимает

for(set<int>::iterator i = some_set.begin(); i != some_set.end(); ++i)

Chubakur ★★
() автор топика
Ответ на: комментарий от Chubakur
for(set<int>::iterator i = some_set.begin(); 
    i != some_set.end(); ++i)

Создал класс - 4 пробела, начал писать функцию - еще 4.

Зачем четыре, когда хватит двух?

ErasimHolmogorin
()
Последнее исправление: ErasimHolmogorin (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.