Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

screwed whitespace after \@noligs?

11 views
Skip to first unread message

Ivan Shmakov

unread,
Mar 6, 2009, 1:08:03 PM3/6/09
to
При использовании команды \@noligs (бывает полезна при
оформлении вывода программ) пропадают пробелы после некоторых
символов. Hет ли способа этого избежать?

... Или проблема возникает только у меня?

%%% terminal-2009-03-06.tex -*- LaTeX -*-
\documentclass [12pt, a4paper] {article}
\usepackage [koi8-r] {inputenc}
\usepackage [T2A] {fontenc}

%%% Ivan Shmakov, 2009
%% This code is in the public domain

\usepackage [english, russian] {babel}
% ...

%% Convenience macros
\newcommand \angled [1] {{\textlangle {#1}\textrangle}}
\newcommand \keysym [1] {\mbox {\rm \angled {#1}}}
\newcommand \formal [1] {\mbox {\rm \it \angled {#1}}}

% ...

%%% The document body
\begin {document}

Окружение {\tt flushleft} и команда {\tt \textbackslash tt}:
\begin {flushleft}
\tt
\$ cat -E {\textless}
\textless(date +'\%A, \%-d \%B \%H:\%M:\%S \%Z \%Y') \\
Пятница, 6 Март 22:39:10 NOVT 2009\$\\
\$ \\
\end {flushleft}

Окружение {\tt flushleft}, команды {\tt \textbackslash tt} и {\tt
\textbackslash @noligs}:
\begin {flushleft}
\tt
\makeatletter \@noligs \makeatother
Использование: cat [\formal {ключ}] [\formal {файл}]\ldots \\
Сцепляет \formal {файл(ы)} или стандартный ввод на стандартный
вывод.\\
\begin {tabular} {@ {\quad}l l l}
-A, --show-all & синоним -vET\\
-b, --number-nonblank & нумеровать непустые строки при выводе\\
\multicolumn {2} {l} {\ldots}
\end {tabular}
\end {flushleft}

% ...

\end {document}
%% Local variables:
%% fill-column: 72
%% indent-tabs-mode: nil
%% latex-noindent-environments: nil
%% End:
%%% terminal-2009-03-06.tex ends here

--
FSF associate member #7257

Ilya Anfimov

unread,
Mar 7, 2009, 10:26:29 AM3/7/09
to
2009-03-06, Ivan Shmakov <iv...@theory.asu.ru> пишет:

> При использовании команды \@noligs (бывает полезна при
> оформлении вывода программ) пропадают пробелы после некоторых
> символов. Hет ли способа этого избежать?
>
> ... Или проблема возникает только у меня?

У меня пример вообще плохо компилируется


.....
(/usr/share/texmf-texlive/tex/generic/babel/russianb.ldf)) (./1.aux)
(/usr/share/texmf-texlive/tex/latex/cyrillic/t2acmtt.fd)
! Undefined control sequence.
\angled #1->{\textlangle
{#1}\textrangle }
l.36 Использование: cat [\formal {ключ}
] [\formal {файл}]\ldots \\
?
! Undefined control sequence.
\angled #1->{\textlangle {#1}\textrangle
}
l.36 Использование: cat [\formal {ключ}
] [\formal {файл}]\ldots \\
?
! Undefined control sequence.
\angled #1->{\textlangle
{#1}\textrangle }
l.36 ...ание: cat [\formal {ключ}] [\formal {файл}
]\ldots \\
?
! Undefined control sequence.
\angled #1->{\textlangle {#1}\textrangle
}
l.36 ...ание: cat [\formal {ключ}] [\formal {файл}
]\ldots \\
?
! Undefined control sequence.
\angled #1->{\textlangle
{#1}\textrangle }
l.37 Сцепляет \formal {файл(ы)}


или стандартный ввод на стандартный

?
! Undefined control sequence.
\angled #1->{\textlangle {#1}\textrangle
}
l.37 Сцепляет \formal {файл(ы)}


или стандартный ввод на стандартный

?
.....


Hо проблем с пробелами не наблюдаю.

Ivan Shmakov

unread,
Mar 7, 2009, 11:29:56 PM3/7/09
to
>>>>> Ilya Anfimov <il...@astelecom.ru> writes:

>> При использовании команды \@noligs (бывает полезна при оформлении
>> вывода программ) пропадают пробелы после некоторых символов. Hет ли
>> способа этого избежать?

>> ... Или проблема возникает только у меня?

> У меня пример вообще плохо компилируется

> .....
> (/usr/share/texmf-texlive/tex/generic/babel/russianb.ldf)) (./1.aux)
> (/usr/share/texmf-texlive/tex/latex/cyrillic/t2acmtt.fd)
> ! Undefined control sequence.
> \angled #1->{\textlangle
> {#1}\textrangle }
> l.36 Использование: cat [\formal {ключ}
> ] [\formal {файл}]\ldots \\
> ?
> ! Undefined control sequence.
> \angled #1->{\textlangle {#1}\textrangle

Похоже, забыл \usepackage {textcomp}. Hо эта проблема едва ли
существенна.

[...]

> Hо проблем с пробелами не наблюдаю.

I. e., после запятых в таблице:

\begin {flushleft}
\tt
\makeatletter \@noligs \makeatother

% ...


\begin {tabular} {@ {\quad}l l l}
-A, --show-all & синоним -vET\\
-b, --number-nonblank & нумеровать непустые строки при выводе\\

пробелы не пропадают? Какой дистрибутив TeX используется?

(Hадо будет попробовать TeX Live из Debian Lenny.)

Ilya Anfimov

unread,
Mar 8, 2009, 3:49:18 AM3/8/09
to
2009-03-08, Ivan Shmakov <iv...@theory.asu.ru> пишет:

>>>>>> Ilya Anfimov <il...@astelecom.ru> writes:
>
> >> При использовании команды \@noligs (бывает полезна при оформлении
> >> вывода программ) пропадают пробелы после некоторых символов. Hет ли
> >> способа этого избежать?
>
> >> ... Или проблема возникает только у меня?
>
> > У меня пример вообще плохо компилируется
>
> > .....
> > (/usr/share/texmf-texlive/tex/generic/babel/russianb.ldf)) (./1.aux)
> > (/usr/share/texmf-texlive/tex/latex/cyrillic/t2acmtt.fd)
> > ! Undefined control sequence.
> > \angled #1->{\textlangle
> > {#1}\textrangle }
> > l.36 Использование: cat [\formal {ключ}
> > ] [\formal {файл}]\ldots \\
> > ?
> > ! Undefined control sequence.
> > \angled #1->{\textlangle {#1}\textrangle
>
> Похоже, забыл \usepackage {textcomp}. Hо эта проблема едва ли

Добвил, теперь проблем вообще не вижу.

Ivan Shmakov

unread,
Oct 17, 2009, 6:12:58 AM10/17/09
to
>>>>> "IS" == Ivan Shmakov <iv...@theory.asu.ru> writes:

IS> О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ \@noligs (О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫
IS> О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫) О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫. HО©╫О©╫
IS> О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫?

IS> ... О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫?

О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫. О©╫ latex.ltx О©╫О©╫О©╫О©╫О©╫О©╫О©╫ \@noligs О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫
О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ (texlive-latex-base 2007.dfsg.2-1~lenny2,
http://packages.debian.org/lenny/texlive-latex-base):

--cut--
\def\verbatim@nolig@list{\do\`\do\<\do\>\do\,\do\'\do\-}
\def\do@noligs#1{%
\catcode`#1\active
\begingroup
\lccode`\~`#1\relax
\lowercase{\endgroup\def~{\leavevmode\kern\z@\char`#1}}}
\def\@noligs{\let\do\do@noligs \verbatim@nolig@list}
--cut--

HО©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫, О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫
О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫ \verbatim@nolig@list О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ -- О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫О©╫
О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ -- О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ /О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫/ (О©╫ О©╫О©╫О©╫О©╫О©╫О©╫
О©╫О©╫О©╫О©╫О©╫О©╫ -- О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫), e. g.:

--cut: О©╫О©╫О©╫ О©╫О©╫О©╫ TeX --
[О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫: О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫]

[...] О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ {\sl О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫
О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫}; О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫ ``О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫'' О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫
О©╫О©╫О©╫О©╫О©╫. [...]
--cut: О©╫О©╫О©╫ О©╫О©╫О©╫ TeX --

О©╫О©╫О©╫ \verb О©╫ \verbatim О©╫О©╫О©╫ О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫, О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫
О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫ О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫.

О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ \char О©╫ О©╫О©╫О©╫О©╫О©╫О©╫
О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫ О©╫О©╫О©╫О©╫, О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫, e. g.:

\makeatletter
\def\do@termenv@noligs#1{%
\catcode`#1\active
\begingroup
\lccode`\~`#1\relax
\lowercase {%
\endgroup
\def~{\leavevmode \kern \z@ {\char`#1}}}}
\makeatother

%% ...

\begin {flushleft}
\makeatletter
\let \do@noligs=\do@termenv@noligs
\@noligs
\makeatother
HО©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫, О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫\\
О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫.%
\end {flushleft}

О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫, О©╫ О©╫О©╫О©╫О©╫О©╫-О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ LaTeX О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫О©╫ О©╫О©╫О©╫О©╫
О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫О©╫.

0 new messages