ALT Linux Community general discussions
 help / color / mirror / Atom feed
* Re: [Comm] zsh и артифакт konsole
  @ 2008-04-12 15:11 ` Andrey Rahmatullin
  2008-04-12 15:40   ` Grigory Fateyev
  0 siblings, 1 reply; 6+ messages in thread
From: Andrey Rahmatullin @ 2008-04-12 15:11 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 445 bytes --]

On Sat, Apr 12, 2008 at 07:07:57PM +0400, Grigory Fateyev wrote:
> Откуда может взяться странный артифак в виде подсвеченного знака
> процента между строками? (см. screenshot)
man zshoptions, PROMPT_SP, PROMPT_CR


-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):

> Давайте назовём это /etc/lsm и запакуем в виде отдельного пакета etclsm :)
Мне tcb в etctcb переименовывать или уже поздно? :)
		-- ldv in devel@

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Comm] zsh и артифакт konsole
  2008-04-12 15:11 ` [Comm] zsh и артифакт konsole Andrey Rahmatullin
@ 2008-04-12 15:40   ` Grigory Fateyev
  2008-04-12 15:46     ` Andrey Rahmatullin
  2008-04-12 16:23     ` Sergey Vlasov
  0 siblings, 2 replies; 6+ messages in thread
From: Grigory Fateyev @ 2008-04-12 15:40 UTC (permalink / raw)
  To: community

Hello Andrey Rahmatullin!
On Sat, 12 Apr 2008 21:11:24 +0600 you wrote:

> On Sat, Apr 12, 2008 at 07:07:57PM +0400, Grigory Fateyev wrote:
> > Откуда может взяться странный артифак в виде подсвеченного знака
> > процента между строками? (см. screenshot)
> man zshoptions, PROMPT_SP, PROMPT_CR
> 
Спасибо за наводку, это помогло:
 
setopt no_prompt_sp

preexec()
{
    setopt prompt_sp
}

-- 
Всего наилучшего! Григорий
greg [at] anastasia [dot] ru
Письмо отправлено: 2008/04/12 19:39


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Comm] zsh и артифакт konsole
  2008-04-12 15:40   ` Grigory Fateyev
@ 2008-04-12 15:46     ` Andrey Rahmatullin
  2008-04-12 16:10       ` Grigory Fateyev
  2008-04-12 16:23     ` Sergey Vlasov
  1 sibling, 1 reply; 6+ messages in thread
From: Andrey Rahmatullin @ 2008-04-12 15:46 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 558 bytes --]

On Sat, Apr 12, 2008 at 07:40:05PM +0400, Grigory Fateyev wrote:
> Спасибо за наводку, это помогло:
>  
> setopt no_prompt_sp
> 
> preexec()
> {
>     setopt prompt_sp
> }
Опа, что это даёт?

-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):

<Maks> karpov: знаешь, я в последнее время слабо представляю что такое
       порнография. Вот гугль нарисовал на моей странице баннер и написал там
       "pornografics", я не удержался и ткнул из любопытсва, оказалось
       риэлторская контора по продаже частных домов в сша

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 197 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Comm] zsh и артифакт konsole
  2008-04-12 15:46     ` Andrey Rahmatullin
@ 2008-04-12 16:10       ` Grigory Fateyev
  0 siblings, 0 replies; 6+ messages in thread
From: Grigory Fateyev @ 2008-04-12 16:10 UTC (permalink / raw)
  To: community

Hello Andrey Rahmatullin!
On Sat, 12 Apr 2008 21:46:49 +0600 you wrote:

> On Sat, Apr 12, 2008 at 07:40:05PM +0400, Grigory Fateyev wrote:
> > Спасибо за наводку, это помогло:
> >  
> > setopt no_prompt_sp
> > 
> > preexec()
> > {
> >     setopt prompt_sp
> > }
> Опа, что это даёт?
> 
При загрузки консоли пропадает описанный выше артефакт, что и
требовалось мне. Пока багов незамеченно...

-- 
Всего наилучшего! Григорий
greg [at] anastasia [dot] ru
Письмо отправлено: 2008/04/12 20:07


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Comm] zsh и артифакт konsole
  2008-04-12 15:40   ` Grigory Fateyev
  2008-04-12 15:46     ` Andrey Rahmatullin
@ 2008-04-12 16:23     ` Sergey Vlasov
  2008-04-12 17:19       ` Grigory Fateyev
  1 sibling, 1 reply; 6+ messages in thread
From: Sergey Vlasov @ 2008-04-12 16:23 UTC (permalink / raw)
  To: community

[-- Attachment #1: Type: text/plain, Size: 2567 bytes --]

On Sat, Apr 12, 2008 at 07:40:05PM +0400, Grigory Fateyev wrote:
> Hello Andrey Rahmatullin!
> On Sat, 12 Apr 2008 21:11:24 +0600 you wrote:
> 
> > On Sat, Apr 12, 2008 at 07:07:57PM +0400, Grigory Fateyev wrote:
> > > Откуда может взяться странный артифак в виде подсвеченного знака
> > > процента между строками? (см. screenshot)
> > man zshoptions, PROMPT_SP, PROMPT_CR
> > 
> Спасибо за наводку, это помогло:
>  
> setopt no_prompt_sp
> 
> preexec()
> {
>     setopt prompt_sp
> }

На самом деле эта комбинация настроек решает другую проблему - убирает
мусор, появляющийся, если начать набирать первую команду после
открытия нового терминала, не дожидаясь завершения запуска zsh и
выдачи промпта.  Т.е., изначально опция prompt_sp отключается, и
набранные символы просто затираются первым промптом, а перед
выполнением первой команды опция prompt_sp включается (и далее
остаётся в таком состоянии), чтобы вывод команд, забывающих добавить
\n в конце, не пропадал.

То, что в данном случае такая настройка помогла, означает, что команда
setopt prompt_sp, добавленная в preexec(), так и не выполнилась -
очевидно, это определение было вставлено раньше уже имеющихся в .zshrc
команд:

case $TERM in
    xterm*|rxvt*|aterm*)
                        precmd () {
                            print -Pn "\e]0;TERM %n@%m: %~\t$1\a"
                        }
                        preexec () {
                            print -Pn "\e]0;TERM <%n@%m> $1\a"
                        }
                        ;;
esac

В результате новое определение preexec() перекрывает старое, и zsh
просто продолжает работать в режиме no_prompt_sp - в комбинации с
установленным по умолчанию prompt_cr это означает, что выдаваемые
запущенными командами строки, не имеющие в конце символа новой строки,
будут затираться промптом zsh.

Настоящая проблема находится в precmd() - команда print в этой функции
пытается вставить в заголовок окна терминала символ табуляции; при
использовании xterm это не вызывает проблем в самом терминале (хотя в
заголовок попадает "?"), а вот konsole, похоже, интерпретирует любые
управляющие символы в параметре "\e]0;" как признак конца строки, и
весь последующий вывод (включая сам символ табуляции) попадает в
терминал в виде обычного текста.  Нужно заменить "\t", например, на
пробел (всё равно табуляция в заголовке окна в общем случае не будет
отображаться правильно).

А setopt prompt_sp, если это необходимо, придётся добавлять во все
варианты определений preexec(), имеющиеся в .zshrc.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [Comm] zsh и артифакт konsole
  2008-04-12 16:23     ` Sergey Vlasov
@ 2008-04-12 17:19       ` Grigory Fateyev
  0 siblings, 0 replies; 6+ messages in thread
From: Grigory Fateyev @ 2008-04-12 17:19 UTC (permalink / raw)
  To: community

Hello Sergey Vlasov!
On Sat, 12 Apr 2008 20:23:51 +0400 you wrote:

[...]
> Настоящая проблема находится в precmd() - команда print в этой функции
> пытается вставить в заголовок окна терминала символ табуляции; при
> использовании xterm это не вызывает проблем в самом терминале (хотя в
> заголовок попадает "?"), а вот konsole, похоже, интерпретирует любые
> управляющие символы в параметре "\e]0;" как признак конца строки, и
> весь последующий вывод (включая сам символ табуляции) попадает в
> терминал в виде обычного текста.  Нужно заменить "\t", например, на
> пробел (всё равно табуляция в заголовке окна в общем случае не будет
> отображаться правильно).
> 
> А setopt prompt_sp, если это необходимо, придётся добавлять во все
> варианты определений preexec(), имеющиеся в .zshrc.

Спасибо за подробный ответ, ваш совет помог. Может стоит этот пост
зафиксировать на freesource?

-- 
Всего наилучшего! Григорий
greg [at] anastasia [dot] ru
Письмо отправлено: 2008/04/12 21:16


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2008-04-12 17:19 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-04-12 15:11 ` [Comm] zsh и артифакт konsole Andrey Rahmatullin
2008-04-12 15:40   ` Grigory Fateyev
2008-04-12 15:46     ` Andrey Rahmatullin
2008-04-12 16:10       ` Grigory Fateyev
2008-04-12 16:23     ` Sergey Vlasov
2008-04-12 17:19       ` Grigory Fateyev

ALT Linux Community general discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 community community/ http://lore.altlinux.org/community \
		mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com
	public-inbox-index community

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.community


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git