Страница 1 из 2

Настройка csh

Добавлено: 2007-12-11 15:41:07
manefesto
Всем привет.
Послушал я лисяру и поставил себе csh(точнее оставил). Немного напрягает что там не работает delete(это я про иксы,xterm). Тоже самое в консоли. То есть и backspace и delete ведут себя как backspace. Как биндинги правильно прописать ???

Re: Настройка csh

Добавлено: 2007-12-11 19:25:07
Alex Keda
кстати - в родной консоли у меня работает, а вот в иксех - нет.
не озадачивался..

Re: Настройка csh

Добавлено: 2007-12-11 22:46:35
Гость
telltc | grep del
должно дать подсказки

Re: Настройка csh

Добавлено: 2007-12-12 8:51:09
manefesto
Гость писал(а):telltc | grep del
должно дать подсказки
А как биндинги привязывать теперь ???

Re: Настройка csh

Добавлено: 2007-12-12 16:45:58
idle
manefesto писал(а):
Гость писал(а):telltc | grep del
должно дать подсказки
А как биндинги привязывать теперь ???
bindkey
Как обычно в юниксе - команда как называется то и делает.

Re: Настройка csh

Добавлено: 2007-12-13 15:25:36
manefesto
idle писал(а):
manefesto писал(а):
Гость писал(а):telltc | grep del
должно дать подсказки
А как биндинги привязывать теперь ???
bindkey
Как обычно в юниксе - команда как называется то и делает.
дык пробовал добавлять в .cshrc

Код: Выделить всё

bindkey "^]]P" delete-char
но безрезультатно

Re: Настройка csh

Добавлено: 2007-12-13 16:40:46
idle
Нужно:

Код: Выделить всё

bindkey "\e[3~" delete-char 

Re: Настройка csh

Добавлено: 2007-12-14 0:48:20
Гость
idle, можно и ^[[3~ или \033[3~. Большой роли не играет, т.к. bindkey все три вида знает и еще несколько.
В консоли (cons60r-v, cons25...) <DELETE> генерирует ^?, так что еще надо добавить:

Код: Выделить всё

bindkey ^? delete-char
Правда, если честно, то мне удобнее ^D (вместо <DELETE>) и ^H (вместо <BackSpace>), от emacs'а привычка :roll:

ps, thx, idle, за готовое решение :)

Re: Настройка csh

Добавлено: 2008-01-23 10:11:46
Alex Keda

Код: Выделить всё

% set autologout = (15 1)
какая хорошая команда в рассылке промелькнула =)

Re: Настройка csh

Добавлено: 2008-01-23 13:58:02
Гость
lissyara, а у тя она работает? у мя нет

Re: Настройка csh

Добавлено: 2008-01-23 14:02:34
Alex Keda
Гость писал(а):lissyara, а у тя она работает? у мя нет
у меня щас WinNT5.2 энтерпрайз эдишен...
фря тока дома будет - это я чтоб не забыть записал =)

Re: Настройка csh

Добавлено: 2008-01-23 14:02:48
idle
Гость писал(а):lissyara, а у тя она работает? у мя нет
Конечно. Через минуту спрашивает пароль, через 15 разлогинивает.
А у Вас шелл - csh?

Re: Настройка csh

Добавлено: 2008-01-24 1:02:04
Гость
idle, lissyara, sorry, я думал ждать не придется :oops:
тоже дохнет от SIGABRT в одном месте что под root, что под обычным юзером, прям как в рассылке:

Код: Выделить всё

> gdb -q tcsh
(gdb) r -f
Starting program: /bin/tcsh -f
# set autologout = (15 1)
#
Password:
Program received signal SIGABRT, Aborted.
0x281e851f in kill () from /lib/libc.so.7
(gdb) bt
#0  0x281e851f in kill () from /lib/libc.so.7
#1  0x281e847e in raise () from /lib/libc.so.7
#2  0x281e7228 in abort () from /lib/libc.so.7
#3  0x08051b3c in cleanup_until (last_var=Variable "last_var" is not available.
) at /usr/src/bin/csh/../../contrib/tcsh/sh.err.c:448
#4  0x08082d37 in auto_lock () at /usr/src/bin/csh/../../contrib/tcsh/tc.func.c:635
#5  0x08082b35 in alrmcatch () at /usr/src/bin/csh/../../contrib/tcsh/tc.func.c:781
#6  0x0806123f in xread (fildes=16, buf=0xbfbfe6e6, nbyte=1)
    at /usr/src/bin/csh/../../contrib/tcsh/sh.misc.c:637
#7  0x08078a6e in GetNextChar (cp=0xbfbfe784)
    at /usr/src/bin/csh/../../contrib/tcsh/ed.inputl.c:776
#8  0x08078ea8 in Inputl () at /usr/src/bin/csh/../../contrib/tcsh/ed.inputl.c:666
#9  0x0805eab9 in readc (wanteof=0) at /usr/src/bin/csh/../../contrib/tcsh/sh.lex.c:1652
#10 0x08060ab3 in lex (hp=0x80a5678) at /usr/src/bin/csh/../../contrib/tcsh/sh.lex.c:162
#11 0x0804a8d5 in process (catch=1) at /usr/src/bin/csh/../../contrib/tcsh/sh.c:1931
#12 0x0804cc26 in main (argc=Variable "argc" is not available.
) at /usr/src/bin/csh/../../contrib/tcsh/sh.c:1304

Re: Настройка csh

Добавлено: 2008-01-24 9:54:31
idle
Гость
И у меня тоже падает. Но я никогда locking и не использовал, у меня просто:

Код: Выделить всё

        if ( ${uid} == 0 ) then
                   set autologout=30
                   .....
 

Re: Настройка csh

Добавлено: 2008-01-24 18:06:27
Гость
idle писал(а):И у меня тоже падает. Но я никогда locking и не использовал, у меня просто...
собери tcsh с дебагом (cd /usr/src/bin/csh; make cleandir; make cleandir; make obj depend all install DEBUG_FLAGS=-ggdb3; make cleandir; make cleandir) и натрави на него gdb. Мне любопытно где ж еще баг, т.к. у меня без locking не падает.

ps, а вот и fix подоспел

Re: Настройка csh

Добавлено: 2008-01-24 18:16:25
idle
Я неверно выразился, я locking вообще не использую и без него у меня тоже всё нормально. Пару раз включал посмотреть, тогда csh падал.

Re: Настройка csh

Добавлено: 2008-05-01 15:42:13
paix
csh это, конечно, круто, но в подобных случаях что? переключаться временно на баш ?

Код: Выделить всё

# installing openvpn
cd /usr/local/share/doc/openvpn/easy-rsa
. vars

Re: Настройка csh

Добавлено: 2008-05-01 20:04:01
Alex Keda
мсье ниасилил ман? =)

Код: Выделить всё

source ~/.cshrc
например...
в вашем случае -

Код: Выделить всё

source vars

Re: Настройка csh

Добавлено: 2008-05-01 22:01:00
paix
lissyara писал(а):мсье ниасилил ман? =)
каюсь, про source мусье не знал ;) что, вообщемто, не мешало ему пристойно жить ;)

Однако, перед тем как загрузить в csh переменные из "vars", нужно сначала поправить все "export" и прочее башевское добро в читабельный для csh вид.

когдато просто огорчился этим....что некоторые вещи имеют подефолту заточку под баш.

Re: Настройка csh

Добавлено: 2008-05-01 22:05:25
Alex Keda
вообще-то программы заточены под шелл, а не баш.
ибо это баш является sh-like шеллом, а не наоборот =)
==========
что касается поправить сделал что надо и вернулся обратно.
Ради единственного момента напрягаться использованием баша не стоит.
тем более, как тут выяснилось, полфорума его поклонники лишь потому что он популярен, а настроить не в стотоянии.
Тех кто может настроить нашлось лишь двое помоему...

Re: Настройка csh

Добавлено: 2008-05-01 23:10:26
paix
lissyara писал(а): сделал что надо и вернулся обратно.
Ради единственного момента напрягаться использованием баша не стоит.
тем более, как тут выяснилось, полфорума его поклонники лишь потому что он популярен, а настроить не в стотоянии.
Тех кто может настроить нашлось лишь двое помоему...
в обоих оболочках есть много вкусностей ;)
важно, как ты эти вкусности используеш и используеш ли вообще.

например, выражения вида

Код: Выделить всё

#for i in `ls`; do du -sh $i; done
в csh уже совсем по другому звучат.

Со временем пришел к выводу, что нужно знать средства, которые идут в системе по дефолту. Не зря o'reilly bsd hacks описывают хаки для csh, а в книгах вида .* Linux упор делается на bash.
Привычка экономит много сил и нервов. Особенно, когда приходится что-то делать на чужих серверах, особенно, когда на этих серверах нет рутовых пермишенсов.

Re: Настройка csh

Добавлено: 2008-05-01 23:32:34
Alex Keda
меня всегда умиляло желание линуксоидов запихать всё в одну строку, невзирая на потерю читабельности....
а вот в tsch оно куда красивей:

Код: Выделить всё

acer$ foreach i (`ls`)
foreach? du -sh $i
foreach? end

Re: Настройка csh

Добавлено: 2008-05-02 0:01:00
paix
лис, я не пингвинуксоид ;) но тенденцию ты заметил правильно.
разница в том, какой вариант знаеш лучше ;)

Re: Настройка csh

Добавлено: 2008-05-02 0:15:52
Alex Keda
ну, ты так активно за баш выступаешь =)))
========
давай проведём старый тест из соседней темы.
поиск по хистори в баше у тебя как реализован?
1. сидишь и тупо долбишь стрелку вверх?
2. знаешь волшебную комбинацию клавиш для поиска по хистори?
3. Настроил конфиг баша для поиска в стиле tcsh - когда ввёл первую букву[-ы], брякнул стрелку вверх и оно выводит тока команды из хистори начинавшиеся на эту букву[-ы]?

Re: Настройка csh

Добавлено: 2008-05-02 4:33:39
Гость
paix писал(а):

Код: Выделить всё

#for i in `ls`; do du -sh $i; done
в csh уже совсем по другому звучат.
вообще-то этот быдлокод работает и на sh(1), и быдло-bash совсем не обязательно ставить. В том что у лайнуксятников #!/bin/sh на самом деле означает #!/bin/bash виноваты только эти сами лайнуксятники и их непортируемые скрипты.
по поводу быдлокода: http://partmaps.org/era/unix/award.html#backticks

ps, http://redundancy.org/linuxhate.html