Browse Source

Initial commit

Maxim Likhachev 12 years ago
commit
a0e78fa4e0
  1. 30
      .gitignore
  2. 69
      etc/X/Xdefaults
  3. 29
      etc/X/Xdefaults.alternate
  4. 29
      etc/X/Xmodmaprc.AuthenticAMD
  5. 17
      etc/X/Xmodmaprc.GenuineIntel
  6. 1
      etc/X/keymap
  7. 105
      etc/X/xbindkeysrc.AuthenticAMD
  8. 92
      etc/X/xbindkeysrc.GenuineIntel
  9. 10
      etc/X/xinitrc.AuthenticAMD
  10. 10
      etc/X/xinitrc.GenuineIntel
  11. 16
      etc/cron/crontab
  12. 123
      etc/installrc.sh
  13. 17
      etc/mail/checkmail
  14. 14
      etc/mail/mailcap/mailcap
  15. 29
      etc/mail/mutt/colors.mutt
  16. 13
      etc/mail/mutt/header.mutt
  17. 7
      etc/mail/mutt/keys.mutt
  18. 37
      etc/mail/mutt/muttrc
  19. 2235
      etc/mail/sendemail
  20. 59
      etc/media/mpd/mpd.conf
  21. 86
      etc/media/ncmpcpp/config
  22. 34
      etc/net/rtorrent/rtorrent.rc
  23. 44
      etc/rc.cygwin
  24. 52
      etc/rc.linux-gnu
  25. 166
      etc/shell/bash/DIR_COLORS
  26. 466
      etc/shell/bash/aliases
  27. 150
      etc/shell/bash/aliases_cygwin
  28. 9300
      etc/shell/bash/bash_completion
  29. 113
      etc/shell/bash/bash_completion_custom
  30. 83
      etc/shell/bash/bash_completion_cygwin
  31. 13
      etc/shell/bash/bash_profile
  32. 298
      etc/shell/bash/bashrc
  33. 263
      etc/shell/bash/cdargs-bash.sh
  34. 85
      etc/shell/bash/inputrc
  35. 12
      etc/shell/guile/guile
  36. 5
      etc/shell/screen/apps/centerim.screen
  37. 34
      etc/shell/screen/screenrc
  38. 76
      etc/shell/tcl/tclshrc
  39. 1
      etc/shell/tcl/wishrc
  40. 28
      etc/soft/bar/barrc
  41. 58
      etc/soft/conky/conkyrc.AuthenticAMD
  42. 58
      etc/soft/conky/conkyrc.GenuineIntel
  43. 62
      etc/soft/ctags/ctags
  44. 12
      etc/soft/cygwin/minttyrc
  45. 7
      etc/soft/git/gintconfig.sh
  46. 24
      etc/soft/git/gitconfig
  47. 33
      etc/soft/git/gitignore-global
  48. 61
      etc/soft/git/gitk
  49. 24
      etc/soft/htop/htoprc
  50. 36
      etc/soft/logrotate/logrotate.conf
  51. 44
      etc/soft/mc/filehighlight.ini
  52. 189
      etc/soft/mc/ini
  53. 742
      etc/soft/mc/mc.ext
  54. 151
      etc/soft/mc/skins/dark.ini
  55. 150
      etc/soft/mc/skins/darkfar.ini
  56. 138
      etc/soft/mc/skins/default.ini
  57. 137
      etc/soft/mc/skins/double-lines.ini
  58. 156
      etc/soft/mc/skins/featured.ini
  59. 131
      etc/soft/mc/skins/gotar.ini
  60. 129
      etc/soft/mc/skins/mc46.ini
  61. 182
      etc/soft/mc/skins/modarcon16-defbg.ini
  62. 182
      etc/soft/mc/skins/modarcon16.ini
  63. 182
      etc/soft/mc/skins/modarcon16root-defbg.ini
  64. 182
      etc/soft/mc/skins/modarcon16root.ini
  65. 182
      etc/soft/mc/skins/modarin256-defbg.ini
  66. 182
      etc/soft/mc/skins/modarin256.ini
  67. 182
      etc/soft/mc/skins/modarin256root-defbg.ini
  68. 182
      etc/soft/mc/skins/modarin256root.ini
  69. 143
      etc/soft/mc/skins/nicedark.ini
  70. 201
      etc/soft/mc/skins/sand256.ini
  71. 192
      etc/soft/mc/skins/x.ini
  72. 181
      etc/soft/mc/skins/xoria256.ini
  73. 339
      etc/soft/nagelfar/COPYING
  74. 1
      etc/soft/nagelfar/README.txt
  75. 106
      etc/soft/nagelfar/doc/README.txt
  76. 34
      etc/soft/nagelfar/doc/call-by-name.txt
  77. 104
      etc/soft/nagelfar/doc/codecoverage.txt
  78. 74
      etc/soft/nagelfar/doc/inlinecomments.txt
  79. 36
      etc/soft/nagelfar/doc/messages.txt
  80. 45
      etc/soft/nagelfar/doc/syntaxdatabases.txt
  81. 67
      etc/soft/nagelfar/doc/syntaxtokens.txt
  82. 3
      etc/soft/nagelfar/misctests/test.syntax
  83. 93
      etc/soft/nagelfar/misctests/test.tcl
  84. 5728
      etc/soft/nagelfar/nag
  85. 40
      etc/soft/nagelfar/nagelfar.syntax
  86. 5726
      etc/soft/nagelfar/nagelfar.tcl
  87. 305
      etc/soft/nagelfar/nagelfar_changes
  88. 808
      etc/soft/nagelfar/syntaxbuild.tcl
  89. 934
      etc/soft/nagelfar/syntaxdb.tcl
  90. 524
      etc/soft/nagelfar/syntaxdb84.tcl
  91. 1029
      etc/soft/nagelfar/syntaxdb86.tcl
  92. 3
      etc/soft/vim/vim/+ftplugin/c.vim
  93. 3
      etc/soft/vim/vim/+ftplugin/cpp.vim
  94. 7
      etc/soft/vim/vim/+ftplugin/erlang.vim
  95. 9
      etc/soft/vim/vim/+ftplugin/graphviz.vim
  96. 63
      etc/soft/vim/vim/+ftplugin/haskell.vim
  97. 15
      etc/soft/vim/vim/+ftplugin/install.sh
  98. 6
      etc/soft/vim/vim/+ftplugin/lisp.vim
  99. 2
      etc/soft/vim/vim/+ftplugin/ocaml.vim
  100. 5
      etc/soft/vim/vim/+ftplugin/pascal.vim
  101. Some files were not shown because too many files have changed in this diff Show More

30
.gitignore vendored

@ -0,0 +1,30 @@
bin
var
etc/mail/fetchmail/fetchmailrc
etc/mail/mutt/boxes.mutt
etc/mail/procmail/procmailrc
etc/media/ncmpcpp/error.log
etc/media/scmpc/scmpc.conf
etc/net/snownews
etc/shell/cw
etc/soft/antiword
etc/soft/cdargs
etc/soft/figlet
etc/soft/jodconverter
etc/soft/mc/history
etc/soft/mc/hotlist
etc/soft/mc/panels.ini
etc/soft/vim/vim/session
etc/soft/vimperator/info
etc/soft/zathura
etc/wm/gtk/gtk-bookmarks
vimwiki/html
vimwiki/wiki

69
etc/X/Xdefaults

@ -0,0 +1,69 @@
!Общие настройки (U)Rxvt
URxvt*font: xft:DejaVU Sans Mono:pixelsize=17
URxvt*pixelsize:14
URxvt*scrollBar:false
URxvt.cursorColor: #AAAAAA
URxvt*termName: xterm
!Настрока шрифтов
Xft.antialias: 1
Xft.dpi: 96
! Xft.dpi: 120
Xft.hinting: 1
Xft.hintstyle: hintfull
Xft.rgba: rgb
xterm*faceName: DejaVu Sans Mono
xterm*pixelsize:14
!Цветовая схема Xterm
xterm*background: rgb:D9/D9/D9
xterm*foreground: rgb:00/00/00
xterm*color0: rgb:3B/3B/3C
xterm*color1: rgb:cd/00/00
xterm*color2: rgb:20/A3/30
xterm*color3: rgb:b8/b8/00
xterm*color4: rgb:00/00/cd
xterm*color5: rgb:b2/17/b2
xterm*color6: rgb:00/b0/b0
xterm*color7: rgb:be/b2/62
xterm*color8: rgb:80/80/80
xterm*color9: rgb:80/00/00
xterm*color10: rgb:00/50/20
xterm*color11: rgb:99/55/00
xterm*color12: rgb:00/40/80
xterm*color13: rgb:44/33/00
xterm*color14: rgb:30/60/80
xterm*color15: rgb:7F/77/76
!Цветовая схема URxvt
URxvt*background: rgb:D9/D9/D9
URxvt*foreground: rgb:00/00/00
URxvt*color0: rgb:3B/3B/3C
URxvt*color1: rgb:cd/00/00
URxvt*color2: rgb:20/A3/30
URxvt*color3: rgb:b8/b8/00
URxvt*color4: rgb:00/00/cd
URxvt*color5: rgb:b2/17/b2
URxvt*color6: rgb:00/b0/b0
URxvt*color7: rgb:be/b2/62
URxvt*color8: rgb:80/80/80
URxvt*color9: rgb:80/00/00
URxvt*color10: rgb:00/50/20
URxvt*color11: rgb:99/55/00
URxvt*color12: rgb:00/40/80
URxvt*color13: rgb:44/33/00
URxvt*color14: rgb:30/60/80
URxvt*color15: rgb:7F/77/76
!Настрока клавиатуры для URxvt
URxvt*keysym.Control-Up: \033[1;5A
URxvt*keysym.Control-Down: \033[1;5B
URxvt*keysym.Control-Left: \033[1;5D
URxvt*keysym.Control-Right: \033[1;5C
URxvt.keysym.C-Prior: \033[6;5~
URxvt.keysym.C-Next: \033[5;5~
URxvt.keysym.C-Home: \033[7;7^
URxvt.keysym.C-End: \033[8;8^
URxvt.keysym.Home: \033[7~

29
etc/X/Xdefaults.alternate

@ -0,0 +1,29 @@
! цвет текста
URxvt*foreground: #f2f2f2
! цвет фона
URxvt*background: #303030
! шрифт (со сглаживанием)
URxvt*font: xft:DejaVU Sans Mono
! тип скроллбара
URxvt*scrollstyle:plain
! расположение скроллбара
URxvt*scrollBar_right:true
! цвет скроллбара
URxvt*scrollColor: #fdb927
! цветовая схема используемая в URxvt
URxvt*color0: #6c6c6c
URxvt*color1: #e9897c
URxvt*color2: #b6e77d
URxvt*color3: #ecebbe
URxvt*color4: #7993a9
URxvt*color5: #ea96eb
URxvt*color6: #c9caec
URxvt*color7: #f2f2f2
URxvt*color8: #747474
URxvt*color9: #f99286
URxvt*color10: #b6e77d
URxvt*color11: #fcfbcc
URxvt*color12: #b6defb
URxvt*color13: #fba1fb
URxvt*color14: #d7d9fc
URxvt*color15: #f2f2f2

29
etc/X/Xmodmaprc.AuthenticAMD

@ -0,0 +1,29 @@
! Настройка мультимедийных клавиш Genius KB-21
keycode 144 = XF86AudioPrev
keycode 153 = XF86AudioNext
keycode 162 = XF86AudioPlay
keycode 164 = XF86AudioStop
keycode 174 = XF86AudioLowerVolume
keycode 176 = XF86AudioRaiseVolume
keycode 160 = XF86AudioMute
keycode 236 = XF86Mail
keycode 223 = XF86PowerDown
keycode 229 = XF86Search
keycode 161 = XF86Calculator
keycode 234 = XF86Back
keycode 233 = XF86Forward
keycode 232 = XF86Stop
keycode 231 = XF86Refresh
keycode 178 = XF86WWW
keycode 223 = XF86Sleep
keycode 230 = XF86Favorites
keycode 237 = XF86AudioMedia
keycode 235 = XF86MyComputer
keycode 110 = Pause
! Замена <Caps Lock> на <ESC>
! clear Lock
! keycode 0x42 = Escape
remove Lock = Caps_Lock
keysym Caps_Lock = Escape

17
etc/X/Xmodmaprc.GenuineIntel

@ -0,0 +1,17 @@
!Настройка клавиатуры HP
keycode 146 = Help
keycode 37 = Control_L
keycode 180 = XF86HomePage
keycode 235 = XF86Display
keycode 150 = XF86Sleep
keycode 160 = XF86ScreenSaver
keycode 232 = XF86MonBrightnessDown
keycode 233 = XF86MonBrightnessUp
keycode 121 = XF86AudioMute
keycode 122 = XF86AudioLowerVolume
keycode 123 = XF86AudioRaiseVolume
! Замена <Caps Lock> на <ESC>
clear Lock
keycode 0x42 = Escape

1
etc/X/keymap

@ -0,0 +1 @@
keycode 58 = Escape

105
etc/X/xbindkeysrc.AuthenticAMD

@ -0,0 +1,105 @@
# xbindkeysrc.AuthenticAMD
#
# Изменён: Вс 25 авг 2013 01:55:59
#
#Запуск программ#{{{
"xkill"
m:0xc + c:9
Control+Alt + Escape
"import screenshot.png"
m:0x0 + c:107
Print
"xkill"
m:0x10c + c:9
Control+Alt+Mod2 + Escape
"import screenshot.png"
m:0x10 + c:107
Mod2 + Print
"serial"
m:0x40 + c:33
Mod4 + p
"dmenfm"
m:0x40 + c:52
Mod4 + z
"moveWindow"
m:0x40 + c:57
Mod4 + n
#}}}
#Управление плеером#{{{
"musca -c 'use music' && { mpd $SHELLRC/etc/media/mpd/mpd.conf; last.fm; urxvtc -e ncmpcpp; }"
m:0x0 + c:234
XF86AudioMedia
"mpc next"
m:0x0 + c:171
XF86AudioNext
"mpc prev"
m:0x0 + c:173
XF86AudioPrev
"mpc toggle"
m:0x0 + c:172
XF86AudioPlay
"mpc stop"
m:0x0 + c:174
XF86AudioStop
}}}
#Сохранение оценки песни в тегах#{{{
"musca -c 'use music' && eval $(echo setrating 1 | dmenu -i)"
m:0x4 + c:10
Control + 1
"musca -c 'use music' && eval $(echo setrating 2 | dmenu -i)"
m:0x4 + c:11
Control + 2
"musca -c 'use music' && eval $(echo setrating 3 | dmenu -i)"
m:0x4 + c:12
Control + 3
"musca -c 'use music' && eval $(echo setrating 4 | dmenu -i)"
m:0x4 + c:13
Control + 5
"musca -c 'use music' && eval $(echo setrating 5 | dmenu -i)"
m:0x4 + c:14
Control + 5
"musca -c 'use music' && eval $(echo setrating 5+ | dmenu -i)"
m:0x4 + c:15
Control + 6
}}}
#Запуск программ на рабочих столах {{{
"loadLayout"
m:0x40 + c:31
# Mod4 + i
"saveLayout"
m:0x41 + c:31
# Shift+Mod4 + i
"moveWindow"
m:0x41 + c:33
Shift+Mod4 + p
}}}

92
etc/X/xbindkeysrc.GenuineIntel

@ -0,0 +1,92 @@
# xbindkeysrc.GehuineIntel
#
# Изменён: Вс 25 авг 2013 01:57:58
#
#Запуск программ#{{{
"xkill"
m:0xc + c:9
Control+Alt + Escape
"serial"
m:0x40 + c:33
Mod4 + p
#}}}
#HP ProBook{{{
"amixer set PCM 2dB-"
m:0x0 + c:122
XF86AudioLowerVolume
"amixer set PCM 2dB+"
m:0x0 + c:123
XF86AudioRaiseVolum
"amixer set PCM toggle"
m:0x0 + c:121
XF86AudioMute
"xbacklight -dec 10"
m:0x0 + c:232
XF86MonBrightnessDown
"xbacklight -inc 10"
m:0x0 + c:233
XF86MonBrightnessUp
#}}}
#Управление плеером#{{{
"musca -c 'use music' && { mpd $SHELLRC/etc/media/mpd/mpd.conf; urxvtc -e ncmpcpp; }"
m:0x0 + c:237
XF86AudioMedia
"mpc next"
m:0x0 + c:153
XF86AudioNext
"mpc prev"
m:0x0 + c:144
XF86AudioPrev
"mpc toggle"
m:0x0 + c:162
XF86AudioPlay
"mpc stop"
m:0x0 + c:164
XF86AudioStop
#}}}
#Сохранение оценки песни в тегах#{{{
"musca -c 'use music' && eval $(echo setrating 1 | dmenu -i)"
m:0x4 + c:10
Control + 1
"musca -c 'use music' && eval $(echo setrating 2 | dmenu -i)"
m:0x4 + c:11
Control + 2
"musca -c 'use music' && eval $(echo setrating 3 | dmenu -i)"
m:0x4 + c:12
Control + 3
"musca -c 'use music' && eval $(echo setrating 4 | dmenu -i)"
m:0x4 + c:13
Control + 5
"musca -c 'use music' && eval $(echo setrating 5 | dmenu -i)"
m:0x4 + c:14
Control + 5
"musca -c 'use music' && eval $(echo setrating 5+ | dmenu -i)"
m:0x4 + c:15
Control + 6
#}}}

10
etc/X/xinitrc.AuthenticAMD

@ -0,0 +1,10 @@
display -window root $SHELLRC/etc/wm/wallpaper.$(uname -i).1.jpg -display :0.0
display -window root $SHELLRC/etc/wm/wallpaper.$(uname -i).2.jpg -display :0.1
setxkbmap -model pc104 -layout us,ru -variant ,
setxkbmap -option -option terminate:ctrl_alt_bksp,caps:escape,grp:lwin_toggle
xmodmap $SHELLRC/etc/X/Xmodmaprc.$(uname -i)
exec musca

10
etc/X/xinitrc.GenuineIntel

@ -0,0 +1,10 @@
display -window root $SHELLRC/etc/wm/wallpaper.$(uname -i).jpg
setxkbmap -model pc104 -layout us,ru -variant ,
setxkbmap -option -option terminate:ctrl_alt_bksp,caps:escape,grp:lwin_toggle
xmodmap -e 'keycode 135 = Super_R'
xmodmap $SHELLRC/etc/X/Xmodmaprc.$(uname -i)
sleep 0.5
exec musca > /dev/null

16
etc/cron/crontab

@ -0,0 +1,16 @@
# crontab
#
# Изменён: Пн 26 авг 2013 18:52:06
#
# MIN HOUR DAY MONTH DAYOFWEEK COMMAND
# Проверка почты
*/10 * * * * ~/.shellrc/bin/scripts/checkmail
# Доступные обновления системы
* */3 * * * ~/.shellrc/bin/scripts/slacklog > ~/.shellrc/var/log/updates
# Удаление файлов, к которым не обращались дольше трёх месяцев
* * */10 * * ~/.shellrc/bin/scripts/delolder 90 ~/.shellrc/var/vim/

123
etc/installrc.sh

@ -0,0 +1,123 @@
#!/bin/bash
#Создан: Пт 23 авг 2013 19:57:29
#Изменён: Вс 25 авг 2013 20:05:18
#Директория для установки
RCDIR=$(pwd)
RCLIST=$RCDIR/rc.$OSTYPE
ROOTDIR=$HOME
#Настройка цветовых кодов
rstc="\033[00m"
yellow="\033[1;33m"
red="\033[1;31m"
green="\033[1;32m"
white="\033[1;1m"
report() {
len=$((30 - $(echo -e -n $2 | wc -m)))
echo -e -n " ${3:-$rstc} $1 $2 $rstc"
eval printf "%-.s-" {1..$len}
}
check() {
report Поиск $(basename $1)
if [ -a $RCDIR/$1 ]; then
echo OK
else
echo -e "$red ФАЙЛ НАСТРОЕК НЕ СУЩЕСТВУЕТ: $RCDIR/$1 $rstc" >&2
fi
}
backup() {
report Сохранение $(basename $filename) $yellow
date=$(\date "+%Y.%m.%e_%H.%M")
\mv "$link"{,.$date} && \
echo -e "${green}Резервная копия: $link.$date ${rstc}"
}
dotfile() {
if [[ "$(dirname $1)" == $ROOTDIR ]]; then
echo "$(dirname $1)/.$(basename $1)"
else
echo $1
fi
}
#Создание ссылки на конфигурационный файл
mklink() {
SRC=$1
DST=$2
if [ -a $RCDIR/$SRC ]; then
filename=$(basename $SRC)
report Установка $filename
link=$(dotfile "$DST/${filename//\.$(uname -i)}")
if [ -a $link ]; then
if [ -L $link ]; then
ref=$(readlink $link)
if [ $ref == $RCDIR/$SRC ]; then
echo -e "Установка не требуется"
return
else
echo -e "$redНайденная ссылка указывает на другой файл: $ref$rstc"
fi
else
echo -e "$redНайден конфигурационный файл$rstc"
fi
backup $link && \
mklink $SRC $DST
else
ln -s $RCDIR/$SRC $(dotfile $DST/${filename//\.$(uname -i)}) 2>&- && \
echo -e "${green}OK${rstc}"
fi
else
echo -e "$red ФАЙЛ НАСТРОЕК НЕ СУЩЕСТВУЕТ: $RCDIR/$SRC $rstc" >&2
fi
}
rmlink() {
FILE=$(basename $1)
LINK=$(dotfile $2/${FILE//\.$(uname -i)})
if [[ ( -a $LINK ) && (-L $LINK)]]; then
report Удаление $FILE $red
\rm "$LINK" && echo -e "${green}OK${rstc}" || echo -e "Ошибка удаления"
fi
}
installrc() {
while read line; do
if [[ "$line" =~ ^\s*\+\s*.*$ ]]; then
eval $(echo -e "$line" | sed 's/^+/mklink /')
elif [[ "$line" =~ ^\s*-\s*.*$ ]]; then
# Не устанавливать файл
eval $(echo -e "$line" | sed 's/^-/rmlink /')
elif [[ ("$line" =~ ^\#.*) || ("$line" =~ ^\s*$) ]]; then
# Вывод комментариев и пустых строк
echo -e "${white}$line${rstc}" | tr '#' ' '
else
# Выполнение строки
eval $line
fi
done < $1
}
case "$1" in
--install-all) alias rmlink=mklink;;
--uninstall-all) alias mklink=rmlink;;
--check-rc-files) alias mklink=check; alias rmlink=check;;
*) : ;;
esac
installrc $RCLIST

17
etc/mail/checkmail

@ -0,0 +1,17 @@
#!/bin/bash
#
# Изменён: Пн 26 авг 2013 18:53:37
#
#Проверка почты с помощью fetchmail
#Количество непрочитанных сообщений записывается в mail/new
/usr/bin/awk -v LOG=~/.shellrc/var/mail/new '
/^[0-9]+/ {
total += $1
}
END {
print total > LOG
}' <(/usr/bin/fetchmail -a -f ~/.shellrc/etc/mail/fetchmail/fetchmailrc) ~/.shellrc/var/mail/new

14
etc/mail/mailcap/mailcap

@ -0,0 +1,14 @@
# mailcap
#
# Изменён: Вс 25 авг 2013 01:04:07
#
#Настройка отображений различных типов файлов
# text/html; w3m -I %{charset} -dump '%s'; copiousoutput; description = HTML Text; nametemplate=%s.html
#text/html; lynx -dump '%s'; copiousoutput; description = HTML Text; nametemplate=%s.html
text/html; lynx -dump -force_html '%s'; copiousoutput; description = HTML Text; nametemplate=%s.html
image/*; geeqie '%s'
application/*; xdg-open '%s'

29
etc/mail/mutt/colors.mutt

@ -0,0 +1,29 @@
#Изменён: Сб 24 авг 2013 20:10:04
#Цветовая гамма
color hdrdefault red default
color quoted brightblue default
color signature red default
color indicator blue green
color error brightred default
color status yellow blue
color tree magenta default
color tilde magenta default
color message brightcyan default
color markers brightcyan default
color attachment brightmagenta default
color search default green
#Подсветка ключевых слов
color header brightred default ^(From|To|Cc|Reply-To|Subject):
color body blue default "(ftp|https?)://[^ ]+"
color body magenta default [-a-z_0-9.+]+@[-a-z_0-9.]+
color underline brightgreen default
#Выделение отмеченных сообщений
color index black white "~N !~T !~F !~p !~P"
color index black cyan "~T !~F !~p !~P"
color index red default "~F !~p !~P"
#emails
color body brightmagenta default "((@(([0-9a-z-]+\\.)*[0-9a-z-]+\\.?|#[0-9]+|\\[[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\]),)*@(([0-9a-z-]+\\.)*[0-9a-z-]+\\.?|#[0-9]+|\\[[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\.[0-9]?[0-9]?[0-9]\\]):)?[0-9a-z_.+%$-]+@(([0-9a-z-]+\\.)*[0-9a-z-]+\\.?|#[0-9]+|\\[[0-2]?[0-9]?[0-9]\\.[0-2]?[0-9]?[0-9]\\.[0-2]?[0-9]?[0-9]\\.[0-2]?[0-9]?[0-9]\\])"

13
etc/mail/mutt/header.mutt

@ -0,0 +1,13 @@
#Изменен: Сб 24 авг 2013 20:08:11
#Сброс настроек
ignore *
#Отображаемые поля
unignore From:
unignore To:
unignore Subject:
unignore Date:
#Порядок полей
hdr_order Subject: From: To: Date:

7
etc/mail/mutt/keys.mutt

@ -0,0 +1,7 @@
#Изменён: Сб 24 авг 2013 20:09:48
#Получение почты
macro index G "!fetchmail -a -f $SHELLRC/etc/mail/fetchmail/fetchmailrc"
macro pager G "!fetchmail -a -f $SHELLRC/etc/mail/fetchmail/fetchmailrc"
macro generic G "!fetchmail -a -f $SHELLRC/etc/mail/fetchmail/fetchmailrc"

37
etc/mail/mutt/muttrc

@ -0,0 +1,37 @@
# muttrc
#
# Изменён: Вс 25 авг 2013 01:04:32
#
#Подключение конфигурационных файлов
source "$SHELLRC/etc/mail/mutt/colors.mutt"
source "$SHELLRC/etc/mail/mutt/keys.mutt"
source "$SHELLRC/etc/mail/mutt/header.mutt"
source "$SHELLRC/etc/mail/mutt/boxes.mutt"
#Автоматический просмотр html
auto_view text/html
#Кириллизация
#set allow_8bit=yes
#set ascii_chars=yes
set charset="UTF-8"
set send_charset="us-ascii:iso-8859-1:utf-8"
set locale=ru_RU.UTF-8
#Отключение звукового сигнала
set beep=no
#Внешний вид просмотрщика ящика
set index_format="%4C %Z %{%b %d} %-15.15F %s"
set to_chars=" TCF"
set sort=threads
#Выделение цитат
set quote_regexp="^([ \t[A-Za-z]*]*[>+])+"
set pager_context=1
set pager_index_lines=10
set sort_browser=reverse-size

2235
etc/mail/sendemail

File diff suppressed because it is too large Load Diff

59
etc/media/mpd/mpd.conf

@ -0,0 +1,59 @@
# mpd.conf
#
# Изменён: Пн 26 авг 2013 18:54:15
#
#Директория с музыкой
music_directory "/media/2TB/Музыка/"
#Файл базы данных композиций
db_file "~/.shellrc/var/mpd/mpd.db"
#Файл журнала
log_file "~/.shellrc/var/log/mpd.log"
#Файл ошибок
#error_file "~/.shellrc/var/log/mpd.err"
#Файл PID
pid_file "~/.shellrc/var/mpd/mpd.pid"
#Файл сохранения состояния
state_file "~/.shellrc/var/mpd/mpd.state"
#Адрес сервера
bind_to_address "localhost"
#Порт
port "6600"
#Настройка звука
audio_output {
type "alsa"
name "Sound Card"
options "dev=dmixer"
device "plug:dmix"
}
#audio_output {
# type "jack"
# name "Sound Card"
#}
# audio_output {
# type "httpd"
# name "MPD"
# encoder "lame"
# port "8000"
# bitrate "128"
# }
#Системная кодировка
filesystem_charset "UTF-8"
#Кодировка метаданных
id3v1_encoding "UTF-8"
#Записываемые поля в БД
metadata_to_use "artist,track,title,date,album,genre,comment"

86
etc/media/ncmpcpp/config

@ -0,0 +1,86 @@
# ncmpcpp
#
# Изменён: Вс 25 авг 2013 01:08:52
#
#Общие настройки#{{{
mpd_music_dir = "/media/2TB/Музыка/"
mpd_connection_timeout = "5"
mpd_crossfade_time = "0"
#Задержка между песнями
playlist_disable_highlight_delay = "0"
#}}}
#Формат плейлиста#{{{
song_list_format = "{$5(%l)$9 }{%t}{%a - %y-%b}"
song_library_format = "{%n - }{%t}"
media_library_album_format = "{%a: }{%y - }%b"
tag_editor_album_format = "{(%y) }%b"
browser_playlist_prefix = "$7playlist$9 "
selected_item_prefix = "$5"
selected_item_suffix = "$9"
song_window_title_format = "{%a - %b}{%t}|{%f}"
song_columns_list_format = "(17)[green]{a} (3)[blue]{n} (24)[blue]{t} (5)[green]{y} (22)[green]{b} (23)[blue]{g} (4)[green]{C} (6)[blue]{l}"
alternative_header_first_line_format = "{%t}"
alternative_header_second_line_format = "$7{%a} - $5{%b} $3{(%y)}"
#}}}
#Настройки интерфейса#{{{
user_interface = "alternative"
playlist_display_mode = "columns"
browser_display_mode = "columns"
search_engine_display_mode = "columns" #(classic/columns)
incremental_seeking = "yes"
seek_time = "1"
autocenter_mode = "yes"
media_library_left_column = "g"
ignore_leading_the = "yes"
lyrics_database = "1"
repeat_one_mode = "no"
default_place_to_search_in = "database"
default_find_mode = "wrapped"
default_space_mode = "add"
default_tag_editor_pattern = "%n - %t"
header_visibility = "yes"
header_text_scrolling = "yes"
cyclic_scrolling = "yes"
statusbar_visibility = "yes"
fancy_scrolling = "yes"
follow_now_playing_lyrics = "no"
ncmpc_like_songs_adding = "yes"
display_screens_numbers_on_start = "no"
user_interface = "alternative"
progressbar_look = "▬▶"
jump_to_now_playing_song_at_start = "yes"
display_volume_level = "yes"
#}}}
#Цветовая схема#{{{
colors_enabled = "yes"
empty_tag_color = "green"
header_window_color = "green"
volume_color = "green"
state_line_color = "blue"
state_flags_color = "blue"
main_window_color = "blue"
color1 = "blue"
color2 = "red"
main_window_highlight_color = "red"
progressbar_color = "blue"
statusbar_color = "green"
active_column_color = "green"
window_border_color = "green"
active_window_border = "magenta"
active_window_border = "red"
alternative_ui_separator_color = "blue"
#}}}

34
etc/net/rtorrent/rtorrent.rc

@ -0,0 +1,34 @@
#
# Изменён: Сб 24 авг 2013 22:44:05
#
#Настройки RTorrent
port_range = 40890-40890; #Используемый порт
port_random = no; #Не использовать случайный порт
dht = auto; #Использовать dht
dht_port = 6881; #Порт dht
encryption = allow_incoming, \
enable_retry, \
prefer_plaintext; #Шифрование
use_udp_trackers = no; #Не использовать udp
min_peers = 1; #Минимальное количество пиров
max_peers = 1000; #Максимальное количество пиров
download_rate = 0; #Максимальная скорость загрузки
upload_rate = 0; #Минимальная скорость загрузки
session_save = yes; #Сохранять сессии
#umask = 002; #Права на создаваемые файлы
check_hash = yes; #Проверять загруженные данные
close_low_diskspace = 200; #Выключать закачку при <200M
http_proxy=
directory = ~/Downloads/TORRENTS/
session = ~/.shellrc/var/rtorrent/sessions/
#Останавливать раздачу удаленных файлов
schedule = untied_directory,60,60,close_untied=

44
etc/rc.cygwin

@ -0,0 +1,44 @@
# ---------------------------------------------------------------
# [ CYGWIN ]
# ---------------------------------------------------------------
export CYGWIN=winsymlinks
# [ Shell ]
+ shell/bash/bash_profile ~
+ shell/bash/bashrc ~
- shell/guile/guile ~
- shell/tcl/tclshrc ~
- shell/tcl/wishrc ~
- shell/screen/screenrc ~
# [ X.org ]
- X/Xdefaults ~
# [ Net ]
- net/snownews ~
- mail/mailcap/mailcap ~
- mail/procmail/procmailrc ~
# [ Soft ]
- soft/bar/barrc ~
+ soft/ctags/ctags ~
- soft/htop ~/.config
- soft/mc ~/.config
+ soft/vim/vim ~
+ soft/vim/vimrc ~
- soft/vimperator ~
- soft/vimperator/vimperatorrc ~
+ soft/git/gitconfig ~
+ soft/git/gitk ~
# [ Cygwin ]
+ soft/cygwin/minttyrc ~
: ---------------------------------------------------------------

52
etc/rc.linux-gnu

@ -0,0 +1,52 @@
# ---------------------------------------------------------------
# [ GNU/LINUX ]
# ---------------------------------------------------------------
# [ Shell ]
+ shell/bash/bash_profile ~
+ shell/bash/bashrc ~
+ shell/guile/guile ~
+ shell/tcl/tclshrc ~
+ shell/tcl/wishrc ~
- shell/screen/screenrc ~
# [ X.org ]
+ X/Xdefaults ~
+ X/xinitrc.$(uname -i) ~
+ wm/gtk/gtkrc-2.0 ~
+ wm/gtk/gtk-bookmarks ~
+ wm/musca/musca_start.$(uname -i) ~
+ wm/fonts/fonts.conf ~
# [ Net ]
+ net/rtorrent/rtorrent.rc ~
+ net/snownews ~
+ mail/mailcap/mailcap ~
+ mail/procmail/procmailrc ~
# [ Soft ]
+ media/ncmpcpp ~
+ media/scmpc ~
- soft/bar/barrc ~
+ soft/conky/conkyrc.$(uname -i) ~
+ soft/ctags/ctags ~
+ soft/htop ~/.config
+ soft/mc ~/.config
+ soft/vim/vim ~
+ soft/vim/vimrc ~
+ soft/vimperator ~
+ soft/vimperator/vimperatorrc ~
+ soft/git/gitconfig ~
+ soft/git/gitk ~
: ---------------------------------------------------------------
mkdir -v ../var/{shell,log,mpd,scmpc,vim}
mkdir -v ../var/vim/{backup,undo,mru,swp,view,yankring}
: ---------------------------------------------------------------

166
etc/shell/bash/DIR_COLORS

@ -0,0 +1,166 @@
# Configuration file for dircolors, a utility to help you set the
# LS_COLORS environment variable used by GNU ls with the --color option.
# The keywords COLOR, OPTIONS, and EIGHTBIT (honored by the
# slackware version of dircolors) are recognized but ignored.
# (see the scripts in /etc/profile.d/coreutils-dircolors.* to change default
# options in the Slackware aliases)
# Below, there should be one TERM entry for each termtype that is colorizable
TERM linux
TERM linux-c
TERM mach-color
TERM console
TERM con132x25
TERM con132x30
TERM con132x43
TERM con132x60
TERM con80x25
TERM con80x28
TERM con80x30
TERM con80x43
TERM con80x50
TERM con80x60
TERM cygwin
TERM dtterm
TERM putty
TERM xterm
TERM xterm-color
TERM xterm-debian
TERM rxvt
TERM screen
TERM screen-bce
TERM screen-w
TERM vt100
TERM Eterm
# Below are the color init strings for the basic file types. A color init
# string consists of one or more of the following numeric codes:
# Attribute codes:
# 00=none 01=bold 04=underscore 05=blink 07=reverse 08=concealed
# Text color codes:
# 30=black 31=red 32=green 33=yellow 34=blue 35=magenta 36=cyan 37=white
# Background color codes:
# 40=black 41=red 42=green 43=yellow 44=blue 45=magenta 46=cyan 47=white
NORMAL 00 # global default, although everything should be something.
FILE 00 # normal file
DIR 01;34 # directory
LINK 01;36 # symbolic link. (If you set this to 'target' instead of a
# numerical value, the color is as for the file pointed to.)
FIFO 40;33 # pipe
SOCK 01;35 # socket
DOOR 01;35 # door
BLK 40;33;01 # block device driver
CHR 40;33;01 # character device driver
ORPHAN 40;31;01 # symlink to nonexistent file
SETUID 37;41 # file that is setuid (u+s)
SETGID 30;43 # file that is setgid (g+s)
STICKY_OTHER_WRITABLE 30;42 # dir that is sticky and other-writable (+t,o+w)
OTHER_WRITABLE 34;42 # dir that is other-writable (o+w) and not sticky
STICKY 37;44 # dir with the sticky bit set (+t) and not other-writable
EXEC 01;32 # This is for files with execute permission:
# List any file extensions like '.gz' or '.tar' that you would like ls
# to colorize below. Put the extension, a space, and the color init string.
# (and any comments you want to add after a '#')
# DOS-style executables (bright green)
.bat 01;32
.BAT 01;32
.btm 01;32
.BTM 01;32
.cmd 01;32
.CMD 01;32
.com 01;32
.COM 01;32
.dll 01;32
.DLL 01;32
.exe 01;32
.EXE 01;32
# archives or compressed (bright red)
.arj 01;31
.bz2 01;31
.deb 01;31
.gz 01;31
.lzh 01;31
.rar 01;31
.RAR 01;31
.rpm 01;31
.tar 01;31
.taz 01;31
.tb2 01;31
.tbz2 01;31
.tbz 01;31
.tgz 01;31
.tz2 01;31
.z 01;31
.Z 01;31
.zip 01;31
.ZIP 01;31
.zoo 01;31
# multimedia (video/image/sound) file formats
.asf 01;35
.ASF 01;35
.avi 01;35
.AVI 01;35
.bmp 01;35
.BMP 01;35
.flac 01;35
.FLAC 01;35
.gif 01;35
.GIF 01;35
.jpg 01;35
.JPG 01;35
.jpeg 01;35
.JPEG 01;35
.m2a 01;35
.M2A 01;35
.m2v 01;35
.M2V 01;35
.m4a 01;35
.M4A 01;35
.m4p 01;35
.M4P 01;35
.m4v 01;35
.M4V 01;35
.mov 01;35
.MOV 01;35
.mp3 01;35
.MP3 01;35
.mpc 01;35
.MPC 01;35
.mpeg 01;35
.MPEG 01;35
.mpg 01;35
.MPG 01;35
.ogg 01;35
.OGG 01;35
.pbm 01;35
.pgm 01;35
.png 01;35
.PNG 01;35
.ppm 01;35
.ram 01;35
.RAM 01;35
.rm 01;35
.RM 01;35
.tga 01;35
.TGA 01;35
.tif 01;35
.TIF 01;35
.tiff 01;35
.TIFF 01;35
.wav 01;35
.WAV 01;35
.wma 01;35
.WMA 01;35
.wmv 01;35
.WMV 01;35
.xbm 01;35
.xcf 01;35
.xpm 01;35
.xwd 01;35
.XWD 01;35

466
etc/shell/bash/aliases

@ -0,0 +1,466 @@
#!/bin/bash ####################################################################
#
# Изменён: Вс 25 авг 2013 03:55:58
#
################################################################################
#{{{ Псевдонимы
################################################################################
alias ~='cd ~' #noindex
alias ..='cd ..' #noindex
alias .-='cd -' #noindex
alias pd="pushd" #noindex
alias po="popd" #noindex
#- Удаление, перемещение и копирование с подтверждением
alias mv='mv -i -v' #noindex
alias cp='cp -i -v -r' #noindex
alias rm="rm -i -v" #noindex
alias rmdir="rmdir -v" #noindex
#- Алиасы для стандартных команд
alias gcc="gcc -Os -Wextra -Wall" #noindex
alias g++="g++ -Os -Wall" #noindex
alias echo="echo -e" #noindex
alias less="less -R" #noindex
alias ls='ls -lGhpX --color=always --group-directories-first -v' #noindex
alias lss='\ls --format=single-column' #noindex
alias nl="nl -b a" #noindex
alias su='su -m' #noindex
alias df='df -hT' #noindex
alias du='du -hs' #noindex
alias free="free -m" #noindex
alias wget='wget -c -T 5' #noindex
alias ps="ps -aux" #noindex
alias date="command date '+%A, %B %e %Y %H:%M:%S'" #noindex
alias grep='grep -E -i' #noindex
alias tree="tree -CAFa" #noindex
alias sudo="su -c "$*"" #noindex
alias cal="cal -m" #noindex
alias crontab_i="crontab $CRON" #noindex
alias crontab_e="$EDITOR $CRON" #noindex
alias dmenu="dmenu -fn '-*-fixed-*-*-*-*-15-*-*-*-*-*-*-*'" #noindex
alias pstree="pstree -U -h" #noindex
alias mkdir="mkdir -p -v" #noindex
alias j="jobs -l" #noindex
alias dirs="dirs -v" #noindex
alias vcat=vimcat #noindex
alias src=vimcat #noindex
#- Замена стандартных путей для конфигурационных файлов
alias mpd="mpd $SHELLRC/etc/media/mpd/mpd.conf" #noindex
alias mpdr="\mpd $SHELLRC/etc/media/mpd/mpd_remote.conf" #noindex
alias mcabber="mcabber -f $SHELLRC/etc/net/mcabber/mcabberrc" #noindex
alias vim="vim -i $SHELLRC/var/vim/viminfo -p $*" #noindex
alias mutt="mutt -F $SHELLRC/etc/mail/mutt/muttrc && echo "0" > $MD/new" #noindex
alias screen="TERM=rxvt-256color screen" #noindex
alias figlet="figlet -f $SHELLRC/etc/soft/figlet/fonts/standard.flf" #noindex
alias cdargs="cdargs -b -f $SHELLRC/etc/soft/cdargs/cdargs -o $SHELLRC/etc/soft/cdargs/cdargsresult" #noindex
alias zathura="nh zathura -c $SHELLRC/etc/soft/zathura/ -d $SHELLRC/etc/soft/zathura/ -p $SHELLRC/etc/soft/zathura/plugins" #noindex
alias z="nh zathura -c $SHELLRC/etc/soft/zathura/ -d $SHELLRC/etc/soft/zathura/ -p $SHELLRC/etc/soft/zathura/plugins" #noindex
alias ooo="nh soffice" #noindex
alias sendemail="sendemail -l $LOGDIR/sendemail" #noindex
if [ $UID -eq 0 ]; then
alias mc="TERM=xterm-256color mc -S modarin256root"
else
alias mc="TERM=xterm-256color mc -S modarin256"
alias htop="htop -u $(whoami)"
fi
#}}} ###########################################################################
#{{{ \033[00m\n\b------<Bash>\n
################################################################################
#- Подсветка текущего дня в календаре
function cal() {
[ -z "$2" ] && command cal | clr `\date +%d` || command cal $*
}
#- Запуск программ без привязки к сессии
nh() {
nohup "$@" &>/dev/null &
}
#- Правка псевдонимов в Vim
alias ealias="$EDITOR $ALIASES" #noindex
#- Перезагрузка конфигов баша
alias reload=". ~/.bashrc"
#- Выход из сеанса
alias :q="exit"
#- Очистка экрана
alias c='clear'
#- ls с цифровым видом прав
alias lls="ls -l | sed 's/--x/1/g; s/-w-/2/g; s/-wx/3/g; s/r--/4/g;
s/r-x/5/g; s/rw-/6/g; s/rwx/7/g; s/---/0/g'"
#- История bash
h() { [ -z "$1" ] && history || history | grep "$1"; }
#Переназначение функции, вызываемой неизвестной командой
command_not_found_handle() { #noindex
if [ -d "$1" ]; then
cd "$1"
else
echo $1 | grep '[фывапролджэйцукенгшщзхъячсмитьбю]' 2>&1 > /dev/null
if [ $? == 0 ]; then
ex="$(echo -n $@ | \
sed "y/йцукенгшщзхъфывапролджэячсмитьбю\.ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ,/qwertyuiop\[\]asdfghjkl;\'zxcvbnm,\.\/QWERTYUIOP\{\}ASDFGHJKL:\"ZXCVBNM<>\?/")"
echo "$red[$@] -> $green[$ex]$rstc"
$ex
else
echo >&2 "$redКоманда ${green}${1}${red} не найдена.$rstc"
fi
fi
}
#- Список функций и псевдонимов
:h() {
printf "$white
-----------------------[ Функции и псевдонимы ]-----------------------$rstc\n"
for file in ${HELPSRC[@]}; {
for i in $(awk '/\w\(\)|^alias|^#\{\{\{ / && !/#noindex/ {print NR"\n"}' $file); {
printf "$blue\t%-17s$rstc%s\n" \
"$(echo $(sed "s/=/ /g; /alias \|()\|#{{{ \| .*/ s///g; "$i"q;d" $file))" \
"$(sed "/#\|}}}/ s///g; "$((--i))"q;d" $file)";
}
}
printf "$white
----------------------------------------------------------------------$rstc\n\n"
}
#- Бэкап настроек
b_back() { tar cvpzf "./Bash_`\date +%d-%m-%Y.%T`".tgz $SHELLRC; }
#- Цветовые коды консоли
colors() {
for ((i = 0; i < 127; i++ )); {
printf "\033[${i}m ${i} \e[0m"
}
echo ""
}
#- Самые используемые команды [-u -- уникальные]
toph() {
case "$1" in
-u) history | cut -d ' ' -f 6- | sort | uniq -c | sort -rn | head -n 30;;
* ) history | awk '{a[$4]++} END {for(i in a) {print a[i] " " i}}' \
| sort -rn | head -n 30 | column -t;;
esac
}
#- Форматированный вывод PATH
path() {
echo $PATH | tr ':' '\n' | nl
}
#-
alias w1="watch -n 1" #noindex
#}}} ###########################################################################
#{{{ \033[00m\n\b------<Мультимедийные_функции>\n
################################################################################
#- Просмотр фильмов в алфавитном порядке
pnext() {
case $1 in
-clear) rm -i ./done.txt ;;
-last) vlc "$(tail -n 1 ./done.txt)" ;;
*) diff -N <(\ls -1 *.avi *.mkv *.mp4 *.flv *.mov 2>&-) done.txt \
| sed "s/< //;2q;d" \
| tee -a ./done.txt | xargs vlc
esac
}
#- Конвертирование аудио в mp3
a2mp3() { lame -b $2 --noreplaygain -q 0 -m s -k -p "$1"; }
#- Лог scmpc/last.fm
lastfmlog() { watch -n 1 "tail $SHELLRC/var/log/scmpc.log"; }
#}}} ###########################################################################
#{{{ \033[00m\n\b------<Сетевые_функции>\n
################################################################################
#- Список открытых портов
alias ports="netstat -lp --inet"
#- Просмотр ARP-таблицы
alias arpt="arp -an | column -t"
#- Информация о сети
netinfo() {
echo -e "$yellow—————— Сетевая информация ——————$rstc"
ifconfig | awk /'Bcast/ {print $3}; /HWaddr/ {print $4,$5}'
lynx -dump http://checkip.dyndns.org:8245/ | sed 's/^ //g; 1q;d'
echo -e "$yellow————————————————————————————————$rstc"
}
#- Отображение заголовка HTML страницы
headers() {
local port=${2:-80}
exec 5<> /dev/tcp/$1/$port
printf "GET / HTTP/1.0\n\n" >&5
cat <&5
exec 5>&-
}
#- Загрузка проекта с github.com
githubdl() {
git clone git://github.com/${1}.git
}
#}}} ###########################################################################
#{{{ \033[00m\n\b------<Работа_с_файлами>\n
################################################################################
#- Vim
alias :e="vim"
# alias c+r="chmod +r"
# alias c+w="chmod +w"
# alias c+x="chmod +x"
# alias c-r="chmod -r"
# alias c-w="chmod -w"
# alias c-x="chmod -x"
#- Переход с поиском выше по дереву директорий
up() {
[[ "$1" == "" ]] && cd .. \
|| cd $(echo $PWD | \grep -o "^.*$1\/" \
|| (echo "$redПуть $1 не найден$rstc" >&2 && echo ".") )
}
#- koi8r -> utf8
alias KU="iconv -c -f koi8r"
#- cp1251 -> utf8
alias CU="iconv -c -f cp1251"
#- utf8 -> koi8r
alias UK="iconv -c -t koi8r"
#- utf8 -> cp1251
alias UC="iconv -c -t cp1251"
#- -> utf8
alias 2U="iconv -c -t utf8"
#- Конвертирование обложки в png
alias cover2png="mv *.jpg cover.jpg; convert cover.jpg cover.png && rm -f cover.jpg"
#- Копирование файлов с прогрессом
alias rsynccopy="rsync --partial --progress --append --rsh=ssh -r -h"
#- Перемещение файлов с прогрессом
alias rsyncmove="rsync --partial --progress --append --rsh=ssh -r -h --remove-sent-files"
#- Вывод колонки текста
alias cln="cut -d ' ' -f"
#- Копирование файла в директорию книг для прочтения
toread() { #noindex
READDIR=/media/MEDIA/Книги/Прочитать/
\cp -v -i "$@" $READDIR
}
lnt() { #noindex
ln -s "$(pwd)/$1" "$HOME/Downloads/TORRENTS/${2:-}"
}
#- Файловое дерево -> html
ls2html() {
\tree --dirsfirst -C -L $1 -H "$(pwd)" \
--charset=utf8 -o $(sed -r "s/\///; s/\//_/g" <(pwd)).html
}
#- Пропуск N строк с начала файла и вывод в консоль
skip () { tail -n $(( $( grep -c . $2)-$1 )) "$2"; }
#- Показ строки файла по номеру
str() { sed ""$1"q;d"; }
#- Создание резервной копии файла
backup() { cp $1{,.$(\date "+%d-%m-%Y.%T").bak}; }
#- Удаление HTML-тэгов из файла ($1)
unhtml() { cat $1 | sed -e :a -e 's/<[^>]*>//g;/</N;//ba'; }
sortf() { #noindex
mkdir -p ./Archives ; mv *{.rar,.tar.*,.bz2,.gz,.tar,.t?z?,.zip,.7z,.tgz} ./Archives
mkdir -p ./Images ; mv *{.jpg,.JPG,.jpeg,.bmp,.gif,.png} ./Images
mkdir -p ./Video ; mv *{.avi,.mpg,.mp4,.dvx,.flv} ./Video
mkdir -p ./Docs ; mv *{.doc,.odt,.pdf,.txt,.rtf} ./Docs
mkdir -p ./Audio ; mv *{.ogg,.mp3,.wav,.m3u,.midi,.mid,.gp?} ./Audio
mkdir -p ./TFiles ; mv *.torrent* ./TFiles
mkdir -p ./Scripts ; mv *{.sh,.py,.rb,.tcl} ./Scripts
mkdir -p ./Wine ; mv *{.exe,.EXE} ./Wine
mkdir -p ./Vim ; mv *{.vim,.vba} ./Vim
} 2>&-
#- mc TORRENTS Music/new
alias mcm="mc $HOME/Downloads/TORRENTS/ /media/2TB/Music/new/"
#- Вывод размера файлов в отсортированном виде
dus() {
\du -smc "$@" | sort -gr | awk '{
if ($1 > 1024) {
printf("%s%10sG","'$red'",sprintf("%.2f",$1/1024))
} else if ($1 > 1) {
printf("%s%10sM","'$yellow'",$1)
} else {
printf("%s%10sM","'$blue'","~"$1)
}
sub($1,"")
print $0,"'$rstc'"
}'
}
#- file -> [X] file
fcheck() {
for i in "$@"; {
if [[ ! "$i" =~ \[X\]\ .* ]]; then
echo -n $i
echo -ne '\000'
echo -n $(echo $(basename "$i") | sed 's/^\[ \] \|^/[X] /')
echo -ne '\000'
fi
} | xargs -0 -n2 mv -v
}
#- file -> [ ] file
fucheck() {
for i in "$@"; {
if [[ ! "$i" =~ \[.\]\ .* ]]; then
echo -n $i
echo -ne '\000'
echo -n "[ ] $i"
echo -ne '\000'
fi
} | xargs -0 -n2 mv -v
}
#- Поиск пути к исполняемому файлу, просмотр кода функций и псевдонимов
which() { #noindex
(alias; declare -f) \
| /usr/bin/which \
--tty-only \
--read-alias \
--read-functions \
--show-tilde \
--show-dot $@
} 2>/dev/null
#- Переход в директорию файла
cdwhich() {
cd $(dirname $(/usr/bin/which $1))
}
#- Редактирование скриптов
dowhich() { #noindex
eval $1 $(/usr/bin/which $2)
}
#- Редактирование скриптов
alias vimwhich="dowhich vim"
alias nlwhich="dowhich nl"
alias catwhich="dowhich cat"
alias vcatwhich="dowhich vcat"
#}}} ###########################################################################
#{{{ \033[00m\n\b------<Администрирование>\n
################################################################################
#- gslapt
alias gslapt="CDPATH='.' su -c gslapt" #noindex
#- Установленные пакеты
alias pkgs="ls /var/log/packages/ | tail -n +2 | nl"
#- Просмотр обновлений системы
alias updates="cat $SHELLRC/var/log/updates"
#- Последние версии ядра
alias kernel="finger @kernel.org"
#- Копирование файла $1 в $SHELLRC/bin/$2
cpbin() {
cp $1 $SHELLRC/bin/$2/
}
#- Перемещение файла $1 в $SHELLRC/bin/$2
mvbin() {
mv $1 $SHELLRC/bin/$2/
}
#- Создание символической ссылки на файл $1 в $SHELLRC/bin/$2
lnbin() {
ln -s $(realpath $1) $SHELLRC/bin/$2/$1
}
#- Генератор паролей
alias passgen='for i in `seq 10`; { </dev/urandom tr -dc A-Za-z0-9_ | head -c8; echo ""; }'
#- UUID носителей
alias uuids="ls /dev/disk/by-uuid/"
#- Монтирование образов
alias mntiso="mount -o loop -t iso9660 $1 $2"
#- Поиск suid-файлов
alias fsuid='find / -perm +6000 -type f -exec ls -ld {} \; | column -t | nl'
#}}} ###########################################################################
#{{{ \033[00m\n\b------<Сборка_и_установка_ПО>\n
################################################################################
#- Запуск шелла perl -MCPAN
alias pcpan='perl -MCPAN -e shell'
#- Создание документации robodoc
robodoc2html() {
mkdir -p ${1:-.}/doc
robodoc --src ${1:-.} --doc ./doc/ --multidoc \
--html \
--charset utf-8 \
--index \
--nosort \
--sections \
--source_line_numbers
# --syntaxcolors
# --nopre \
}
#}}} ###########################################################################
#{{{ \033[00m\n\b------<Управление_сервисами_и_процессами>\n
################################################################################
#- Поиск процесса по имени
alias pgrep="pgrep -l"
#- Завершение процесса по имени
pskill() { kill -9 `pgrep $1`; }
#- Запуск сервиса
start() { su -c "sh $1 start"; }
#- Остановка сервиса
stop() { su -c "sh $1 stop"; }
#- Перезапуск сервиса
restart() { su -c "sh $1 restart"; }
#}}} ###########################################################################
#{{{ \033[00m\n\b------<Математические_функции>\n
################################################################################
#- Консольный калькулятор
calc() { echo "$*" | bc -l; }
#}}} ###########################################################################
#{{{ \033[00m\n\b------<Прочее>\n
################################################################################
#- Проверка правописания по словарю
spell() { echo "$@" | aspell -a | clr $@; }
#- Подсветка выражений
clr() { sed -e "s/$1/`echo -e "\033"`[7;31m&`echo -e "\033"`[1;0m/g"; }
#- Создание git-репозитория с ветками master/stable/experimental
gitnew() {
git init
git add .
git commit -m "Create GIT repository"
git branch stable
git branch experimental
}
#- Дневник
alias ,w,w="vim -c VimwikiMakeDiaryNote" #noindex
#}}} ###########################################################################

150
etc/shell/bash/aliases_cygwin

@ -0,0 +1,150 @@
#!/bin/bash ####################################################################
#
# Создан: Ср 14 авг 2013 12:07:22
# Изменён: Сб 24 авг 2013 12:09:04
#
################################################################################
#{{{ \033[00m\n\b------<Cygwin>\n
################################################################################
#- Добавление пути поиска исполнимых файлов Windows
path++ $INIT_PATH PATH
#- Выполнение команды с помощью cmd.exe
alias winshell="nh cmd.exe /c"
#- Преобразование пути UNIX->Windows
path2win() { #noindex
echo "$@" | sed 's/^\/cygdrive\/\([a-z]\)\//\1:\\/; s/\//\\/g'
}
#- Преобразование пути Windows->UNIX
path2nix() { #noindex
echo "$1" | sed 's/^\(\w\):/\/cygdrive\/\1/; s/\\/\//g'
}
#- Смена рабочей директории
cd_drive() { #noindex
if [[ "$(pwd)" == //cb* ]]; then
cd ./${1/:}\$
else
cd $1
fi
}
#- Подключение к ПК с помощью VNC
vnc() {
if [[ "$1" == [0-9][0-9].[0-9][0-9] ]]; then
host="192.168.$1"
else
host="$1"
fi
winshell "C:\Program Files\RealVNC\VNC Viewer\vncviewer.exe" $host 2>&1 > /dev/null &
}
#- Подключение по RDP (cb/ts/ms/etc)
rdp() {
case "$1" in
cb) host="it-srv-rdp.tkpt.ru";;
ts) host="srv1.ts.tkpt.ru";;
ms) host="srv1.ms.tkpt.ru";;
* ) host="$1";;
esac
nh mstsc.exe /v:$host &
}
#- Вызов оснастки Windows
msc() {
winshell "$1.msc" &
}
#- Вызов компонента Панели управления Windows
cpl() {
winshell "$1.cpl" &
}
#- Проводник Windows
ex() {
explorer.exe $(cygpath -w ${1:-.})
}
#- ПО
alias iexplore="/cygdrive/c/Program\ Files/Internet\ Explorer/iexplore.exe" #noindex
alias firefox="/cygdrive/c/Program\ Files/Mozilla\ Firefox/firefox.exe" #noindex
alias 1c8="/cygdrive/c/Program\ Files/1cv82/common/1cestart.exe" #noindex
alias far='cmd /c start /max "" "%SYSTEMDRIVE%\Program Files\Far Manager\Far.exe"' #noindex
alias mc=far #noindex
#- Открытие страницы vimwiki в браузере
wiki() {
firefox "Z:\\wiki\\${1:-index}.html" &
}
#- Windows: административные утилиты
alias win_all="winshell control admintools &"
#- Windows: просмотр событий
alias win_log="msc eventvwr"
#- Windows: общие ресурсы
alias win_shr="msc fsmgmt"
#- Windows: свойства системы
alias win_sys="cpl sysdm"
#- Windows: установка и удаление программ
alias win_pkg="cpl appwiz"
#- Windows: сетевые подключения
alias win_net="cpl ncpa"
#- Windows: диспетчер устройств
alias win_dev="msc devmgmt"
#- Windows: свойства папки
alias win_dir="control folders"
#- Windows: запуск службы
alias sc_start="sc start"
#- Windows: остановка службы
alias sc_stop="sc stop"
#- Windows: приостановление выполнения службы
alias sc_pause="sc pause"
#- Windows: возобновление выполнения службы
alias sc_continue="sc continue"
#- Журнал обновлений Windows
alias wl_update="nl $(cygpath $SYSTEMROOT/WindowsUpdate.log)"
#- Список выполняемых задач
alias ps="tasklist.exe" #noindex
#- Завершение задачи
alias kill=tskill #noindex
# Смена логического раздела
for drive in $(\df | grep '^[A-Z]:' -o | /usr/bin/sort -u); {
alias $drive="cd_drive $drive"
alias $(echo $drive | tr A-Z a-z)="cd_drive $drive"
}
#}}} ###########################################################################
#{{{ \033[00m\n\b------<TKPT>\n
################################################################################
#- Переход к компьютеру пользователя cb-??-??
cb() {
cd "//cb-$1/"
}
#- Основные сетевые директории tkpt
alias @install="cd //file-srv/install$/" #noindex
alias @gpo="cd //file-srv/install$/GPO/" #noindex
alias @it="cd //file-srv/install$//it/" #noindex
alias @programs="cd //file-srv/programs$/" #noindex
alias @docs="cd //file-srv/docs$/" #noindex
#- Быстрый доступ к ресурсам
alias beeline="iexplore https://uslugi.beeline.ru &" #noindex
alias elastix="firefox https://sip.tkpt.ru/index.php &" #noindex
#- Установленные пакеты
alias pkgs="cygcheck -c -d | tail -n +3 | nl" #noindex
#}}} ###########################################################################
cd ~

9300
etc/shell/bash/bash_completion

File diff suppressed because it is too large Load Diff

113
etc/shell/bash/bash_completion_custom

@ -0,0 +1,113 @@
#!/bin/bash #########################
#
# Изменён: Пт 16 авг 2013 23:03:31
#
#complete <что дополнять> <программа>
complete -A alias {,un}alias
complete -A hostname rsh rcp telnet rlogin r ftp ping disk
complete -A export printenv
complete -A variable export local readonly unset
complete -A enabled builtin
complete -A function function
complete -A user su mail finger
complete -A shopt shopt
complete -A stopped -P '%' bg
complete -A job -P '%' fg jobs disown
complete -A directory mkdir rmdir
complete -A directory -o default cd
complete -F _killall killall pkill pskill
#Сжатые данные
complete -f -o default -X '*.+(zip|ZIP)' zip pk
complete -f -o default -X '!*.+(zip|ZIP)' unzip ext
complete -f -o default -X '*.+(z|Z)' compress pk
complete -f -o default -X '!*.+(z|Z)' uncompress ext
complete -f -o default -X '*.+(gz|GZ)' gzip pk
complete -f -o default -X '!*.+(gz|GZ)' gunzip ext
complete -f -o default -X '*.+(bz2|BZ2)' bzip2 pk
complete -f -o default -X '!*.+(bz2|BZ2)' bunzip2 ext
complete -f -o default -X '!*.+(rar|RAR|zip|ZIP|z|Z|gz\
|GZ|bz2|BZ2|tgz|tbz2)' ext
#Документы
complete -f -o default -X '!*.+(ps|PS)' zathura z
complete -f -o default -X '!*.+(dvi|DVI)' okular
complete -f -o default -X '!*.+(pdf|PDF)' zathura z
complete -f -o default -X '!*.texi*' makeinfo texi2dvi texi2pdf
complete -f -o default -X '!*.tex' kile tex latex slitex
complete -f -o default -X '!*.+(htm*|HTM*)' konqueror firefox lynx html2ps
complete -f -o default -X '!*.+(doc|DOC|xls|\
XLS|ppt|PPT|sx?|SX?|csv|CSV|od?|OD?|ott|OTT)' soffice
#Мультимедийные файлы
complete -f -o default -X '!*.+(gif|GIF|jp*g|\
JP*G|bmp|BMP|xpm|XPM|png|PNG)' xv gimp geeqie
complete -f -o default -X '!*.+(mp3|MP3)' amarok mpg123 mpg321
complete -f -o default -X '!*.+(ogg|OGG)' amarok ogg123
complete -f -o default -X '!*.@(mp[23]|MP[23]|\
ogg|OGG|wav|WAV|pls|m3u|xm|mod|s[3t]m|it|mtm|ult|flac)' amarok
complete -f -o default -X '!*.@(mp?(e)g|MP?(E)G|\
wma|avi|AVI|asf|vob|VOB|bin|dat|vcd|ps|pes|fli|viv|\
rm|ram|yuv|mov|MOV|qt|QT|wmv|mp3|MP3|ogg|OGG|ogm|OGM|\
mp4|MP4|wav|WAV|asx|ASX)' smplayer mplayer xine vlc
complete -f -o default -X '!*.+(gpt|gp3|gp4|gp5)' tuxguitar
#Программирование
complete -f -o default -X '!*.tcl' tclsh wish nagelfar
complete -f -o default -X '!*.pl' perl perl5
complete -f -o default -X '!*.sh' sh bash
complete -f -o default -X '!*.+(c|cpp)' gcc g++ mpp
#Запуск и остановка сервисов
_rcd () {
COMPREPLY=($(\ls /etc/rc.d/rc.$(echo $2 | \
sed 's;/etc/rc.d/rc\.;;g')* 2> /dev/null))
}
complete -F _rcd start stop restart
_local-bins () {
if [[ $2 == "" ]]; then
COMPREPLY=($(\ls $SHELLRC/bin/scripts/ $SHELLRC/bin/dmenu \
| sed '/^\/.*:$/d; /^\s*$/d' 2> /dev/null))
else
COMPREPLY=($(\ls $SHELLRC/bin/scripts/ $SHELLRC/bin/dmenu \
| sed '/^\/.*:$/d; /^\s*$/d' | grep $2 2> /dev/null))
fi
}
complete -F _local-bins vimwhich catwhich nlwhich
complete -c command cdwhich
# Функция, т.к. grep позволяет дополнять подстроку в любом регистре
_updirs() {
if [[ $2 == "" ]]; then
COMPREPLY=($(echo "$PWD" | tr '/' "\n"))
else
COMPREPLY=($(echo "$PWD" | tr '/' "\n" | grep -i "$2" 2> /dev/null))
fi
}
complete -F _updirs up
#Дополнение пакетов
_slapt-r () {
if [[ $2 == "" ]]; then
COMPREPLY=($(slapt-get --available | cut -d ' ' -f 1))
else
COMPREPLY=($(slapt-get --available | cut -d ' ' -f 1 | grep $2))
fi
}
complete -F _slapt-r slapt-get
[ -f $BASHRC/bash_completion_surfraw ] && . $BASHRC/bash_completion_surfraw

83
etc/shell/bash/bash_completion_cygwin

@ -0,0 +1,83 @@
#!/bin/bash ####################################################################
#
# Создан: Ср 14 авг 2013 12:07:22
# Изменён: Сб 24 авг 2013 12:15:37
#
################################################################################
complete -W "accounts computer config continue file \
group help helpmsg localgroup name pause print \
send session share start statistics stop time use user view" \
net
complete -W "boot config continue control create delete description \
enumdepend failure failureflag getdisplayname getkeyname \
interrogate lock pause qc qdescription qfailure query \
queryex querylock sdset sdshow start stop" \
sc
complete -W 'access appwiz desk directx hdwwiz intl \
inetcpl joy mmsys ncpa netsetup odbccp32 \
powercfg timedate teltphon wuaucpl wscui' \
cpl
complete -W 'compmgmt gpedit dsa ciadv certmgr devmgmt \
dfrg diskmgmt eventvwr fsmgmt ntmsmgr ntmsoprq \
perfmon lusrmgr rsop services secpol wmimgmt' \
msc
_rdp () {
if [[ $2 == "" ]]; then
COMPREPLY=($(echo "cb\nts\nms\n$(qappsrv | tail -n +3 | tr ' ' ' ')"))
else
COMPREPLY=($(echo "cb\nts\nms\n$(qappsrv | tail -n +3 | tr ' ' ' ')" | grep -i $2))
fi
}
complete -F _rdp rdp
_wiki() {
wikidir=/cygdrive/z/wiki
if [[ $2 == "" ]]; then
COMPREPLY=($(\ls -1 ${wikidir}/*.html | sed 's/^.*\/\(.*\)\.html$/\1/'))
else
COMPREPLY=($(\ls -1 ${wikidir}/*.html | sed 's/^.*\/\(.*\)\.html$/\1/' | grep "^$2"))
fi
}
complete -F _wiki wiki
_vnc() {
if [[ $2 == "" ]]; then
COMPREPLY=($(net view | grep -o '^\\\\[^[:space:]]*' | sed 's/^\\\\//'))
else
COMPREPLY=($(net view | grep -o '^\\\\[^[:space:]]*' | sed 's/^\\\\//' | grep "$2"))
fi
}
complete -F _vnc vnc
_sc_start() {
if [[ $2 == "" ]]; then
COMPREPLY=($(sc query type= service state= inactive | grep SERVICE_NAME | cut -d ':' -f 2- ))
else
COMPREPLY=($(sc query type= service state= inactive | grep SERVICE_NAME | cut -d ':' -f 2- | grep $2 ))
fi
}
complete -F _sc_start sc_start
_sc_set_status() {
if [[ $2 == "" ]]; then
COMPREPLY=($(sc query type= service state= all | grep SERVICE_NAME | cut -d ':' -f 2- ))
else
COMPREPLY=($(sc query type= service state= all | grep SERVICE_NAME | cut -d ':' -f 2- | grep $2 ))
fi
}
complete -F _sc_set_status sc_stop sc_pause sc_continue

13
etc/shell/bash/bash_profile

@ -0,0 +1,13 @@
#!/bin/bash
#.bash_profile
#color
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# BASH_ENV=$HOME/.bashrc
# export BASH_ENV
# export PATH="~/.cw/df:$PATH"

298
etc/shell/bash/bashrc

@ -0,0 +1,298 @@
#!/bin/bash ####################################################################
#
# Изменён: Вс 25 авг 2013 03:27:22
#
################################################################################
################################ Общие настройки ###############################
# {{{ Переменные окружения
################################################################################
export BASH_ENV="$HOME/.bashrc" #Файл настроек интерпретатора
export SHELLRC="$HOME/.shellrc" #Путь к директории настроек
export BASHRC="$SHELLRC/etc/shell/bash" #Путь к настройкам bash
export INPUTRC="$BASHRC/inputrc" #Файл inputrc
export TERM=xterm
export GUILE_HISTORY="$SHELLRC/var/shell/guile.history" #История guile
export GUILE_AUTO_COMPILE=0 #Запрет на автокомпиляцию
export PAGER=less #Страничный просмотрщик
export VISUAL=vim #Стандартный редактор
export EDITOR=vim #Стандартный редактор
export HELPSRC=()
#Не очищать экран при выходе.
#Игнорировать регистр при поиске.
#Подсвечивать новую строку при пролистывании экрана.
#Показывать результат поиска в центре.
export LESS="-X --ignore-case -w --jump-target=.5"
export LESSOPEN="|/usr/bin/lesspipe.sh %s"
export LESSHISTFILE=/dev/null
export LESSCOLOR=yes
export LC_ALL=ru_RU.UTF-8 #Системная локаль
export PRINTER=HP_LaserJet_P1005 #Принтер по умолчанию
export IGNOREEOF=3 #Закрывать оболочку по 3м C-d
export LOGDIR=$SHELLRC/var/log #Директория журналов скриптов
export TODO=$SHELLRC/etc/soft/calcurse/todo #Список дел
export MD=$SHELLRC/var/mail/ #Директория почты
export CRON=$SHELLRC/etc/cron/crontab #Задания cron
export TMP="/tmp" #Директория временных файлов
#Настройки cw
export NOCOLOR_PIPE=1
#export CW_INVERT=1
#Настройки компилятора
export CFLAGS="-march=k8 -Os -pipe"
export MAKEOPTS="-j 3"
if [[ $OS != Windows* ]]; then
#Версия gcc
GCCV=$(\gcc --version | head -n 1 | cut -d ' ' -f 3)
export C_INCLUDE=/usr/lib/gcc/i486-slackware-linux/$GCCV/include-fixed/
export C_INCLUDE_PATH=/usr/libexec/gcc/i486-slackware-linux/$GCCV/:/usr/lib/gcc/i486-slackware-linux/$GCCV/include-fixed/:/usr/lib/gcc/i486-slackware-linux/$GCCV/include
export CPLUS_INCLUDE_PATH=/usr/lib/gcc/i486-slackware-linux/$GCCV/include-fixed/
export LD_LIBRARY_PATH=/usr/libexec/gcc/i486-slackware-linux/$GCCV/
OOoPath="$HOME/Programs/Soft/OOo/openoffice.org3/program/"
fi
#Формат времени, выводимый командой time
# real 0m32.155s
# user 0m0.357s
# sys 0m0.343s
# CPU 2.17%
#
export TIMEFORMAT=$'real\t%3lR\nuser\t%3lU\nsys\t%3lS\nCPU\t%P%'
#Настройка TOR + Privoxy
export http_proxy=
export HTTP_PROXY=
# http_proxy=http://127.0.0.1:8118/
# proxy_address=$http_proxy
# HTTP_PROXY=$http_proxy
# export http_proxy HTTP_PROXY proxy_address
export SBCL_HOME=/usr/lib/sbcl
# }}} ##########################################################################
# {{{ Опции подсветки
################################################################################
#Настройка цветовых кодов
rstc="\033[00m"
yellow="\033[1;33m"
blue="\033[1;36m"
red="\033[1;31m"
green="\033[1;32m"
grey="\033[0;37m"
white="\033[1;1m"
#Подсветка результатов grep
export GREP_OPTIONS='--color=auto'
export GREP_COLOR='1;31'
#Цвета ls
export LS_COLORS="\
no=00:fi=00:di=01;34:ln=01;36:\
pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:ex=01;32:\
*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:\
*.lzh=01;31:*.zip=01;31:*.7z=01;31:*.rar=01;31:*.z=01;31:*.Z=01;31:\
*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:\
*.jpg=00;35:*.jpeg=00;35:*.JPG=00;35:*.png=00;35:*.gif=00;35:*.bmp=00;35:\
*.ppm=00;35:*.tga=00;35:*.xbm=00;35:*.xpm=00;35:*.tif=00;35:*.png=00;35:\
*.mpg=01;35:*.avi=01;35:*.fli=01;35:*.vob=01;35:*.mp4=01;35:*.wmv=01;35:\
*.txt=00;33:*.doc=00;33:*.odt=00;33:*.rtf=00;33:*.pdf=00;33:*.djvu=00;33:\
*.mp3=01;36:*.wav=01;36:*.ape=01;36:*.ogg=01;36:*.wma=01;36:*.midi=01;36:\
*.flac=01;36:*.gpt=01;38:*.gp2=01;38:*.gp3=01;38:*.gp4=01;38:\
*.c=00;04:*.cpp=00;04:*.pas=00;04:*.ui=00;04:*.sh=00;04:*.py=00;04:*.rb=00;04:\
*.gl=01;35:*.dl=01;35:"
#Настройка подсветки мануалов
export LESS_TERMCAP_mb=$'\E[01;31m'
export LESS_TERMCAP_md=$'\E[01;31m'
export LESS_TERMCAP_me=$'\E[0m'
export LESS_TERMCAP_se=$'\E[0m'
export LESS_TERMCAP_so=$'\E[01;44;33m'
export LESS_TERMCAP_ue=$'\E[0m'
export LESS_TERMCAP_us=$'\E[01;32m'
# }}} ##########################################################################
# {{{ Настройка путей
################################################################################
# removes duplicate paths
# NOTE: symlinks aren't dereferenced (e.g., using `readlink`) as they may
# exist for compatibility reasons
#- Удаление директории(й) из PATH
path-- () {
local IFS=':'
local newpath
local i
for i in ${!2}; do
if [ "$i" != "$1" ]; then
newpath=${newpath:+$newpath:}$i
fi
done
export $2="$newpath"
}
#- Добавление директории(й) в PATH. path++ d:i:r:s PATH [before]
path++ () {
local IFS=':'
local oldpath
local i
for i in $1; do
if [ -d "$i" ]; then
if [ -z "${!2:-}" ]; then
export $2=""
fi
path-- $i $2
if [ "${3:-}" = "before" ]; then
export $2="$i:${!2:+${!2}}"
else
export $2="${!2:+${!2}:}$i"
fi
else
echo "$i is not a directory" >&2
fi
done
}
INIT_PATH=$PATH
PATH="."
#- TODO: Slackware
if [[ $OS != Windows* ]]; then
path++ $SHELLRC/etc/shell/cw/def PATH
path++ $SHELLRC/bin/dmenu:$SHELLRC/bin/musca PATH
path++ /usr/lib/qt/bin PATH
path++ /usr/libexec/gcc/i486-slackware-linux/$GCCV PATH
path++ $OOoPath PATH
fi
path++ $SHELLRC/bin:$SHELLRC/bin/scripts PATH
path++ /bin:/usr/bin:/usr/local/bin PATH
if [ $UID -eq 0 ]; then
TMOUT=600
PROMPT_COLOR='\033[1;31m'
export HOME=/root
path++ /sbin PATH
path++ /usr/sbin PATH
path++ /usr/local/sbin PATH
else
PROMPT_COLOR='\033[1;32m'
export HOME=/home/$(whoami)
fi
# }}} ##########################################################################
# {{{ Подключение псевдонимов
################################################################################
[ -f $BASHRC/aliases ] && ALIASES="$BASHRC/aliases" && . $ALIASES && HELPSRC+=("$ALIASES")
#Раскрывать псевдонимы в скриптах
shopt -s expand_aliases
# }}} ##########################################################################
# {{{ Настройка Cygwin
################################################################################
if [[ `uname -o` == Cygwin ]]; then
path++ $INIT_PATH PATH
[[ -f $BASHRC/aliases_cygwin ]] && CYGWIN_ALIASES="$BASHRC/aliases_cygwin" \
&& . $CYGWIN_ALIASES \
&& HELPSRC+=("$CYGWIN_ALIASES")
[[ -f $BASHRC/bash_completion_cygwin ]] && . $BASHRC/bash_completion_cygwin
fi
# }}} ##########################################################################
[[ "$-" != *i* ]] && return
######################## Настройки интерактивного режима #######################
# {{{ Настройка приглашения
################################################################################
[ -n "$SSH_CLIENT" ] && PROMPT_SHH="[${red}ssh${PROMPT_COLOR}]"
PS1="$PROMPT_COLOR┌─[$yellow\h$PROMPT_COLOR]─$PROMPT_SHH─[$yellow\w$PROMPT_COLOR]\n$PROMPT_COLOR└─[$PROMPT_COLOR\t]\$ $rstc"
PS2="$green-> $rstc"
PS3="$green+> $rstc"
PS4="$green++ $rstc"
PROMPT_COMMAND="history -a; history -n;"
export CDPATH=".:~/Programs:~/Programs/Projects:~/Downloads"
export PROMPT_DIRTRIM=3 #В приглашении показывать 3 директории
# }}} ##########################################################################
# {{{ Настройка автодополнения
################################################################################
[ -f $BASHRC/bash_completion ] && . $BASHRC/bash_completion
[ -f $BASHRC/bash_completion_custom ] && . $BASHRC/bash_completion_custom
# }}} ##########################################################################
# {{{ Настройка истории команд
################################################################################
#Раздельная история для рута и пользователя
export HISTFILE=$SHELLRC/var/shell/bash.history-$(whoami | awk '{print $1}';exit)
export HISTSIZE=100000 #Размер истории
export HISTFILESIZE=900000 #Размер файла истории
export HISTTIMEFORMAT='%d.%m.%Y %H:%M:%S ' #Формат записи истории
export HISTCONTROL="ignoreboth" #Игнорировать '^ ' и дубликаты
export HISTIGNORE="&:[bf]g:c:exit:\:q" #Не записывать в историю
# }}} ##########################################################################
# {{{ Прочие настройки
################################################################################
#Права на созданные файлы
umask 022
shopt -s progcomp
shopt -s globstar #Включение масок ** и **/ (рекурсивный перебор)
shopt -s autocd #Интерпретировать команды как параметры cd
shopt -s checkjobs #При выходе проверять фоновые задания
shopt -s histappend #Не добавлять команды, не переписывая историю
shopt -s cmdhist #Сохранение многострочной команды в одной строке
shopt -s cdable_vars #Аргументы cd могут быть переменными
shopt -s cdspell #Исправление ошибок в именах директорий
shopt -s dirspell #Исправление имен директорий при автодополнении
shopt -s checkhash #Проверка на существование команд в хеш-таблице
shopt -s lithist #Заменять ';' на '\n' в многострочных командах
shopt -s histreedit #Повторное редактирование команды
shopt -s promptvars #Раскрывать значения переменных в приглашении
shopt -s hostcomplete #Дополнение имен хостов (@...)
shopt -s interactive_comments #Игнорирование строк, начинающихся на #
shopt -s dotglob #Подстановка скрытых файлов
shopt -s nocaseglob #Подстановка без учета регистра
shopt -s checkwinsize #Проверять размер окна терминала
shopt -s no_empty_cmd_completion #Не дополнять пустую строку
shopt -s xpg_echo #echo -e -E
shopt -s extglob #Расширенное сопоставление с образцами
# ?(шаблон) Количество появлений указанного шаблона, равное нулю или единице
# *(шаблон) Количество появлений указанного шаблона, равное нулю или больше
# +(шаблон) Одно или большее количество появлений указанного шаблона
# @(шаблон) Одно появление указанного шаблона
# !(шаблон) Всё, кроме одного появления указанного шаблона
[[ (-f $BASHRC/cdargs-bash.sh) && (`uname -o` != Cygwin) ]] && . $BASHRC/cdargs-bash.sh
# }}} ##########################################################################

263
etc/shell/bash/cdargs-bash.sh

@ -0,0 +1,263 @@
#!/bin/sh
# (C) 2002-2003 Dan Allen and Stefan Kamphausen
# Written by Dan Allen <dan@mojavelinux.com>
# - small additions by Stefan Kamphausen
# - better completion code by Robi Malik robi.malik@nexgo.de
# - trailing path support by Damon Harper <ds+dev-cdargs@usrbin.ca> Feb 2006
# Globals
CDARGS_SORT=0 # set to 1 if you want mark to sort the list
CDARGS_NODUPS=1 # set to 1 if you want mark to delete dups
# --------------------------------------------- #
# Run the cdargs program to get the target #
# directory to be used in the various context #
# This is the fundamental core of the #
# bookmarking idea. An alias or substring is #
# expected and upon receiving one it either #
# resolves the alias if it exists or opens a #
# curses window with the narrowed down options #
# waiting for the user to select one. #
# #
# @param string alias #
# #
# @access private #
# @return 0 on success, >0 on failure #
# --------------------------------------------- #
CDARGSPATH="$SHELLRC/etc/soft/cdargs/cdargs"
CDARGSRESULT="$SHELLRC/etc/soft/cdargs/cdargsresult"
function _cdargs_get_dir ()
{
local bookmark extrapath
# if there is one exact match (possibly with extra path info after it),
# then just use that match without calling cdargs
if [ -e "$CDARGSPATH" ]; then
dir=`grep "^$1 " "$CDARGSPATH"`
if [ -z "$dir" ]; then
bookmark="${1/\/*/}"
if [ "$bookmark" != "$1" ]; then
dir=`grep "^$bookmark " "$CDARGSPATH"`
extrapath=`echo "$1" | sed 's#^[^/]*/#/#'`
fi
fi
[ -n "$dir" ] && dir=`echo "$dir" | sed 's/^[^ ]* //'`
fi
if [ -z "$dir" -o "$dir" != "${dir/
/}" ]; then
# okay, we need cdargs to resolve this one.
# note: intentionally retain any extra path to add back to selection.
dir=
if cdargs --noresolve "${1/\/*/}"; then
dir=`cat "$CDARGSRESULT"`
rm -f "$CDARGSRESULT" 2>/dev/null;
fi
fi
if [ -z "$dir" ]; then
echo "Aborted: no directory selected" >&2
return 1
fi
[ -n "$extrapath" ] && dir="$dir$extrapath"
if [ ! -d "$dir" ]; then
echo "Failed: no such directory '$dir'" >&2
return 2
fi
}
# --------------------------------------------- #
# Perform the command (cp or mv) using the #
# cdargs bookmark alias as the target directory #
# #
# @param string command argument list #
# #
# @access private #
# @return void #
# --------------------------------------------- #
function _cdargs_exec ()
{
local arg dir i last call_with_browse
# Get the last option which will be the bookmark alias
eval last=\${$#};
# Resolve the bookmark alias. If it cannot resolve, the
# curses window will come up at which point a directory
# will need to be choosen. After selecting a directory,
# the function will continue and $_cdargs_dir will be set.
if [ -e $last ]; then
last=
fi
if _cdargs_get_dir "$last"; then
# For each argument save the last, move the file given in
# the argument to the resolved cdargs directory
i=1;
for arg; do
if [ $i -lt $# ]; then
$command "$arg" "$dir";
fi
let i=$i+1;
done
fi
}
# --------------------------------------------- #
# Prepare to move file list into the cdargs #
# target directory #
# #
# @param string command argument list #
# #
# @access public #
# @return void #
# --------------------------------------------- #
function mvb ()
{
local command
command='mv -i';
_cdargs_exec $*;
}
# --------------------------------------------- #
# Prepare to copy file list into the cdargs #
# target directory #
# #
# @param string command argument list #
# #
# @access public #
# @return void #
# --------------------------------------------- #
function cpb ()
{
local command
command='cp -i';
_cdargs_exec $*;
}
# --------------------------------------------- #
# Change directory to the cdargs target #
# directory #
# #
# @param string alias #
# #
# @access public #
# @return void #
# --------------------------------------------- #
function cdb ()
{
local dir
_cdargs_get_dir "$1" && cd "$dir" && echo `pwd`;
}
alias cb='cdb'
alias cv='cdb'
# --------------------------------------------- #
# Mark the current directory with alias #
# provided and store as a cdargs bookmark #
# directory #
# #
# @param string alias #
# #
# @access public #
# @return void #
# --------------------------------------------- #
function mark ()
{
local tmpfile
# first clear any bookmarks with this same alias, if file exists
if [[ "$CDARGS_NODUPS" && -e "$CDARGSPATH" ]]; then
tmpfile=`echo ${TEMP:-${TMPDIR:-/tmp}} | sed -e "s/\\/$//"`
tmpfile=$tmpfile/cdargs.$USER.$$.$RANDOM
grep -v "^$1 " "$CDARGSPATH" > $tmpfile && 'mv' -f $tmpfile "$CDARGSPATH";
fi
# add the alias to the list of bookmarks
cdargs --add=":$1:`pwd`";
# sort the resulting list
if [ "$CDARGS_SORT" ]; then
sort -o "$CDARGSPATH" "$CDARGSPATH";
fi
}
# Oh, no! Not overwrite 'm' for stefan! This was
# the very first alias I ever wrote in my un*x
# carreer and will always be aliased to less...
# alias m='mark'
# --------------------------------------------- #
# Mark the current directory with alias #
# provided and store as a cdargs bookmark #
# directory but do not overwrite previous #
# bookmarks with same name #
# #
# @param string alias #
# #
# @access public #
# @return void #
# author: SKa #
# --------------------------------------------- #
function ca ()
{
# add the alias to the list of bookmarks
cdargs --add=":$1:`pwd`";
}
# --------------------------------------------- #
# Bash programming completion for cdargs #
# Sets the $COMPREPLY list for complete #
# #
# @param string substring of alias #
# #
# @access private #
# @return void #
# --------------------------------------------- #
function _cdargs_aliases ()
{
local cur bookmark dir strip oldIFS
COMPREPLY=()
if [ -e "$CDARGSPATH" ]; then
cur=${COMP_WORDS[COMP_CWORD]}
if [ "$cur" != "${cur/\//}" ]; then # if at least one /
bookmark="${cur/\/*/}"
dir=`grep "^$bookmark " "$CDARGSPATH" | sed 's#^[^ ]* ##'`
if [ -n "$dir" -a "$dir" = "${dir/
/}" -a -d "$dir" ]; then
strip="${dir//?/.}"
oldIFS="$IFS"
IFS='
'
COMPREPLY=( $(
compgen -d "$dir`echo "$cur" | sed 's#^[^/]*##'`" \
| sed -e "s/^$strip/$bookmark/" -e "s/\([^\/a-zA-Z0-9#%_+\\\\,.-]\)/\\\\\\1/g" ) )
IFS="$oldIFS"
fi
else
COMPREPLY=( $( (echo $cur ; cat "$CDARGSPATH") | \
awk 'BEGIN {first=1}
{if (first) {cur=$0; l=length(cur); first=0}
else if (substr($1,1,l) == cur) {print $1}}' ) )
fi
fi
return 0
}
# --------------------------------------------- #
# Bash programming completion for cdargs #
# Set up completion (put in a function just so #
# `nospace' can be a local variable) #
# #
# @param none #
# #
# @access private #
# @return void #
# --------------------------------------------- #
_cdargs_complete() {
local nospace=
[ "${BASH_VERSINFO[0]}" -ge 3 -o \( "${BASH_VERSINFO[0]}" = 2 -a \( "${BASH_VERSINFO[1]}" = 05a -o "${BASH_VERSINFO[1]}" = 05b \) \) ] && nospace='-o nospace'
complete $nospace -S / -X '*/' -F _cdargs_aliases cv cb cdb
}
_cdargs_complete

85
etc/shell/bash/inputrc

@ -0,0 +1,85 @@
# /etc/inputrc
#Привязки клавиш
# Set various nice escape sequences:
"\eOd": backward-word
"\eOc": forward-word
# for linux console
"\e[1~": beginning-of-line
"\e[4~": end-of-line
"\e[5~": beginning-of-history
"\e[6~": end-of-history
"\e[3~": delete-char
"\e[2~": quoted-insert
"\e[1~": beginning-of-line
"\e[4~": end-of-line
"\e[7~": beginning-of-line
"\e[8~": end-of-line
# for xterm
"\eOH": beginning-of-line
"\eOF": end-of-line
# for freebsd console
"\e[H": beginning-of-line
"\e[F": end-of-line
##<Вверх> - Поиск назад по истории
"\e[A": history-search-backward
##<Вниз> - Поиск вперед по истории
"\e[B": history-search-forward
#Поиск назад по истории
"\C-p": history-search-backward
#Поиск вперед по истории
"\C-n": history-search-forward
#Опции интерпретатора
#8-битовый ввод
set meta-flag On
set input-meta On
set convert-meta Off
set output-meta On
#Горизонтальная сортировка автодополнения
#set print-completions-horizontally On
set horizontal-scroll-mode On
#Игнорирование регистра при автодополнении
set completion-ignore-case On
#Возможность использовать маски
set glob-complete-word On
#Автодополнение по одному нажатию <TAB>
set show-all-if-ambiguous On
#Запрашивать подтверждение на вывод автодополнения при >200 результатов
set completion-query-items 200
set show-all-symlinked-directories On
#Автодополнение раскрывает тильду
set expand-tilde On
#Добавление символа типа файла к результату автодополнения
set visible-stats On
#Добавление слэша к директориям
set mark-directories On
#При изменении команды добавлять метку
set mark-modified-lines Off
#Запрет на отображение скрытых файлов в автодополнении
set match-hidden-files Off
#Дополнение из истории
set dabbrev-expand on
#Автоматическая подстановка директорий в cd
set autocd on

12
etc/shell/guile/guile

@ -0,0 +1,12 @@
;;;Настройки guile
;;Подключение библиотеки readline
(use-modules (ice-9 readline))
(activate-readline)
;;Включение истории команд (переменные $n)
(use-modules (ice-9 history))
;;Форматированный вывод
(use-modules (ice-9 pretty-print))

5
etc/shell/screen/apps/centerim.screen

@ -0,0 +1,5 @@
source ~/.screenrc
screen -t centerim
stuff "export LC_ALL=ru_RU.KOI8-R\015"
encoding KOI8-R UTF-8
stuff "\centerim\015"

34
etc/shell/screen/screenrc

@ -0,0 +1,34 @@
startup_message off
vbell on
vbell_msg " -! *PLONK* !- "
hardstatus alwayslastline
#hardstatus string '%{= mK}%-Lw%{= KW}%50>%n%f* %t%{= mK}%+Lw%< %{= kG}%-=%D %d %M %Y %c:%s%{-}'
hardstatus string '%{= kG}%-Lw%{= kW}%50> %n*%f %t%{= kG}%+Lw%< %{= kG}%-=%D %m/%d/%y | %C:%s %A | %1`%{-}'
term rxvt-256color
terminfo rxvt-unicode 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm'
deflog off
deflogin off
defscrollback 1000
#Shift-Pg[Up|Down]
termcapinfo xterm ti@:te@
bindkey "^[[5;2~" eval "copy" "stuff ^u"
bindkey -m "^[[5;2~" stuff ^u
bindkey -m "^[[6;2~" stuff ^d
termcap xterm hs@:cs=\E[%i%d;%dr:im=\E[4h:ei=\E[4l
terminfo xterm hs@:cs=\E[%i%p1%d;%p2%dr:im=\E[4h:ei=\E[4l
# emulate .logout message
pow_detach_msg "Screen session of $LOGNAME $:cr:$:nl:ended."
#Запускаемые программы
#screen -t bash 0 bash
#screen -t snownews 1 snownews
#screen -t calcurse 1 calcurse

76
etc/shell/tcl/tclshrc

@ -0,0 +1,76 @@
#!/usr/bin/tclsh
#
# ~/.tclshrc
#
# Изменён: Сб 24 авг 2013 22:52:58
#
package require tclreadline
#------------------------------------------------------------------
interp alias {} :q {} exit 0
#------------------------------------------------------------------
namespace eval tclreadline {
#PROMPT - вывод текущего времени и количества выполненных команд
proc prompt1 {} {
return "\033\[1;33m\[[clock format [clock seconds] \
-format %H:%M:%S]\]\033\[1;36m % \033\[00m"
}
#PROMPT2
proc prompt2 {} {
return "\[[incr cmd]\] > "
}
}
#Настройка цветов
array set color {
Reset "\033\[00m"
Blue "\033\[1;36m"
Yellow "\033\[1;33m"
Red "\033\[1;31m"
Green "\033\[1;32m"
}
#------------------------------------------------------------------
#Список пакетов
proc lspkg {{pattern *}} {
eval [package unknown] Tcl [package provide Tcl]
foreach package [lsort [package names]] {
if {[string match -nocase $pattern* $package]} {
foreach version [package versions $package] {
set present [expr {[string compare $version \
[package provide $package]] ? " " : "+" }]
set ifneeded [string replace [string trim \
[string map {"\n" " " "\t" " "} [package \
ifneeded $package $version]]] 50 end "..."]
puts [format "%1s%-40s\t%-20s\t%-55s" \
"$present" "$::color(Blue)$package" \
"$::color(Yellow)$version$::color(Reset)" \
"$ifneeded"]
}
}
}
}
#Список Tk-виджетов
proc lstk {{pattern *}} {
package require Tk
set tkCommands [lsort [info commands "::tk::$pattern*"]]
set ttkCommands [lsort [info commands "::ttk::$pattern*"]]
set allCommands [concat $tkCommands $ttkCommands]
foreach cmd $allCommands {
regsub "::tk::" $cmd "$::color(Yellow)tk::$::color(Blue)" cmd
regsub "::ttk::" $cmd "$::color(Green)ttk::$::color(Blue)" cmd
puts "$cmd$::color(Reset)"
}
}
#------------------------------------------------------------------
puts "$color(Blue)#Tcl v[info patchlevel] ([info library])\n"
#Загрузка файла истории
tclreadline::Loop [file join $::env(SHELLRC) var shell tclsh.history]
#------------------------------------------------------------------

1
etc/shell/tcl/wishrc

@ -0,0 +1 @@
tclshrc

28
etc/soft/bar/barrc

@ -0,0 +1,28 @@
display-twiddle: no
display-ansi: yes
display-summary: yes
#
twiddle-foreground: green
twiddle-bold: yes
#
count-foreground: cyan
count-bold: yes
#
throughput-label-foreground: normal
throughput-label-bold: yes
throughput-foreground: green
throughput-bold: yes
#
time-label-foreground: normal
time-label-bold: yes
time-foreground: green
time-bold: yes
#
percent-foreground: yellow
percent-bold: yes
#
bar-brace-foreground: red
bar-brace-bold: yes
#
bar-foreground: yellow
bar-bold: yes

58
etc/soft/conky/conkyrc.AuthenticAMD

@ -0,0 +1,58 @@
background yes
use_xft yes
xftfont DejaVu Mono:size=10
xftalpha 1
update_interval 2.0
total_run_times 0
own_window yes
own_window_type desktop
own_window_transparent no
own_window_colour black
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
double_buffer yes
minimum_size 1920 3
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders yes
stippled_borders 0
border_width 1
default_color darkgray
default_shade_color white
default_outline_color darkgray
alignment top_left
gap_x 2
gap_y 2
no_buffers yes
uppercase no
cpu_avg_samples 2
net_avg_samples 2
override_utf8_locale yes
use_spacer right
background yes
default_color black
own_window_colour D9D9D9
TEXT
[ ${color darkblue}${execi 2 SHELL=/bin/sh musca -c "silent show groups" \
| cut -f 2- -d ' ' \
| sed -e :a -e '$b;N;s/\n/ | /;ba' \
| sed 's/- //g;s/\*/⚫/g'
} ]${offset 55}\
${if_mounted /}$color /: ${color brown}${fs_free /}${endif}\
${if_mounted /home}$color | home: ${color brown}${fs_free /home/maks}${endif}\
${if_mounted /media/2TB}$color | 2tb: ${color brown}${fs_free /media/2TB}${endif}\
${if_mounted /media/MEDIA}$color | media: ${color brown}${fs_free /media/MEDIA}${endif}\
${if_mounted /media/DATA}$color | data: ${color brown}${fs_free /media/DATA}${endif}\
${if_mounted /media/FLASH}$color | flash: ${color brown}${fs_free /media/FLASH}${endif}\
${offset 50}\
${alignr}\
${color darkred} ${execi 86400 dates >/dev/null && echo "[✻] " || echo ""}\
${color darkgreen}⏏$color: ${execi 18000 cat $SHELLRC/var/log/updates | wc -l}$color | \
${color darkred}⌧$color: ${execi 60 cat $MD/new}$color | \
${color darkblue}[${execi 2 SHELL=/bin/sh skb 1}]$color | \
${color black}${time %H:%M} (${time %d.%m.%Y})

58
etc/soft/conky/conkyrc.GenuineIntel

@ -0,0 +1,58 @@
background yes
use_xft yes
xftfont DejaVu Mono:size=10
xftalpha 1
update_interval 2.0
total_run_times 0
own_window yes
own_window_type desktop
own_window_transparent no
own_window_colour black
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
double_buffer yes
minimum_size 1366 3
draw_shades no
draw_outline no
draw_borders no
draw_graph_borders yes
stippled_borders 0
border_width 1
default_color darkgray
default_shade_color white
default_outline_color darkgray
alignment top_left
gap_x 2
gap_y 2
no_buffers yes
uppercase no
cpu_avg_samples 2
net_avg_samples 2
override_utf8_locale yes
use_spacer right
background yes
default_color black
own_window_colour D9D9D9
TEXT
[ ${color darkblue}${execi 2 SHELL=/bin/sh musca -c "silent show groups" \
| cut -f 2- -d ' ' \
| sed -e :a -e '$b;N;s/\n/ | /;ba' \
| sed 's/- //g;s/\*/⚫/g'
} ]${offset 55}\
${alignc} \
${if_mounted /}$color /: ${color brown}${fs_free /}${endif}\
${if_mounted /home/maks}$color | home: ${color brown}${fs_free /home/maks}${endif}\
${if_mounted /media/2TB}$color | 2TB: ${color brown}${fs_free /media/2TB}${endif}\
${if_mounted /media/MEDIA}$color | media: ${color brown}${fs_free /media/MEDIA}${endif}\
${if_mounted /media/DATA}$color | data: ${color brown}${fs_free /media/DATA}${endif}\
${if_mounted /media/FLASH}$color | flash: ${color brown}${fs_free /media/FLASH}${endif}\
${alignr}\
${color darkred} ${execi 86400 dates >/dev/null && echo "[✻] " || echo ""}\
${color brown}⚠$color ${battery_percent}%$color | \
${color darkgreen}⏏$color: ${execi 18000 cat $SHELLRC/var/log/updates | wc -l}$color | \
${color darkred}⌧$color: ${execi 60 cat $MD/new}$color | \
${color darkblue}[${execi 2 SHELL=/bin/sh skb 1}]$color | \
${color black}${time %H:%M} (${time %d.%m.%Y})

62
etc/soft/ctags/ctags

@ -0,0 +1,62 @@
--langdef=txt
--langmap=txt:.txt
--regex-txt=/^([0-9]+\.?[ \t]+)([^,]+$)/\1\2/c,content/
--regex-txt=/^(([0-9]+\.){1}([0-9]+\.?)[ \t]+)([^,]+$)/. \1\4/c,content/
--regex-txt=/^(([0-9]+\.){2}([0-9]+\.?)[ \t]+)([^,]+$)/. \1\4/c,content/
--regex-txt=/^[ \t]+(figure[ \t]+[0-9a-zA-Z]+([.: ]([ \t]*.+)?)?$)/\1/f,figures/i
--regex-txt=/^[ \t]+(table[ \t]+[0-9a-zA-Z]+([.: ]([ \t]*.+)?)?$)/\1/t,tables/i
--langdef=rfc
--langmap=rfc:.rfc
--regex-rfc=/^([0-9]+\.?[ \t]+)([^,]+$)/\1\2/c,content/
--regex-rfc=/^(([0-9]+\.){1}([0-9]+\.?)[ \t]+)([^,]+$)/. \1\4/c,content/
--regex-rfc=/^(([0-9]+\.){2}([0-9]+\.?)[ \t]+)([^,]+$)/. \1\4/c,content/
--regex-rfc=/^[ \t]+(figure[ \t]+[0-9a-zA-Z]+([.: ]([ \t]*.+)?)?$)/\1/f,figures/i
--regex-rfc=/^[ \t]+(table[ \t]+[0-9a-zA-Z]+([.: ]([ \t]*.+)?)?$)/\1/t,tables/i
--langdef=tcl
--langmap=tcl:.tcl
--regex-tcl=/^[ \t]*(proc)[ \t]+([^ \t]+[ \t]+(\{.*\}|[^ \t]+))[ \t]+\{.*/\2/x,functions/
--regex-tcl=/^(set|variable)[ \t]+([^ \t]+)[ \t]+(.+)/\2/g,global,globals/
--regex-tcl=/^[ \t]*(namespace)[ \t]+[^ \t]+[ \t]+([^ \t]+)[ \t]+(.+)/\2/n,namespaces/
--regex-tcl=/^.+(set)[ \t]+([^ \t]+)[ \t]+(.+)/\2/v,variables,vars/
--regex-tcl=/^.*(array set)[ \t]+([^ \t]+)[ \t]+(.+)/\2/a,arrays/
--regex-tcl=/^[^\$]*(source)[ \t]+([^ \t]+)$/\2/s,sources/
--regex-tcl=/^.*(package require)[ \t]+([^ \t]+)$/\2/k,packages/
--regex-tcl=/^.*(st::)?addproc[ \t]+([^ \t]+)[ \t]+.*$/\2/u,tests/
--regex-tcl=/^.*interp[ \t]+alias[ \t]+[^ \t]+[ \t]+(.+).*$/\1/i,aliases/
--langmap=scheme:
--langdef=scm
--langmap=scm:.ss.scm
--regex-scm=/^[[:space:]]*(\(|[[]])define[^[:space:]]*[[:space:]]+(\(|[[]])?([^][[:space:]()]+)/\3/d,definition/i))
--langmap=lisp
--langmap=lisp:.lisp
--regex-lisp=/^[[:space:]]*(\(|[[]])defun[[:space:]]+(\(|[[]])?([^][[:space:]()]+)/\3/f/i
--regex-lisp=/^[[:space:]]*(\(|[[]])defmethod[[:space:]]+(\(|[[]])?([^][[:space:]()]+)/\3/m,methods/i
--regex-lisp=/^[[:space:]]*(\(|[[]])defmacro[[:space:]]+(\(|[[]])?([^][[:space:]()]+)/\3/x,macro/i
--regex-lisp=/^[[:space:]]*(\(|[[]])defgeneric[[:space:]]+(\(|[[]])?([^][[:space:]()]+)/\3/g,generic/i
--regex-lisp=/^[[:space:]]*(\(|[[]])defvar[[:space:]]+(\(|[[]])?([^][[:space:]()]+)/\3/v,var/i
--regex-lisp=/^[[:space:]]*(\(|[[]])defparameter[[:space:]]+(\(|[[]])?([^][[:space:]()]+)/\3/p,parameter/i
--regex-lisp=/^[[:space:]]*(\(|[[]])defparameter[[:space:]]+(\(|[[]])?([^][[:space:]()]+)/\3/c,class/i
--langdef=tex
--langmap=tex:.tex
--regex-tex=/\\subsubsection[ \t]*\*?\{[ \t]*([^])}]*)\}/- \1/s,subsubsection/
--regex-tex=/\\subsection[ \t]*\*?\{[ \t]*([^])}]*)\}/+\1/s,subsection/
--regex-tex=/\\section[ \t]*\*?\{[ \t]*([^])}]*)\}/\1/s,section/
--regex-tex=/\\chapter[ \t]*\*?\{[ \t]*([^])}]*)\}/\1/c,chapter/
--regex-tex=/\\label[ \t]*\*?\{[ \t]*([^])}]*)\}/\1/l,label/
--regex-tex=/\\ref[ \t]*\*?\{[ \t]*([^])}]*)\}/\1/r,ref/
--langdef=wiki
--langmap=wiki:.wiki
--regex-wiki=/^[ \t]*=[ \t]+(.+)[ \t]+=$/\1/h,header/
--regex-wiki=/^[ \t]*==[ \t]+(.+)[ \t]+==$/. \1/h,header/
--regex-wiki=/^[ \t]*===[ \t]+(.+)[ \t]+===$/. \1/h,header/
--regex-wiki=/^[ \t]*====[ \t]+(.+)[ \t]+====$/. \1/h,header/
--regex-wiki=/^[ \t]*=====[ \t]+(.+)[ \t]+=====$/. \1/h,header/
--regex-wiki=/^[ \t]*======[ \t]+(.+)[ \t]+======$/. \1/h,header/
--regex-wiki=/^[\*#] (\[.\] .*)$/\1/t,todo/
--regex-wiki=/^[ \t]+[\*#] (\[.\] .*)$/. \1/t,todo/

12
etc/soft/cygwin/minttyrc

@ -0,0 +1,12 @@
BoldAsFont=no
Locale=ru_RU
Charset=UTF-8
FontHeight=11
CursorType=block
CursorBlinks=no
Columns=80
Rows=15
Scrollbar=none
Transparency=off
OpaqueWhenFocused=no
FontSmoothing=default

7
etc/soft/git/gintconfig.sh

@ -0,0 +1,7 @@
#!/bin/bash
#Создан: Вс 25 авг 2013 20:46:15
#Изменён: Вс 25 авг 2013 20:53:07
git config --global core.excludesfile $(pwd | sed "s,$HOME,\~,")/gitignore-global

24
etc/soft/git/gitconfig

@ -0,0 +1,24 @@
[user]
name = Maxim Lihachev
email = envrm@yandex.ru
[core]
pager = "less -R -X --ignore-case -w --jump-target=.5"
editor=vim
excludesfile = ~/.shellrc/etc/soft/git/gitignore-global
[gui]
wmstate = normal
geometry = 1278x971+1+22 212 188
[color]
ui = true
[merge]
tool = vimdiff
[help]
autocorrect = true
[credential]
helper = cache --timeout=3600

33
etc/soft/git/gitignore-global

@ -0,0 +1,33 @@
# Compiled source
*.o
*.so
# Logs and databases
*.log
*.sql
*.sqlite
# OS generated files
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
ehthumbs.db
Thumbs.db
# Vim
*.swp
*.swo
*.bak
*.*~
.netrwhist
tags
# Haskell
dist
cabal-dev
*.hi
*.chi
*.chs.h
.virthualenv

61
etc/soft/git/gitk

@ -0,0 +1,61 @@
set mainfont {Helvetica 9}
set textfont {Courier 9}
set uifont {Helvetica 9 bold}
set tabstop 8
set findmergefiles 0
set maxgraphpct 50
set maxwidth 16
set cmitmode patch
set wrapcomment none
set autoselect 1
set autosellen 40
set showneartags 1
set maxrefs 20
set hideremotes 0
set showlocalchanges 1
set datetimeformat {%Y-%m-%d %H:%M:%S}
set limitdiffs 1
set uicolor grey85
set want_ttk 1
set bgcolor white
set fgcolor black
set uifgcolor black
set uifgdisabledcolor #999
set colors {green red blue magenta darkgrey brown orange}
set diffcolors {red "#00a000" blue}
set mergecolors {red blue green purple brown "#009090" magenta "#808000" "#009000" "#ff0080" cyan "#b07070" "#70b0f0" "#70f0b0" "#f0b070" "#ff70b0"}
set markbgcolor #e0e0ff
set diffcontext 3
set selectbgcolor gray85
set foundbgcolor yellow
set currentsearchhitbgcolor orange
set extdifftool meld
set perfile_attrs 0
set headbgcolor green
set headfgcolor black
set headoutlinecolor black
set remotebgcolor #ffddaa
set tagbgcolor yellow
set tagfgcolor black
set tagoutlinecolor black
set reflinecolor black
set filesepbgcolor #aaaaaa
set filesepfgcolor black
set linehoverbgcolor #ffff80
set linehoverfgcolor black
set linehoveroutlinecolor black
set mainheadcirclecolor yellow
set workingfilescirclecolor red
set indexcirclecolor green
set circlecolors {white blue gray blue blue}
set linkfgcolor blue
set circleoutlinecolor black
set geometry(main) 1366x737+0+0
set geometry(state) normal
set geometry(topwidth) 1366
set geometry(topheight) 314
set geometry(pwsash0) "679 1"
set geometry(pwsash1) "874 1"
set geometry(botwidth) 561
set geometry(botheight) 418
set permviews {}

24
etc/soft/htop/htoprc

@ -0,0 +1,24 @@
# Beware! This file is rewritten by htop when settings are changed in the interface.
# The parser is also very primitive, and not human-friendly.
fields=0 48 17 18 38 39 40 2 46 47 49 1
sort_key=46
sort_direction=1
hide_threads=0
hide_kernel_threads=0
hide_userland_threads=0
shadow_other_users=0
show_thread_names=0
highlight_base_name=0
highlight_megabytes=0
highlight_threads=0
tree_view=0
header_margin=1
detailed_cpu_time=0
cpu_count_from_zero=0
update_process_names=0
color_scheme=0
delay=15
left_meters=AllCPUs Memory Swap
left_meter_modes=1 1 1
right_meters=Tasks LoadAverage Uptime
right_meter_modes=2 2 2

36
etc/soft/logrotate/logrotate.conf

@ -0,0 +1,36 @@
# logrotate.conf
#
# Создан: Вс 25 авг 2013 21:12:39
# Изменён: Вс 25 авг 2013 21:39:57
#
#
create
# Отсутствие файла не является ошибкой
missingok
# Создавать 2 уровня журналов
rotate 2
# Вносить дату создания журналов в имена файлов
dateext
~/.shellrc/var/log/mpd.log {
size=100k
postrotate
killall mpd
mpd ~/.shellrc/etc/media/mpd/mpd.conf &
endscript
}
~/.shellrc/var/log/scmpc.log {
size=100k
postrotate
scmpc --kill
sleep 3
scmpc -f ~/.shellrc/etc/media/scmpc/scmpc.conf -i ~/.shellrc/var/scmpc/scmpc.pid &
endscript
}

44
etc/soft/mc/filehighlight.ini

@ -0,0 +1,44 @@
[executable]
type=FILE_EXE
[directory]
type=DIR
[device]
type=DEVICE
[special]
type=SPECIAL
[stalelink]
type=STALE_LINK
[symlink]
type=SYMLINK
[core]
regexp=^core\\.*\\d*$
[temp]
extensions=tmp;$$$;~;bak;o;elc;toc;out;rej;aux;
extensions_case=false
regexp=(^#.*|.*~$)
[archive]
extensions=gz;bz2;tar;tgz;rpm;rar;zip;arj;cab;lzma;xz;tbz2;iso;mdf;
[doc]
extensions=txt;srt;ass;ssa;doc;ps;pdf;xml;html;htm;tex;css;chm;dvi;djvu;log;odt;cue;
[source]
extensions=c;h;cc;hh;cpp;cxx;hpp;asm;py;pl;pm;inc;cgi;php;phps;js;java;jav;jasm;sh;bash;diff;patch;pas;tcl;tk;awk;m4;st;mak;sl;ada;caml;ml;mli;mly;mll;mlp;sas;prg;hs;hi;erl;lisp;el;ebuild;
[media]
extensions=mov;mpg;mpeg;mkv;ogm;mp4;m2v;m4v;wmv;rmvb;rm;asf;avi;flv;vob;flac;mka;mp3;ogg;wav;ape;m3u;
[graph]
extensions=jpg;jpeg;gif;bmp;tga;xpm;tif;tiff;png;svgz;svg;pcx;xpm;eps;wmf;ico;
[database]
extensions=db;mdb;dat;sql;xls

189
etc/soft/mc/ini

@ -0,0 +1,189 @@
[Midnight-Commander]
show_backups=1
show_dot_files=1
verbose=1
mark_moves_down=1
pause_after_run=1
shell_patterns=1
auto_save_setup=1
auto_menu=0
use_internal_view=1
use_internal_edit=0
clear_before_exec=1
mix_all_files=0
fast_reload=0
fast_reload_msg_shown=0
confirm_delete=1
confirm_overwrite=1
confirm_execute=0
confirm_exit=1
confirm_directory_hotlist_delete=1
safe_delete=0
mouse_repeat_rate=100
double_click_speed=250
use_8th_bit_as_meta=0
confirm_view_dir=0
mouse_move_pages=1
mouse_move_pages_viewer=1
mouse_close_dialog=0
fast_refresh=0
navigate_with_arrows=1
drop_menus=0
wrap_mode=1
old_esc_mode=0
cd_symlinks=1
show_all_if_ambiguous=0
max_dirt_limit=10
torben_fj_mode=0
use_file_to_guess_type=1
alternate_plus_minus=0
only_leading_plus_minus=1
show_output_starts_shell=0
panel_scroll_pages=1
xtree_mode=0
num_history_items_recorded=60
file_op_compute_totals=1
skip_check_codeset=0
vfs_timeout=60
ftpfs_directory_timeout=900
use_netrc=1
ftpfs_retry_seconds=30
ftpfs_always_use_proxy=0
ftpfs_use_passive_connections=1
ftpfs_use_unix_list_options=1
ftpfs_first_cd_then_ls=1
fish_directory_timeout=900
editor_word_wrap_line_length=72
editor_key_emulation=0
editor_tab_spacing=8
editor_fill_tabs_with_spaces=0
editor_return_does_auto_indent=1
editor_backspace_through_tabs=0
editor_fake_half_tabs=1
editor_option_save_mode=0
editor_option_save_position=1
editor_option_auto_para_formatting=0
editor_option_typewriter_wrap=0
editor_edit_confirm_save=1
editor_syntax_highlighting=1
editor_persistent_selections=1
editor_visible_tabs=1
editor_visible_spaces=1
editor_line_state=0
editor_simple_statusbar=0
nice_rotating_dash=1
mcview_remember_file_position=0
auto_fill_mkdir_name=0
editor_backup_extension=~
kilobyte_si=0
confirm_history_cleanup=1
ftpfs_use_passive_connections_over_proxy=0
editor_cursor_beyond_eol=0
editor_check_new_line=0
editor_show_right_margin=0
reverse_files_only=1
copymove_persistent_attr=1
select_flags=6
mcview_eof=
skin=gotar
keymap=mc.keymap
auto_save_setup_panels=1
filepos_max_saved_entries=1024
quick_search_case_sensitive=2
old_esc_mode_timeout=1000000
classic_progressbar=1
scroll_pages=1
filetype_mode=1
permission_mode=0
ignore_ftp_chattr_errors=true
preallocate_space=0
editor_group_undo=0
editor_cursor_after_inserted_block=0
editor_ask_filename_before_edit=0
editor_filesize_threshold=64M
[Layout]
message_visible=0
keybar_visible=0
xterm_title=1
output_lines=0
command_prompt=1
menubar_visible=0
show_mini_info=1
permission_mode=1
filetype_mode=1
free_space=1
classic_progressbar=true
horizontal_split=0
vertical_equal=1
left_panel_size=61
horizontal_equal=1
top_panel_size=87
[Misc]
ftp_proxy_host=gate
find_ignore_dirs=
ftpfs_password=anonymous@
display_codepage=UTF-8
source_codepage=UTF-8
timeformat_recent=%b %e %H:%M
timeformat_old=%b %e %Y
autodetect_codeset=
clipboard_store=
clipboard_paste=
[Colors]
;base_color=lightgray,black:normal=lightgray,black:selected=black,cyan:marked=yellow,black:markselect=yellow,cyan:errors=red,white:menu=white,cyan:reverse=black,lightgray:dnormal=black,lightgray:dfocus=black,cyan:dhotnormal=yellow,lightgray:dhotfocus=yellow,cyan:viewunderline=brightred,blue:menuhot=yellow,cyan:menusel=lightgrey,black:menuhotsel=yellow,black:helpnormal=black,lightgray:helpitalic=red,lightgray:helpbold=yellow,lightgray:helplink=black,cyan:helpslink=yellow,black:gauge=white,black:input=black,cyan:directory=white,black:executable=green,black:link=lightred,black:stalelink=brightred,black:device=brightmagenta,black:core=red,black:special=black,blue:editnormal=lightgray,black:editbold=yellow,black:editmarked=black,cyan:errdhotnormal=red,white:errdhotfocus=yellow,lightgray:archive=brightmagenta
xterm=
color_terminals=
rxvt-256color=
linux=
base_color=
rxvt-unicode=
xterm-256color=
[HotlistConfig]
expanded_view_of_groups=0
[Panels]
kilobyte_si=false
mix_all_files=false
show_backups=true
show_dot_files=true
fast_reload=false
fast_reload_msg_shown=false
mark_moves_down=true
reverse_files_only=true
auto_save_setup_panels=true
navigate_with_arrows=true
panel_scroll_pages=true
mouse_move_pages=true
filetype_mode=true
permission_mode=false
quick_search_mode=2
simple_swap=false
show_mini_info=true
torben_fj_mode=false
[Panelize]
îÁÊÔÉ ËÏÒÒÅËÔÕÒÙ, ÏÔ×ÅÒÇÎÕÔÙÅ ËÏÍÁÎÄÏÊ patch=find . -name *.rej -print
îÁÊÔÉ ÏÒÉÇÉÎÁÌÙ (*.orig) ÐÏÓÌÅ ËÏÍÁÎÄÙ patch=find . -name *.orig -print
îÁÊÔÉ ÐÒÏÇÒÁÍÍÙ Ó ÕÓÔÁÎÏ×ÌÅÎÎÙÍÉ SUID/SGID ÂÉÔÁÍÉ=find . ( ( -perm -04000 -a -perm +011 ) -o ( -perm -02000 -a -perm +01 ) ) -print

742
etc/soft/mc/mc.ext

@ -0,0 +1,742 @@
# Midnight Commander 3.0 extension file
# Warning: Structure of this file has changed completely with version 3.0
#
# All lines starting with # or empty lines are thrown away.
# Lines starting in the first column should have following format:
#
# keyword/descNL, i.e. everything after keyword/ until new line is desc
#
# keyword can be:
#
# shell (desc is, when starting with a dot, any extension (no wildcars),
# i.e. matches all the files *desc . Example: .tar matches *.tar;
# if it doesn't start with a dot, it matches only a file of that name)
#
# shell/i (desc is, when starting with a dot, any extension (no wildcars),
# The same as shell but with case insensitive.
#
# regex (desc is an extended regular expression)
# Please note that we are using the GNU regex library and thus
# \| matches the literal | and | has special meaning (or) and
# () have special meaning and \( \) stand for literal ( ).
#
# regex/i (desc is an extended regular expression)
# The same as regex but with case insensitive.
#
# type (file matches this if `file %f` matches regular expression desc
# (the filename: part from `file %f` is removed))
#
# type/i (file matches this if `file %f` matches regular expression desc)
# The same as type but with case insensitive.
#
# directory (matches any directory matching regular expression desc)
#
# include (matches an include directive)
#
# default (matches any file no matter what desc is)
#
# Other lines should start with a space or tab and should be in the format:
#
# keyword=commandNL (with no spaces around =), where keyword should be:
#
# Open (if the user presses Enter or doubleclicks it),
#
# View (F3), Edit (F4)
#
# Include is the keyword used to add any further entries from an include/
# section
#
# command is any one-line shell command, with the following substitutions:
#
# %% -> % character
# %p -> name of the current file (without path, but pwd is its path).
# Also provided to external application as MC_EXT_BASENAME
# global variable
# %f -> name of the current file. Unlike %p, if file is located on a
# non-local virtual filesystem, i.e. either tarfs or ftpfs,
# then the file will be temporarily copied into a local directory
# and %f will be the full path to this local temporal file.
# If you don't want to get a local copy and want to get the
# virtual fs path (like /#ftp:ftp.cvut.cz/pub/hungry/xword), then
# use %d/%p instead of %f.
# Also provided to external application as MC_EXT_FILENAME
# global variable
# %d -> name of the current directory (pwd, without trailing slash)
# Also provided to external application as MC_EXT_CURRENTDIR
# global variable
# %s -> "selected files", i.e. space separated list of tagged files if any
# or name of the current file.
# Also provided to external application as MC_EXT_SELECTED
# global variable
# %t -> list of tagged files
# Also provided to external application as MC_EXT_ONLYTAGGED
# global variable
# %u -> list of tagged files (they'll be untaged after the command)
#
# (If these 6 letters are in uppercase, they refer to the other panel.
# But you shouldn't have to use it in this file.)
#
#
# %cd -> the rest is a path mc should change into (cd won't work, since it's
# a child process). %cd handles even vfs names.
#
# %view -> the command you type will be piped into mc's internal file viewer
# if you type only the %view and no command, viewer will load %f file
# instead (i.e. no piping, so it is different to %view cat %f)
# %view may be directly followed by {} with a list of any of
# ascii (Ascii mode), hex (Hex mode), nroff (color highlighting for
# text using backspace for bold and underscore) and unform
# (no highlighting for nroff sequences) separated by commas.
#
# %var -> You use it like this: %var{VAR:default}. This macro will expand
# to the value of the VAR variable in the environment if it's set
# otherwise the value in default will be used. This is similar to
# the Bourne shell ${VAR-default} construct.
#
# Rules are applied from top to bottom, thus the order is important.
# If some actions are missing, search continues as if this target didn't
# match (i.e. if a file matches the first and second entry and View action
# is missing in the first one, then on pressing F3 the View action from
# the second entry will be used. default should catch all the actions.
#
# Any new entries you develop for you are always welcome if they are
# useful on more than one system. You can post your modifications
# as tickets at www.midnight-commander.org
### Changes ###
#
# Reorganization: 2012-03-07 Slava Zanko <slavazanko@gmail.com>
### GIT Repo ###
# gitfs changeset
regex/^\[git\]
Open=%cd %p/changesetfs://
View=%cd %p/patchsetfs://
### Archives ###
# .tgz, .tpz, .tar.gz, .tar.z, .tar.Z, .ipk, .gem
regex/\.t([gp]?z|ar\.g?[zZ])$|\.ipk$|\.gem$
Open=%cd %p/utar://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view tar.gz
shell/.tar.bz
# Open=%cd %p/utar://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view tar.bzip
regex/\.t(ar\.bz2|bz2?|b2)$
Open=%cd %p/utar://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view tar.bzip2
# .tar.lzma, .tlz
regex/\.t(ar\.lzma|lz)$
Open=%cd %p/utar://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view tar.lzma
# .tar.xz, .txz
regex/\.t(ar\.xz|xz)$
Open=%cd %p/utar://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view tar.xz
# .tar.F - used in QNX
shell/.tar.F
# Open=%cd %p/utar://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view tar.F
# .qpr/.qpk - QNX Neutrino package installer files
regex/\.qp[rk]$
Open=%cd %p/utar://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view tar.qpr
# tar
shell/i/.tar
Open=%cd %p/utar://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view tar
# lha
type/^LHa\ .*archive
Open=%cd %p/ulha://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view lha
# arj
regex/i/\.a(rj|[0-9][0-9])$
Open=%cd %p/uarj://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view arj
# cab
shell/i/.cab
Open=%cd %p/ucab://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view cab
# ha
shell/i/.ha
Open=%cd %p/uha://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view ha
# rar
regex/i/\.r(ar|[0-9][0-9])$
Open=%cd %p/urar://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view rar
# ALZip
shell/i/.alz
Open=%cd %p/ualz://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view alz
# cpio
shell/.cpio.Z
Open=%cd %p/ucpio://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view cpio.z
shell/.cpio.xz
Open=%cd %p/ucpio://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view cpio.xz
shell/.cpio.gz
Open=%cd %p/ucpio://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view cpio.gz
shell/i/.cpio
Open=%cd %p/ucpio://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view cpio
# 7zip archives (they are not man pages)
shell/i/.7z
Open=%cd %p/u7z://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view 7z
# patch
regex/\.(diff|patch)(\.bz2)$
Open=%cd %p/patchfs://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view bz2
regex/\.(diff|patch)(\.(gz|Z))$
Open=%cd %p/patchfs://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view gz
# ls-lR
regex/(^|\.)ls-?lR(\.gz|Z|bz2)$
Open=%cd %p/lslR://
# trpm
shell/.trpm
Open=%cd %p/trpm://
View=%view{ascii} /usr/libexec/mc/ext.d/package.sh view trpm
# RPM packages (SuSE uses *.spm for source packages)
regex/\.(src\.rpm|spm)$
Open=%cd %p/rpm://
View=%view{ascii} /usr/libexec/mc/ext.d/package.sh view src.rpm
shell/.rpm
Open=%cd %p/rpm://
View=%view{ascii} /usr/libexec/mc/ext.d/package.sh view rpm
# deb
regex/\.u?deb$
Open=%cd %p/deb://
View=%view{ascii} /usr/libexec/mc/ext.d/package.sh view deb
# dpkg
shell/.debd
Open=%cd %p/debd://
View=%view{ascii} /usr/libexec/mc/ext.d/package.sh view debd
# apt
shell/.deba
Open=%cd %p/deba://
View=%view{ascii} /usr/libexec/mc/ext.d/package.sh view deba
# ISO9660
shell/i/.iso
Open=%cd %p/iso9660://
View=%view{ascii} /usr/libexec/mc/ext.d/misc.sh view iso9660
regex/\.(diff|patch)$
Open=%cd %p/patchfs://
View=%view{ascii} /usr/libexec/mc/ext.d/misc.sh view cat
# ar library
regex/\.s?a$
Open=%cd %p/uar://
#Open=%view{ascii} ar tv %f
View=%view{ascii} /usr/libexec/mc/ext.d/misc.sh view ar
# gplib
shell/i/.lib
Open=%cd %p/ulib://
View=%view{ascii} /usr/libexec/mc/ext.d/misc.sh view lib
# Mailboxes
type/^ASCII\ mail\ text
Open=%cd %p/mailfs://
### Sources ###
# C/C++
regex/i/\.(c|cc|cpp)$
Include=editor
# C/C++ header
regex/i/\.(h|hh|hpp)$
Include=editor
# Fortran
shell/i/.f
Include=editor
# Assembler
regex/i/\.(s|asm)$
Include=editor
include/editor
Open=%var{EDITOR:vi} %f
# .so libraries
regex/\.(so|so\.[0-9\.]*)$
View=%view{ascii} /usr/libexec/mc/ext.d/misc.sh view so
# Object
type/^ELF
#Open=%var{PAGER:more} %f
View=%view{ascii} /usr/libexec/mc/ext.d/misc.sh view elf
### Documentation ###
# Texinfo
#regex/\.(te?xi|texinfo)$
# GNU Info page
type/^Info\ text
Open=/usr/libexec/mc/ext.d/text.sh open info
shell/.info
Open=/usr/libexec/mc/ext.d/text.sh open info
# Exception: .3gp are video files not manual pages
shell/i/.3gp
Include=video
# Manual page
regex/(([^0-9]|^[^\.]*)\.([1-9][A-Za-z]*|[ln])|\.man)$
Open=/usr/libexec/mc/ext.d/text.sh open man %var{PAGER:more}
View=%view{ascii,nroff} /usr/libexec/mc/ext.d/text.sh view man %var{PAGER:more}
# Perl pod page
shell/.pod
Open=/usr/libexec/mc/ext.d/text.sh open pod %var{PAGER:more}
View=%view{ascii,nroff} /usr/libexec/mc/ext.d/text.sh view pod %var{PAGER:more}
# Troff with me macros.
# Exception - "read.me" is not a nroff file.
shell/read.me
Open=
View=
shell/.me
Open=/usr/libexec/mc/ext.d/text.sh open nroff.me %var{PAGER:more}
View=%view{ascii,nroff} /usr/libexec/mc/ext.d/text.sh view nroff.me %var{PAGER:more}
# Troff with ms macros.
shell/.ms
Open=/usr/libexec/mc/ext.d/text.sh open nroff.ms %var{PAGER:more}
View=%view{ascii,nroff} /usr/libexec/mc/ext.d/text.sh view nroff.ms %var{PAGER:more}
# Manual page - compressed
regex/([^0-9]|^[^\.]*)\.([1-9][A-Za-z]*|[ln])\.g?[Zz]$
Open=/usr/libexec/mc/ext.d/text.sh open man.gz %var{PAGER:more}
View=%view{ascii,nroff} /usr/libexec/mc/ext.d/text.sh view man.gz %var{PAGER:more}
regex/([^0-9]|^[^\.]*)\.([1-9][A-Za-z]*|[ln])\.bz$
Open=/usr/libexec/mc/ext.d/text.sh open man.bz %var{PAGER:more}
View=%view{ascii,nroff} /usr/libexec/mc/ext.d/text.sh view man.bz %var{PAGER:more}
regex/([^0-9]|^[^\.]*)\.([1-9][A-Za-z]*|[ln])\.bz2$
Open=/usr/libexec/mc/ext.d/text.sh open man.bz2 %var{PAGER:more}
View=%view{ascii,nroff} /usr/libexec/mc/ext.d/text.sh view man.bz2 %var{PAGER:more}
regex/([^0-9]|^[^\.]*)\.([1-9][A-Za-z]*|[ln])\.lzma$
Open=/usr/libexec/mc/ext.d/text.sh open man.lzma %var{PAGER:more}
View=%view{ascii,nroff} /usr/libexec/mc/ext.d/text.sh view man.lzma %var{PAGER:more}
regex/([^0-9]|^[^\.]*)\.([1-9][A-Za-z]*|[ln])\.xz$
Open=/usr/libexec/mc/ext.d/text.sh open man.xz %var{PAGER:more}
View=%view{ascii,nroff} /usr/libexec/mc/ext.d/text.sh view man.xz %var{PAGER:more}
# CHM
shell/i/.chm
Open=/usr/libexec/mc/ext.d/text.sh open chm
### Images ###
type/^GIF
Include=image
type/^JPEG
View=%view{ascii} /usr/libexec/mc/ext.d/image.sh view jpeg
Include=image
type/^PC\ bitmap
Include=image
type/^PNG
Include=image
type/^JNG
Include=image
type/^MNG
Include=image
type/^TIFF
Include=image
type/^PBM
Include=image
type/^PGM
Include=image
type/^PPM
Include=image
type/^Netpbm
Include=image
shell/.xcf
Open=/usr/libexec/mc/ext.d/image.sh open xcf
shell/.xbm
Open=/usr/libexec/mc/ext.d/image.sh open xbm
shell/.xpm
Include=image
View=/usr/libexec/mc/ext.d/image.sh view xpm %f
shell/.ico
Include=image
shell/i/.svg
View=%view{ascii} /usr/libexec/mc/ext.d/image.sh view svg
Open=/usr/libexec/mc/ext.d/image.sh open svg
include/image
Open=geeqie
View=%view{ascii} /usr/libexec/mc/ext.d/image.sh view ALL_FORMATS
### Sound files ###
regex/i/\.(wav|snd|voc|au|smp|aiff|snd|m4a|ape|aac|wv)$
Open=/usr/libexec/mc/ext.d/sound.sh open common
regex/i/\.(mod|s3m|xm|it|mtm|669|stm|ult|far)$
Open=/usr/libexec/mc/ext.d/sound.sh open mod
shell/i/.waw22
Open=/usr/libexec/mc/ext.d/sound.sh open wav22
shell/i/.mp3
Open=/usr/libexec/mc/ext.d/sound.sh open mp3
View=%view{ascii} /usr/libexec/mc/ext.d/sound.sh view mp3
regex/i/\.og[gax]$
Open=/usr/libexec/mc/ext.d/sound.sh open ogg
View=%view{ascii} /usr/libexec/mc/ext.d/sound.sh view ogg
regex/i/\.(spx|flac)$
Open=/usr/libexec/mc/ext.d/sound.sh open common
regex/i/\.(midi?|rmid?)$
Open=/usr/libexec/mc/ext.d/sound.sh open midi
shell/i/.wma
Open=/usr/libexec/mc/ext.d/sound.sh open wma
View=%view{ascii} /usr/libexec/mc/ext.d/sound.sh view wma
### Play lists ###
regex/i/\.(m3u|pls)$
Open=/usr/libexec/mc/ext.d/sound.sh open playlist
### Video ###
shell/i/.avi
Include=video
regex/i/\.as[fx]$
Include=video
shell/i/.divx
Include=video
shell/i/.mkv
Include=video
regex/i/\.(mov|qt)$
Include=video
regex/i/\.(mp4|m4v|mpe?g)$
Include=video
# MPEG-2 TS container + H.264 codec
shell/i/.mts
Include=video
shell/i/.ts
Include=video
shell/i/.vob
Include=video
shell/i/.wmv
Include=video
regex/i/\.fl[icv]$
Include=video
shell/i/.ogv
Include=video
regex/i/\.ra?m$
Open=/usr/libexec/mc/ext.d/video.sh open ram
# WebM
shell/i/.webm
Include=video
type/WebM
Include=video
include/video
Open=vlc %p
View=%view{ascii} /usr/libexec/mc/ext.d/video.sh view ALL_FORMATS
### Documents ###
# Postscript
type/^PostScript
Include=zathura
# PDF
type/^PDF
Include=zathura
# DjVu
regex/i/\.djvu?$
Include=zathura
include/zathura
Open=nohup zathura -c %var{SHELLRC:~/.shellrc}/etc/soft/zathura/ -d %var{SHELLRC:~/.shellrc}/etc/soft/zathura/ -p %var{SHELLRC:~/.shellrc}/etc/soft/zathura/plugins %p &>/dev/null &
View=%view{ascii} /usr/libexec/mc/ext.d/doc.sh view djvu
# html
regex/i/\.html?$
Open=/usr/libexec/mc/ext.d/web.sh open html
View=%view{ascii} /usr/libexec/mc/ext.d/web.sh view html
# StarOffice 5.2
shell/.sdw
Open=/usr/libexec/mc/ext.d/doc.sh open ooffice
# StarOffice 6 and OpenOffice.org formats
regex/i/\.(odt|ott|sxw|stw|ods|ots|sxc|stc|odp|otp|sxi|sti|odg|otg|sxd|std|odb|odf|sxm|odm|sxg)$
Open=/usr/libexec/mc/ext.d/doc.sh open ooffice
View=%view{ascii} /usr/libexec/mc/ext.d/doc.sh view odt
# AbiWord
shell/.abw
Open=/usr/libexec/mc/ext.d/doc.sh open abw
# Gnumeric
shell/i/.gnumeric
Open=/usr/libexec/mc/ext.d/doc.sh open gnumeric
# Microsoft Word Document
regex/i/\.(do[ct]|wri)$
Open=/usr/libexec/mc/ext.d/doc.sh open msdoc
View=%view{ascii} /usr/libexec/mc/ext.d/doc.sh view msdoc
type/^Microsoft\ Word
Open=/usr/libexec/mc/ext.d/doc.sh open msdoc
View=%view{ascii} /usr/libexec/mc/ext.d/doc.sh view msdoc
# RTF document
shell/i/.rtf
Open=/usr/libexec/mc/ext.d/doc.sh open msdoc
# Microsoft Excel Worksheet
regex/i/\.xl[sw]$
Open=/usr/libexec/mc/ext.d/doc.sh open msxls
View=%view{ascii} /usr/libexec/mc/ext.d/doc.sh view msxls
type/^Microsoft\ Excel
Open=/usr/libexec/mc/ext.d/doc.sh open msxls
View=%view{ascii} /usr/libexec/mc/ext.d/doc.sh view msxls
regex/i/\.(ppt|pps)$
Open=/usr/libexec/mc/ext.d/doc.sh open msppt
View=%view{ascii} /usr/libexec/mc/ext.d/doc.sh view msppt
# Use OpenOffice.org to open any MS Office documents
type/^Microsoft\ Office\ Document
Open=/usr/libexec/mc/ext.d/doc.sh open ooffice
# Framemaker
type/^FrameMaker
Open=/usr/libexec/mc/ext.d/doc.sh open framemaker
# DVI
shell/i/.dvi
Open=/usr/libexec/mc/ext.d/doc.sh open dvi
View=%view{ascii} /usr/libexec/mc/ext.d/doc.sh view dvi
# TeX
shell/i/.tex
Include=editor
# Comic Books
regex/i/\.cb[zr]$
Open=/usr/libexec/mc/ext.d/doc.sh open comic
# Epub
shell/i/.epub
Open=/usr/libexec/mc/ext.d/doc.sh open epub
View=%view{ascii} /usr/libexec/mc/ext.d/doc.sh view epub
### Miscellaneous ###
# Compiled Java classes
shell/.class
View=%view{ascii} /usr/libexec/mc/ext.d/misc.sh view javaclass
# Makefile
regex/[Mm]akefile$
Open=make -f %f %{Enter parameters}
# Imakefile
shell/Imakefile
Open=/usr/libexec/mc/ext.d/misc.sh open imakefile
# Makefile.PL (MakeMaker)
regex/^Makefile.(PL|pl)$
Open=%var{PERL:perl} %f
# sqlite3.db
type/^SQLite 3.x database
Open=/usr/libexec/mc/ext.d/misc.sh open sqlite
View=%view{ascii} /usr/libexec/mc/ext.d/misc.sh view sqlite
# dbf
shell/i/.dbf
Open=/usr/libexec/mc/ext.d/misc.sh open dbf
View=%view{ascii} /usr/libexec/mc/ext.d/misc.sh view dbf
# REXX script
regex/\.(rexx?|cmd)$
Open=rexx %f %{Enter parameters};echo "Press ENTER";read y
# Disk images for Commodore computers (VIC20, C64, C128)
shell/i/.d64
Open=%cd %p/uc1541://
View=%view{ascii} c1541 %f -list
Extract=c1541 %f -extract
# Glade, a user interface designer for GTK+ and GNOME
shell/i/.glade
Open=/usr/libexec/mc/ext.d/misc.sh open glade
# Gettext Catalogs
shell/.mo
View=%view{ascii} /usr/libexec/mc/ext.d/misc.sh view mo
# lyx
shell/i/.lyx
Open=/usr/libexec/mc/ext.d/misc.sh open lyx
View=%view{ascii} /usr/libexec/mc/ext.d/misc.sh view lyx
# torrent
shell/i/.torrent
View=%view{ascii} /usr/libexec/mc/ext.d/misc.sh view torrent
### Plain compressed files ###
# ace
shell/i/.ace
Open=%cd %p/uace://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view ace
Extract=unace x %f
# arc
shell/i/.arc
Open=%cd %p/uarc://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view arc
Extract=arc x %f '*'
Extract (with flags)=I=%{Enter any Arc flags:}; if test -n "$I"; then arc x $I %f; fi
# zip
type/i/^zip\ archive
Open=%cd %p/uzip://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view zip
# zoo
shell/i/.zoo
Open=%cd %p/uzoo://
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view zoo
# gzip
type/^gzip
Open=/usr/libexec/mc/ext.d/archive.sh view gz %var{PAGER:more}
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view gz
regex/\.(gz|Z)$
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view gz
# bzip2
type/^bzip2
Open=/usr/libexec/mc/ext.d/archive.sh view bzip2 %var{PAGER:more}
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view bz2
regex/\.bz2?$
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view bz2
# bzip
type/^bzip
Open=/usr/libexec/mc/ext.d/archive.sh view bzip %var{PAGER:more}
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view bzip
# compress
type/^compress
Open=/usr/libexec/mc/ext.d/archive.sh view gz %var{PAGER:more}
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view gz
# lzma
regex/\.lzma$
Open=/usr/libexec/mc/ext.d/archive.sh view lzma %var{PAGER:more}
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view lzma
# xz
regex/\.xz$
Open=/usr/libexec/mc/ext.d/archive.sh view xz %var{PAGER:more}
View=%view{ascii} /usr/libexec/mc/ext.d/archive.sh view xz
# Parity Archive
type/^Parity\ Archive\ Volume\ Set
Open=/usr/libexec/mc/ext.d/archive.sh open par2
### Default ###
# Default target for anything not described above
default/*
Open=
View=
### EOF ###

151
etc/soft/mc/skins/dark.ini

@ -0,0 +1,151 @@
[skin]
description=Dark skin
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=lightgray;black
selected=black;cyan
marked=yellow;black
markselect=yellow;cyan
gauge=white;black
input=black;cyan
inputunchanged=gray;cyan
inputmark=cyan;black
disabled=gray;blue
reverse=black;lightgray
commandlinemark=black;lightgray
header=yellow;black
inputhistory=
commandhistory=
[dialog]
_default_=brightcyan;blue
dfocus=blue;cyan
dhotnormal=white;
dhotfocus=white;cyan
dtitle=white;
[error]
_default_=white;red
errdfocus=black;lightgray
errdhotnormal=yellow;red
errdhotfocus=yellow;lightgray
errdtitle=yellow;red
[filehighlight]
directory=white;
executable=brightmagenta;
symlink=lightgray;
hardlink=
stalelink=brightred;
device=brightmagenta;
special=brightblue;
core=red;
temp=gray;
archive=brightgreen;
doc=brown;
source=cyan;
media=green;
graph=brightcyan;
database=brightred;
[menu]
_default_=lightgray;blue
menuhot=white;blue
menusel=black;cyan
menuhotsel=white;cyan
menuinactive=black;white
[help]
_default_=black;lightgray
helpitalic=red;lightgray
helpbold=blue;lightgray
helplink=black;cyan
helpslink=yellow;blue
helptitle=blue;lightgray
[editor]
_default_=lightgray;black
editbold=yellow;brightgreen
editmarked=black;white
editwhitespace=brightblue;black
editlinestate=white;cyan
bookmark=white;red
bookmarkfound=black;green
editrightmargin=white;blue
# editbg=
editframe=gray;
editframeactive=lightgray;
editframedrag=red;
window-state-char =
window-close-char =
[viewer]
viewbold=yellow;black
viewunderline=brightred;black
viewselected=yellow;cyan
[diffviewer]
added=white;green
changedline=blue;cyan
changednew=red;cyan
changed=white;cyan
removed=white;red
folder=blue;black
error=red;white
[buttonbar]
hotkey=red;white
button=black;white
[statusbar]
_default_=black;white
[popupmenu]
_default_=lightgray;blue
menusel=black;cyan
menutitle=lightgray;blue
[widget-common]
sort-sign-up=
sort-sign-down=
[widget-panel]
hiddenfiles-sign-show =
hiddenfiles-sign-hide =
history-prev-item-sign =
history-next-item-sign =
history-show-list-sign =
filename-scroll-left-char = «
filename-scroll-right-char = »
[widget-scollbar]
first-vert-char=
last-vert-char=
first-horiz-char=«
last-horiz-char=»
current-char=
background-char=

150
etc/soft/mc/skins/darkfar.ini

@ -0,0 +1,150 @@
[skin]
description=Dark Far skin
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=lightgray;black
selected=black;cyan
marked=yellow;black
markselect=yellow;cyan
gauge=white;black
input=black;cyan
inputunchanged=gray;cyan
inputmark=cyan;black
disabled=gray;blue
reverse=black;lightgray
commandlinemark=black;lightgray
header=yellow;black
inputhistory=
commandhistory=
[dialog]
_default_=brightcyan;blue
dfocus=blue;cyan
dhotnormal=white;
dhotfocus=white;cyan
dtitle=white;
[error]
_default_=white;red
errdfocus=black;lightgray
errdhotnormal=yellow;red
errdhotfocus=yellow;lightgray
errdtitle=yellow;red
[filehighlight]
directory=white;
executable=brightmagenta;
symlink=lightgray;
hardlink=
stalelink=brightred;
device=brightmagenta;
special=brightblue;
core=red;
temp=gray;
archive=brightgreen;
doc=brown;
source=cyan;
media=green;
graph=brightcyan;
database=brightred;
[menu]
_default_=lightgray;blue
menuhot=white;blue
menusel=black;cyan
menuhotsel=white;cyan
menuinactive=black;white
[help]
_default_=black;lightgray
helpitalic=red;lightgray
helpbold=blue;lightgray
helplink=black;cyan
helpslink=yellow;blue
helptitle=blue;lightgray
[editor]
_default_=lightgray;black
editbold=yellow;brightgreen
editmarked=black;white
editwhitespace=brightblue;black
editlinestate=white;cyan
bookmark=white;red
bookmarkfound=black;green
editrightmargin=white;blue
# editbg=
editframe=gray;
editframeactive=lightgray;
editframedrag=white;
window-state-char =
window-close-char = ×
[viewer]
viewbold=yellow;black
viewunderline=brightred;black
viewselected=yellow;cyan
[diffviewer]
added=white;green
changedline=blue;cyan
changednew=red;cyan
changed=white;cyan
removed=white;red
folder=blue;black
error=red;white
[buttonbar]
hotkey=red;white
button=black;white
[statusbar]
_default_=black;white
[popupmenu]
_default_=lightgray;blue
menusel=black;cyan
menutitle=lightgray;blue
[widget-common]
sort-sign-up=
sort-sign-down=
[widget-panel]
hiddenfiles-sign-show =
hiddenfiles-sign-hide =
history-prev-item-sign =
history-next-item-sign =
history-show-list-sign =
filename-scroll-left-char = «
filename-scroll-right-char = »
[widget-scollbar]
first-vert-char=
last-vert-char=
first-horiz-char=«
last-horiz-char=»
current-char=
background-char=

138
etc/soft/mc/skins/default.ini

@ -0,0 +1,138 @@
[skin]
description=Standard skin
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=lightgray;blue
selected=black;cyan
marked=yellow;blue
markselect=yellow;cyan
gauge=white;black
input=black;cyan
inputunchanged=gray;cyan
inputmark=cyan;black
disabled=gray;lightgray
reverse=black;lightgray
commandlinemark=black;lightgray
header=yellow;blue
inputhistory=
commandhistory=
[dialog]
_default_=black;lightgray
dfocus=black;cyan
dhotnormal=blue;lightgray
dhotfocus=blue;cyan
dtitle=blue;lightgray
[error]
_default_=white;red
errdfocus=black;lightgray
errdhotnormal=yellow;red
errdtitle=yellow;red
errdhotfocus=yellow;lightgray
errdtitle=yellow;red
[filehighlight]
directory=white;
executable=brightgreen;
symlink=lightgray;
hardlink=
stalelink=brightred;
device=brightmagenta;
special=black;
core=red;
temp=gray;
archive=brightmagenta;
doc=brown;
source=cyan;
media=green;
graph=brightcyan;
database=brightred;
[menu]
_default_=white;cyan
menuhot=yellow;cyan
menusel=white;black
menuhotsel=yellow;black
menuinactive=black;cyan
[buttonbar]
hotkey=white;black
button=black;cyan
[statusbar]
_default_=black;cyan
[help]
_default_=black;lightgray
helpitalic=red;lightgray
helpbold=blue;lightgray
helplink=black;cyan
helpslink=yellow;blue
helptitle=blue;lightgray
[editor]
_default_=lightgray;blue
editbold=yellow;brightgreen
editmarked=black;cyan
editwhitespace=brightblue;blue
editlinestate=white;cyan
bookmark=white;red
bookmarkfound=black;green
editrightmargin=brightblue;black
# editbg=lightgray;
# editframe=lightgray;
editframeactive=white;
editframedrag=green;
window-state-char = *
window-close-char = X
[viewer]
viewbold=yellow;blue
viewunderline=brightred;blue
viewselected=yellow;cyan
[diffviewer]
added=white;green
changedline=blue;cyan
changednew=red;cyan
changed=white;cyan
removed=white;red
folder=blue;black
error=red;white
[popupmenu]
_default_=white;cyan
menusel=yellow;black
menutitle=yellow;cyan
[widget-common]
sort-sign-up = '
sort-sign-down = ,
[widget-panel]
filename-scroll-left-char = {
filename-scroll-right-char = }

137
etc/soft/mc/skins/double-lines.ini

@ -0,0 +1,137 @@
[skin]
description=Far-like skin
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=lightgray;blue
selected=black;cyan
marked=yellow;blue
markselect=yellow;cyan
gauge=white;black
input=black;cyan
inputunchanged=gray;cyan
inputmark=cyan;black
commandlinemark=black;lightgray
disabled=gray;lightgray
reverse=black;lightgray
header=yellow;blue
inputhistory=
commandhistory=
[dialog]
_default_=black;lightgray
dfocus=black;cyan
dhotnormal=blue;lightgray
dhotfocus=blue;cyan
dtitle=blue;lightgray
[error]
_default_=white;red
errdfocus=black;lightgray
errdhotnormal=yellow;red
errdhotfocus=yellow;lightgray
errdtitle=yellow;red
[filehighlight]
directory=white;
executable=brightgreen;
symlink=lightgray;
hardlink=
stalelink=brightred;
device=brightmagenta;
special=black;
core=red;
temp=gray;
archive=brightmagenta;
doc=brown;
source=cyan;
media=green;
graph=brightcyan;
database=brightred;
[menu]
_default_=white;cyan
menuhot=yellow;cyan
menusel=white;black
menuhotsel=yellow;black
menuinactive=lightgray;blue
[buttonbar]
hotkey=lightgray;blue
button=lightgray;blue
[statusbar]
_default_=black;cyan
[help]
_default_=black;lightgray
helpitalic=red;lightgray
helpbold=blue;lightgray
helplink=black;cyan
helpslink=yellow;blue
helptitle=blue;lightgray
[editor]
_default_=lightgray;blue
editbold=yellow;brightgreen
editmarked=black;cyan
editwhitespace=brightblue;blue
editlinestate=white;cyan
bookmark=white;red
bookmarkfound=black;green
editrightmargin=brightblue;black
# editbg=
# editframe=
editframeactive=white;
editframedrag=green;
window-state-char = *
window-close-char = X
[viewer]
viewbold=yellow;blue
viewunderline=brightred;blue
viewselected=yellow;cyan
[diffviewer]
added=white;green
changedline=blue;cyan
changednew=red;cyan
changed=white;cyan
removed=white;red
folder=blue;black
error=red;white
[popupmenu]
_default_=white;cyan
menusel=white;black
menutitle=white;cyan
[widget-common]
sort-sign-up = '
sort-sign-down = ,
[widget-panel]
filename-scroll-left-char = {
filename-scroll-right-char = }

156
etc/soft/mc/skins/featured.ini

@ -0,0 +1,156 @@
# Please, use this skin in UTF-8 system codepage only.
[skin]
description=Enhanced standart skin
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=lightgray;blue
selected=black;cyan
marked=yellow;blue
markselect=yellow;cyan
gauge=white;black
input=black;cyan
inputunchanged=gray;cyan
inputmark=cyan;black
disabled=gray;lightgray
reverse=black;lightgray
commandlinemark=black;lightgray
header=yellow;blue
inputhistory=
commandhistory=
[dialog]
_default_=black;lightgray
dfocus=black;cyan
dhotnormal=blue;lightgray
dhotfocus=blue;cyan
dtitle=blue;lightgray
[error]
_default_=white;red
errdfocus=black;lightgray
errdhotnormal=yellow;red
errdhotfocus=yellow;lightgray
errdtitle=yellow;red
[filehighlight]
directory=white;
executable=brightgreen;
symlink=lightgray;
hardlink=
stalelink=brightred;
device=brightmagenta;
special=black;
core=red;
temp=gray;
archive=brightmagenta;
doc=brown;
source=cyan;
media=green;
graph=brightcyan;
database=brightred;
[menu]
_default_=white;cyan
menuhot=yellow;cyan
menusel=white;black
menuhotsel=yellow;black
menuinactive=black;cyan
[buttonbar]
hotkey=white;black
button=black;cyan
[statusbar]
_default_=black;cyan
[help]
_default_=black;lightgray
helpitalic=red;lightgray
helpbold=blue;lightgray
helplink=black;cyan
helpslink=yellow;blue
helptitle=blue;lightgray
[editor]
_default_=lightgray;blue
editbold=yellow;brightgreen
editmarked=black;cyan
editwhitespace=brightblue;blue
editlinestate=white;cyan
bookmark=white;red
bookmarkfound=black;green
editrightmargin=brightblue;black
# editbg=
# editframe=
editframeactive=lightgray;
editframedrag=cyan;
window-state-char =
window-close-char =
[viewer]
viewbold=yellow;blue
viewunderline=brightred;blue
viewselected=yellow;cyan
[diffviewer]
added=white;green
changedline=blue;cyan
changednew=red;cyan
changed=white;cyan
removed=white;red
folder=blue;black
error=red;white
[popupmenu]
_default_=white;cyan
menusel=white;black
menutitle=white;cyan
[widget-common]
sort-sign-up =
sort-sign-down =
[widget-panel]
hiddenfiles-sign-show =
hiddenfiles-sign-hide =
history-prev-item-sign = «
history-next-item-sign = »
history-show-list-sign = ^
filename-scroll-left-char = «
filename-scroll-right-char = »
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=

131
etc/soft/mc/skins/gotar.ini

@ -0,0 +1,131 @@
[skin]
description=GoTaR @PLD Linux
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=lightgray;black
selected=white;blue
marked=brightred;
markselect=yellow;
gauge=;yellow
input=brightgreen;
disabled=gray;blue
reverse=brightgreen;blue
header=brightred;
inputhistory=
commandhistory=
[dialog]
_default_=brightcyan;blue
dfocus=brightred;black
dhotnormal=brightred;
dhotfocus=yellow;black
dtitle=brightred;
[error]
_default_=white;red
errdfocus=brightgreen;blue
errdhotnormal=yellow;
errdhotfocus=yellow;blue
errdtitle=yellow;
[filehighlight]
directory=brightcyan;
executable=brightgreen;
symlink=red;
hardlink=
stalelink=yellow;blue
device=green;
special=brightblue;
core=red;
temp=gray;
archive=cyan;
doc=brown;
source=green;
media=white;
graph=magenta;
database=;
[menu]
_default_=brightgreen;black
menuhot=brightred;
menusel=brightcyan;blue
menuhotsel=yellow;
menuinactive=lightgray;
[buttonbar]
hotkey=lightgray;black
button=white;blue
[statusbar]
_default_=white;blue
[help]
_default_=brightred;black
helpitalic=brightcyan;
helpbold=brightgreen;
helplink=white;
helpslink=yellow;blue
helptitle=brightgreen;
[editor]
_default_=lightgray;black
editbold=yellow;blue
editmarked=brightgreen;red
editwhitespace=brightblue;blue
editlinestate=brightgreen
bookmark=white;red
bookmarkfound=black;green
editrightmargin=brightblue;blue
# editbg=
# editframe=
editframeactive=white;
editframedrag=green;
window-state-char = *
window-close-char = X
[viewer]
viewbold=brightred;black
viewunderline=brightgreen;black
viewselected=yellow;black
[diffviewer]
_default_=lightgray;black
added=brightgreen;
changedline=cyan;
changednew=yellow;
changed=;brown
removed=;blue
folder=brightblue;
error=white;red
[popupmenu]
_default_=brightgreen;black
menusel=brightcyan;blue
menutitle=brightcyan;black
[widget-panel]
filename-scroll-left-char = {
filename-scroll-right-char = }

129
etc/soft/mc/skins/mc46.ini

@ -0,0 +1,129 @@
[skin]
description=mc-4.6 skin
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=lightgray;blue
selected=black;cyan
marked=yellow;blue
markselect=yellow;cyan
gauge=white;black
input=black;cyan
inputunchanged=black;cyan
inputmark=cyan;black
disabled=gray;lightgray
reverse=black;lightgray
commandlinemark=black;lightgray
header=yellow;blue
inputhistory=
commandhistory=
[dialog]
_default_=black;lightgray
dfocus=black;cyan
dhotnormal=blue;lightgray
dhotfocus=blue;cyan
dtitle=blue;lightgray
[error]
_default_=white;red
errdfocus=black;lightgray
errdhotnormal=yellow;red
errdtitle=yellow;red
errdhotfocus=yellow;lightgray
errdtitle=yellow;red
[filehighlight]
directory=white;
executable=brightgreen;
symlink=lightgray;
stalelink=brightred;
device=brightmagenta;
special=black;
[menu]
_default_=black;cyan
menuhot=yellow;cyan
menusel=white;black
menuhotsel=yellow;black
menuinactive=gray;cyan
[buttonbar]
hotkey=lightgray;black
button=black;cyan
[statusbar]
_default_=black;cyan
[help]
_default_=black;lightgray
helpitalic=red;lightgray
helpbold=blue;lightgray
helplink=black;cyan
helpslink=yellow;blue
helptitle=blue;lightgray
[editor]
_default_=lightgray;blue
editbold=yellow;
editmarked=black;cyan
editwhitespace=brightblue;blue
editlinestate=white;cyan
bookmark=white;red
bookmarkfound=black;green
editrightmargin=brightblue;black
# editbg=
# editframe=
editframeactive=lightgray;
editframedrag=cyan;
window-state-char = *
window-close-char = X
[viewer]
viewbold=yellow;blue
viewunderline=brightred;blue
viewselected=yellow;cyan
[diffviewer]
added=white;green
changedline=blue;cyan
changednew=red;cyan
changed=white;cyan
removed=white;red
folder=blue;black
error=red;white
[popupmenu]
_default_=white;cyan
menusel=yellow;black
menutitle=yellow;cyan
[widget-common]
sort-sign-up = '
sort-sign-down = ,
[widget-panel]
filename-scroll-left-char = {
filename-scroll-right-char = }

182
etc/soft/mc/skins/modarcon16-defbg.ini

@ -0,0 +1,182 @@
#
# modarin256: a moderate-dark-independent 256-color skin for MidnightCommander.
#
# This skin is using colors independent from the default 16 terminal colors,
# i.e., no matter how the 16 standard colors are configured, the appearance
# of Midnight Commander will not be affected.
#
# There are 4 variants of this skin:
#
# modarin256
# - default skin, no standard colors used.
#
# modarin256-defbg
# - like modarin256, but using the default background color for core, editor,
# viewer, menu and popupmenu backgrounds, for use with (semi-)transparent
# background colors.
#
# modarin256root
# modarin256root-defbg
# - like the other two skins, but for the root user, with red colors used
# instead of green colors for things like select/focus/statusbar etc.,
# to keep reminding the user that mc is running as root.
#
# Fallback skins for 16-color terminals (poor man's skins):
#
# modarcon16
# modarcon16-defbg
# modarcon16root
# modarcon16root-defbg
# - like everything running in a 16-color terminal, these skins look ugly
# and are no subsitute for the 256-color versions. As some terminals don't
# support using dark gray as background color, i used a black background
# and adjusted the remaining colors accordingly.
#
# 256-color skins require mc version 4.8 or newer.
#
# Author: Oliver Lange <modarin@bloody.in-berlin.de>
#
# Version: 1.2
#
[skin]
description=MoDarCon16-DefaultBG (user)
256colors=false
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=color7;default
selected=color15;color2
marked=color11;;bold
markselect=color11;color2;bold
gauge=color15;color2
input=color15;color0
inputmark=color11;color2;bold
inputunchanged=;color0
commandlinemark=color11;color2;bold
reverse=color0;color10
header=color3
disabled=color8;color7
#inputhistory=
#commandhistory=
[dialog]
_default_=color0;color7
dhotnormal=color3
dfocus=color11;color2;bold
dhotfocus=color3;color2
dtitle=color11;;bold
[error]
_default_=color15;color1
errdfocus=color11;color2;bold
errdhotnormal=color13
errdhotfocus=color13;color2
errdtitle=color11;;bold
[filehighlight]
directory=color15;;bold
executable=color10
symlink=color12
hardlink=
stalelink=color9
device=color13
special=color3
core=color1
temp=color8
archive=color3
doc=color14
source=color6
media=color5
graph=color13
database=color2
[menu]
_default_=color7;default
menuhot=color3
menusel=color11;color2;bold
menuhotsel=color3;color2
menuinactive=color8
[popupmenu]
_default_=color7;default
menusel=color11;color2;bold
menutitle=color11;;bold
[buttonbar]
button=color7
hotkey=color15;color3
[statusbar]
_default_=color15;color2
[help]
_default_=color0;color7
helpitalic=color10;;bold
helpbold=color5
helplink=color14
helpslink=color11;color2;bold
[editor]
_default_=color7;default
editbold=color15;;bold
editmarked=color11;color2;bold
editwhitespace=color12;color4
editlinestate=color2;color0
bookmark=color0;color7
bookmarkfound=color0;color7
editrightmargin=color0;color7
[viewer]
_default_=color7;default
viewunderline=;;underline
[diffviewer]
changedline=color15;color4
changednew=color15;color2
changed=color15;color6
added=color0;color7
removed=color8;color0
folder=color11;color0;bold
error=color15;color1
[widget-common]
sort-sign-up=
sort-sign-down=
[widget-panel]
hiddenfiles-sign-show=
hiddenfiles-sign-hide=
history-prev-item-sign=«
history-next-item-sign=»
history-show-list-sign=^
[widget-scollbar]
first-vert-char=
last-vert-char=
first-horiz-char=«
last-horiz-char=»
current-char=
background-char=

182
etc/soft/mc/skins/modarcon16.ini

@ -0,0 +1,182 @@
#
# modarin256: a moderate-dark-independent 256-color skin for MidnightCommander.
#
# This skin is using colors independent from the default 16 terminal colors,
# i.e., no matter how the 16 standard colors are configured, the appearance
# of Midnight Commander will not be affected.
#
# There are 4 variants of this skin:
#
# modarin256
# - default skin, no standard colors used.
#
# modarin256-defbg
# - like modarin256, but using the default background color for core, editor,
# viewer, menu and popupmenu backgrounds, for use with (semi-)transparent
# background colors.
#
# modarin256root
# modarin256root-defbg
# - like the other two skins, but for the root user, with red colors used
# instead of green colors for things like select/focus/statusbar etc.,
# to keep reminding the user that mc is running as root.
#
# Fallback skins for 16-color terminals (poor man's skins):
#
# modarcon16
# modarcon16-defbg
# modarcon16root
# modarcon16root-defbg
# - like everything running in a 16-color terminal, these skins look ugly
# and are no subsitute for the 256-color versions. As some terminals don't
# support using dark gray as background color, i used a black background
# and adjusted the remaining colors accordingly.
#
# 256-color skins require mc version 4.8 or newer.
#
# Author: Oliver Lange <modarin@bloody.in-berlin.de>
#
# Version: 1.2
#
[skin]
description=MoDarCon16 (user)
256colors=false
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=color7;color0
selected=color15;color2
marked=color11;;bold
markselect=color11;color2;bold
gauge=color15;color2
input=color15
inputmark=color11;color2;bold
inputunchanged=
commandlinemark=color11;color2;bold
reverse=color0;color10
header=color3
disabled=color8;color7
#inputhistory=
#commandhistory=
[dialog]
_default_=color0;color7
dhotnormal=color3
dfocus=color11;color2;bold
dhotfocus=color3;color2
dtitle=color11;;bold
[error]
_default_=color15;color1
errdfocus=color11;color2;bold
errdhotnormal=color13
errdhotfocus=color13;color2
errdtitle=color11;;bold
[filehighlight]
directory=color15;;bold
executable=color10
symlink=color12
hardlink=
stalelink=color9
device=color13
special=color3
core=color1
temp=color8
archive=color3
doc=color14
source=color6
media=color5
graph=color13
database=color2
[menu]
_default_=color0;color7
menuhot=color3
menusel=color11;color2;bold
menuhotsel=color3;color2
menuinactive=color8
[popupmenu]
_default_=color0;color7
menusel=color11;color2;bold
menutitle=color11;;bold
[buttonbar]
button=color7
hotkey=color15;color3
[statusbar]
_default_=color15;color2
[help]
_default_=color0;color7
helpitalic=color10;;bold
helpbold=color5
helplink=color14
helpslink=color11;color2;bold
[editor]
_default_=color7;color0
editbold=color15;;bold
editmarked=color11;color2;bold
editwhitespace=color12;color4
editlinestate=color2;color0
bookmark=color0;color7
bookmarkfound=color0;color7
editrightmargin=color0;color7
[viewer]
_default_=color7;color0
viewunderline=;;underline
[diffviewer]
changedline=color15;color4
changednew=color15;color2
changed=color15;color6
added=color0;color7
removed=color8;color0
folder=color11;color0;bold
error=color15;color1
[widget-common]
sort-sign-up=
sort-sign-down=
[widget-panel]
hiddenfiles-sign-show=
hiddenfiles-sign-hide=
history-prev-item-sign=«
history-next-item-sign=»
history-show-list-sign=^
[widget-scollbar]
first-vert-char=
last-vert-char=
first-horiz-char=«
last-horiz-char=»
current-char=
background-char=

182
etc/soft/mc/skins/modarcon16root-defbg.ini

@ -0,0 +1,182 @@
#
# modarin256: a moderate-dark-independent 256-color skin for MidnightCommander.
#
# This skin is using colors independent from the default 16 terminal colors,
# i.e., no matter how the 16 standard colors are configured, the appearance
# of Midnight Commander will not be affected.
#
# There are 4 variants of this skin:
#
# modarin256
# - default skin, no standard colors used.
#
# modarin256-defbg
# - like modarin256, but using the default background color for core, editor,
# viewer, menu and popupmenu backgrounds, for use with (semi-)transparent
# background colors.
#
# modarin256root
# modarin256root-defbg
# - like the other two skins, but for the root user, with red colors used
# instead of green colors for things like select/focus/statusbar etc.,
# to keep reminding the user that mc is running as root.
#
# Fallback skins for 16-color terminals (poor man's skins):
#
# modarcon16
# modarcon16-defbg
# modarcon16root
# modarcon16root-defbg
# - like everything running in a 16-color terminal, these skins look ugly
# and are no subsitute for the 256-color versions. As some terminals don't
# support using dark gray as background color, i used a black background
# and adjusted the remaining colors accordingly.
#
# 256-color skins require mc version 4.8 or newer.
#
# Author: Oliver Lange <modarin@bloody.in-berlin.de>
#
# Version: 1.2
#
[skin]
description=MoDarCon16root-DefaultBG (root)
256colors=false
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=color7;default
selected=color15;color1
marked=color11;;bold
markselect=color11;color1;bold
gauge=color15;color1
input=color15;color0
inputmark=color11;color1;bold
inputunchanged=;color0
commandlinemark=color11;color1;bold
reverse=color0;color9
header=color3
disabled=color8;color7
#inputhistory=
#commandhistory=
[dialog]
_default_=color0;color7
dhotnormal=color3
dfocus=color11;color1;bold
dhotfocus=color5;color1;bold
dtitle=color11;;bold
[error]
_default_=color15;color1
errdfocus=color11;color3;bold
errdhotnormal=color13
errdhotfocus=color13;color3
errdtitle=color11;;bold
[filehighlight]
directory=color15;;bold
executable=color10
symlink=color12
hardlink=
stalelink=color9
device=color13
special=color3
core=color1
temp=color8
archive=color3
doc=color14
source=color6
media=color5
graph=color13
database=color2
[menu]
_default_=color7;default
menuhot=color3
menusel=color11;color1;bold
menuhotsel=color5;color1;bold
menuinactive=color8
[popupmenu]
_default_=color7;default
menusel=color11;color1;bold
menutitle=color11;;bold
[buttonbar]
button=color7
hotkey=color15;color3
[statusbar]
_default_=color15;color1
[help]
_default_=color0;color7
helpitalic=color10;;bold
helpbold=color5
helplink=color14
helpslink=color11;color1;bold
[editor]
_default_=color7;default
editbold=color15;;bold
editmarked=color11;color1;bold
editwhitespace=color12;color4
editlinestate=color1;color0
bookmark=color0;color7
bookmarkfound=color0;color7
editrightmargin=color0;color7
[viewer]
_default_=color7;default
viewunderline=;;underline
[diffviewer]
changedline=color15;color4
changednew=color15;color5
changed=color15;color3
added=color0;color7
removed=color8;color0
folder=color11;color0;bold
error=color15;color1
[widget-common]
sort-sign-up=
sort-sign-down=
[widget-panel]
hiddenfiles-sign-show=
hiddenfiles-sign-hide=
history-prev-item-sign=«
history-next-item-sign=»
history-show-list-sign=^
[widget-scollbar]
first-vert-char=
last-vert-char=
first-horiz-char=«
last-horiz-char=»
current-char=
background-char=

182
etc/soft/mc/skins/modarcon16root.ini

@ -0,0 +1,182 @@
#
# modarin256: a moderate-dark-independent 256-color skin for MidnightCommander.
#
# This skin is using colors independent from the default 16 terminal colors,
# i.e., no matter how the 16 standard colors are configured, the appearance
# of Midnight Commander will not be affected.
#
# There are 4 variants of this skin:
#
# modarin256
# - default skin, no standard colors used.
#
# modarin256-defbg
# - like modarin256, but using the default background color for core, editor,
# viewer, menu and popupmenu backgrounds, for use with (semi-)transparent
# background colors.
#
# modarin256root
# modarin256root-defbg
# - like the other two skins, but for the root user, with red colors used
# instead of green colors for things like select/focus/statusbar etc.,
# to keep reminding the user that mc is running as root.
#
# Fallback skins for 16-color terminals (poor man's skins):
#
# modarcon16
# modarcon16-defbg
# modarcon16root
# modarcon16root-defbg
# - like everything running in a 16-color terminal, these skins look ugly
# and are no subsitute for the 256-color versions. As some terminals don't
# support using dark gray as background color, i used a black background
# and adjusted the remaining colors accordingly.
#
# 256-color skins require mc version 4.8 or newer.
#
# Author: Oliver Lange <modarin@bloody.in-berlin.de>
#
# Version: 1.2
#
[skin]
description=MoDarCon16root (root)
256colors=false
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=color7;color0
selected=color15;color1
marked=color11;;bold
markselect=color11;color1;bold
gauge=color15;color1
input=color15
inputmark=color11;color1;bold
inputunchanged=
commandlinemark=color11;color1;bold
reverse=color0;color9
header=color3
disabled=color8;color7
#inputhistory=
#commandhistory=
[dialog]
_default_=color0;color7
dhotnormal=color3
dfocus=color11;color1;bold
dhotfocus=color5;color1;bold
dtitle=color11;;bold
[error]
_default_=color15;color1
errdfocus=color11;color3;bold
errdhotnormal=color13
errdhotfocus=color13;color3
errdtitle=color11;;bold
[filehighlight]
directory=color15;;bold
executable=color10
symlink=color12
hardlink=
stalelink=color9
device=color13
special=color3
core=color1
temp=color8
archive=color3
doc=color14
source=color6
media=color5
graph=color13
database=color2
[menu]
_default_=color0;color7
menuhot=color3
menusel=color11;color1;bold
menuhotsel=color5;color1;bold
menuinactive=color8
[popupmenu]
_default_=color0;color7
menusel=color11;color1;bold
menutitle=color11;;bold
[buttonbar]
button=color7
hotkey=color15;color3
[statusbar]
_default_=color15;color1
[help]
_default_=color0;color7
helpitalic=color10;;bold
helpbold=color5
helplink=color14
helpslink=color11;color1;bold
[editor]
_default_=color7;color0
editbold=color15;;bold
editmarked=color11;color1;bold
editwhitespace=color12;color4
editlinestate=color1;color0
bookmark=color0;color7
bookmarkfound=color0;color7
editrightmargin=color0;color7
[viewer]
_default_=color7;color0
viewunderline=;;underline
[diffviewer]
changedline=color15;color4
changednew=color15;color5
changed=color15;color3
added=color0;color7
removed=color8;color0
folder=color11;color0;bold
error=color15;color1
[widget-common]
sort-sign-up=
sort-sign-down=
[widget-panel]
hiddenfiles-sign-show=
hiddenfiles-sign-hide=
history-prev-item-sign=«
history-next-item-sign=»
history-show-list-sign=^
[widget-scollbar]
first-vert-char=
last-vert-char=
first-horiz-char=«
last-horiz-char=»
current-char=
background-char=

182
etc/soft/mc/skins/modarin256-defbg.ini

@ -0,0 +1,182 @@
#
# modarin256: a moderate-dark-independent 256-color skin for MidnightCommander.
#
# This skin is using colors independent from the default 16 terminal colors,
# i.e., no matter how the 16 standard colors are configured, the appearance
# of Midnight Commander will not be affected.
#
# There are 4 variants of this skin:
#
# modarin256
# - default skin, no standard colors used.
#
# modarin256-defbg
# - like modarin256, but using the default background color for core, editor,
# viewer, menu and popupmenu backgrounds, for use with (semi-)transparent
# background colors.
#
# modarin256root
# modarin256root-defbg
# - like the other two skins, but for the root user, with red colors used
# instead of green colors for things like select/focus/statusbar etc.,
# to keep reminding the user that mc is running as root.
#
# Fallback skins for 16-color terminals (poor man's skins):
#
# modarcon16
# modarcon16-defbg
# modarcon16root
# modarcon16root-defbg
# - like everything running in a 16-color terminal, these skins look ugly
# and are no subsitute for the 256-color versions. As some terminals don't
# support using dark gray as background color, i used a black background
# and adjusted the remaining colors accordingly.
#
# 256-color skins require mc version 4.8 or newer.
#
# Author: Oliver Lange <modarin@bloody.in-berlin.de>
#
# Version: 1.2
#
[skin]
description=MoDarIn256-DefaultBG (user)
256colors=true
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=color250;default
selected=color253;color23
marked=color228;;bold
markselect=color228;color23;bold
gauge=color250;color66
input=color187;color235;bold
inputmark=color228;color23;bold
inputunchanged=color144;color235;bold
commandlinemark=color228;color23;bold
reverse=color254;color66
header=color180;;bold
disabled=color246;color239
#inputhistory=
#commandhistory=
[dialog]
_default_=color252;color239
dhotnormal=color214
dfocus=color228;color23;bold
dhotfocus=color214;color23
dtitle=color180;;bold
[error]
_default_=color230;color52
errdfocus=color254;color23;bold
errdhotnormal=color203;color52
errdhotfocus=color203;color23;bold
errdtitle=color227;;bold
[filehighlight]
directory=color144;;bold
executable=color114
symlink=color45
hardlink=
stalelink=color203
device=color170
special=color142
core=color197
temp=color245
archive=color172
doc=color153
source=color109
media=color141
graph=color216
database=color103
[menu]
_default_=color250;default
menuhot=color214
menusel=color253;color23
menuhotsel=color214;color23
menuinactive=color245
[popupmenu]
_default_=color250;default
menusel=color253;color23
menutitle=color180;;bold
[buttonbar]
button=color253;color236
hotkey=color214;color238;bold
[statusbar]
_default_=color253;color66
[help]
_default_=color252;color239
helpitalic=color114;;bold
helpbold=color180;;bold
helplink=color45
helpslink=color228;color23;bold
[editor]
_default_=color250;default
editbold=color228;;bold
editmarked=color228;color23;bold
editwhitespace=color56;color234
editlinestate=color66;color235
bookmark=;color239
bookmarkfound=;color239;bold
editrightmargin=;color235;bold
[viewer]
_default_=color250;default
viewunderline=;;underline
[diffviewer]
changedline=color231;color29
changednew=color232;color78
changed=color231;color39
added=color232;color81
removed=;color234
folder=color232;color185
error=color231;color160
[widget-common]
sort-sign-up=
sort-sign-down=
[widget-panel]
hiddenfiles-sign-show=
hiddenfiles-sign-hide=
history-prev-item-sign=«
history-next-item-sign=»
history-show-list-sign=^
[widget-scollbar]
first-vert-char=
last-vert-char=
first-horiz-char=«
last-horiz-char=»
current-char=
background-char=

182
etc/soft/mc/skins/modarin256.ini

@ -0,0 +1,182 @@
#
# modarin256: a moderate-dark-independent 256-color skin for MidnightCommander.
#
# This skin is using colors independent from the default 16 terminal colors,
# i.e., no matter how the 16 standard colors are configured, the appearance
# of Midnight Commander will not be affected.
#
# There are 4 variants of this skin:
#
# modarin256
# - default skin, no standard colors used.
#
# modarin256-defbg
# - like modarin256, but using the default background color for core, editor,
# viewer, menu and popupmenu backgrounds, for use with (semi-)transparent
# background colors.
#
# modarin256root
# modarin256root-defbg
# - like the other two skins, but for the root user, with red colors used
# instead of green colors for things like select/focus/statusbar etc.,
# to keep reminding the user that mc is running as root.
#
# Fallback skins for 16-color terminals (poor man's skins):
#
# modarcon16
# modarcon16-defbg
# modarcon16root
# modarcon16root-defbg
# - like everything running in a 16-color terminal, these skins look ugly
# and are no subsitute for the 256-color versions. As some terminals don't
# support using dark gray as background color, i used a black background
# and adjusted the remaining colors accordingly.
#
# 256-color skins require mc version 4.8 or newer.
#
# Author: Oliver Lange <modarin@bloody.in-berlin.de>
#
# Version: 1.2
#
[skin]
description=MoDarIn256 (user)
256colors=true
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=color252;color237
selected=color253;color23
marked=color228;;bold
markselect=color228;color23;bold
gauge=color250;color66
input=color187;color235;bold
inputmark=color228;color23;bold
inputunchanged=color144;color235;bold
commandlinemark=color228;color23;bold
reverse=color254;color66
header=color180;;bold
disabled=color246;color239
#inputhistory=
#commandhistory=
[dialog]
_default_=color252;color239
dhotnormal=color214
dfocus=color228;color23;bold
dhotfocus=color214;color23
dtitle=color180;;bold
[error]
_default_=color230;color52
errdfocus=color254;color23;bold
errdhotnormal=color203;color52
errdhotfocus=color203;color23;bold
errdtitle=color227;;bold
[filehighlight]
directory=color144;;bold
executable=color114
symlink=color45
hardlink=
stalelink=color203
device=color170
special=color142
core=color197
temp=color245
archive=color172
doc=color153
source=color109
media=color141
graph=color216
database=color103
[menu]
_default_=color252;color239
menuhot=color214
menusel=color253;color23
menuhotsel=color214;color23
menuinactive=color246
[popupmenu]
_default_=color252;color239
menusel=color253;color23
menutitle=color180;;bold
[buttonbar]
button=color253;color236
hotkey=color214;color238;bold
[statusbar]
_default_=color253;color66
[help]
_default_=color252;color239
helpitalic=color114;;bold
helpbold=color180;;bold
helplink=color45
helpslink=color228;color23;bold
[editor]
_default_=color252;color237
editbold=color228;;bold
editmarked=color228;color23;bold
editwhitespace=color56;color234
editlinestate=color66;color235
bookmark=;color239
bookmarkfound=;color239;bold
editrightmargin=;color235;bold
[viewer]
_default_=color252;color237
viewunderline=;;underline
[diffviewer]
changedline=color231;color29
changednew=color232;color78
changed=color231;color39
added=color232;color81
removed=;color235
folder=color232;color185
error=color231;color160
[widget-common]
sort-sign-up=
sort-sign-down=
[widget-panel]
hiddenfiles-sign-show=
hiddenfiles-sign-hide=
history-prev-item-sign=«
history-next-item-sign=»
history-show-list-sign=^
[widget-scollbar]
first-vert-char=
last-vert-char=
first-horiz-char=«
last-horiz-char=»
current-char=
background-char=

182
etc/soft/mc/skins/modarin256root-defbg.ini

@ -0,0 +1,182 @@
#
# modarin256: a moderate-dark-independent 256-color skin for MidnightCommander.
#
# This skin is using colors independent from the default 16 terminal colors,
# i.e., no matter how the 16 standard colors are configured, the appearance
# of Midnight Commander will not be affected.
#
# There are 4 variants of this skin:
#
# modarin256
# - default skin, no standard colors used.
#
# modarin256-defbg
# - like modarin256, but using the default background color for core, editor,
# viewer, menu and popupmenu backgrounds, for use with (semi-)transparent
# background colors.
#
# modarin256root
# modarin256root-defbg
# - like the other two skins, but for the root user, with red colors used
# instead of green colors for things like select/focus/statusbar etc.,
# to keep reminding the user that mc is running as root.
#
# Fallback skins for 16-color terminals (poor man's skins):
#
# modarcon16
# modarcon16-defbg
# modarcon16root
# modarcon16root-defbg
# - like everything running in a 16-color terminal, these skins look ugly
# and are no subsitute for the 256-color versions. As some terminals don't
# support using dark gray as background color, i used a black background
# and adjusted the remaining colors accordingly.
#
# 256-color skins require mc version 4.8 or newer.
#
# Author: Oliver Lange <modarin@bloody.in-berlin.de>
#
# Version: 1.2
#
[skin]
description=MoDarIn256root-DefaultBG (root)
256colors=true
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=color250;default
selected=color253;color88
marked=color228;;bold
markselect=color228;color88;bold
gauge=color250;color95
input=color187;color235;bold
inputmark=color228;color88;bold
inputunchanged=color144;color235;bold
commandlinemark=color228;color88;bold
reverse=color254;color95
header=color180;;bold
disabled=color246;color239
#inputhistory=
#commandhistory=
[dialog]
_default_=color252;color239
dhotnormal=color214
dfocus=color228;color88;bold
dhotfocus=color214;color88;bold
dtitle=color180;;bold
[error]
_default_=color230;color52
errdfocus=color254;color95;bold
errdhotnormal=color203;color52
errdhotfocus=color203;color95;bold
errdtitle=color227;;bold
[filehighlight]
directory=color144;;bold
executable=color114
symlink=color45
hardlink=
stalelink=color203
device=color170
special=color142
core=color197
temp=color245
archive=color172
doc=color153
source=color109
media=color141
graph=color216
database=color103
[menu]
_default_=color250;default
menuhot=color214
menusel=color253;color88
menuhotsel=color214;color88
menuinactive=color245
[popupmenu]
_default_=color250;default
menusel=color253;color88
menutitle=color180;;bold
[buttonbar]
button=color253;color236
hotkey=color214;color238;bold
[statusbar]
_default_=color254;color95
[help]
_default_=color252;color239
helpitalic=color114;;bold
helpbold=color180;;bold
helplink=color45
helpslink=color228;color88;bold
[editor]
_default_=color250;default
editbold=color228;;bold
editmarked=color228;color88;bold
editwhitespace=color56;color234
editlinestate=color95;color235
bookmark=;color239
bookmarkfound=;color239;bold
editrightmargin=;color235;bold
[viewer]
_default_=color250;default
viewunderline=;;underline
[diffviewer]
changedline=color231;color130
changednew=color232;color208
changed=color231;color96
added=color232;color218
removed=;color234
folder=color232;color185
error=color231;color160
[widget-common]
sort-sign-up=
sort-sign-down=
[widget-panel]
hiddenfiles-sign-show=
hiddenfiles-sign-hide=
history-prev-item-sign=«
history-next-item-sign=»
history-show-list-sign=^
[widget-scollbar]
first-vert-char=
last-vert-char=
first-horiz-char=«
last-horiz-char=»
current-char=
background-char=

182
etc/soft/mc/skins/modarin256root.ini

@ -0,0 +1,182 @@
#
# modarin256: a moderate-dark-independent 256-color skin for MidnightCommander.
#
# This skin is using colors independent from the default 16 terminal colors,
# i.e., no matter how the 16 standard colors are configured, the appearance
# of Midnight Commander will not be affected.
#
# There are 4 variants of this skin:
#
# modarin256
# - default skin, no standard colors used.
#
# modarin256-defbg
# - like modarin256, but using the default background color for core, editor,
# viewer, menu and popupmenu backgrounds, for use with (semi-)transparent
# background colors.
#
# modarin256root
# modarin256root-defbg
# - like the other two skins, but for the root user, with red colors used
# instead of green colors for things like select/focus/statusbar etc.,
# to keep reminding the user that mc is running as root.
#
# Fallback skins for 16-color terminals (poor man's skins):
#
# modarcon16
# modarcon16-defbg
# modarcon16root
# modarcon16root-defbg
# - like everything running in a 16-color terminal, these skins look ugly
# and are no subsitute for the 256-color versions. As some terminals don't
# support using dark gray as background color, i used a black background
# and adjusted the remaining colors accordingly.
#
# 256-color skins require mc version 4.8 or newer.
#
# Author: Oliver Lange <modarin@bloody.in-berlin.de>
#
# Version: 1.2
#
[skin]
description=MoDarIn256root (root)
256colors=true
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=color252;color237
selected=color253;color88
marked=color228;;bold
markselect=color228;color88;bold
gauge=color250;color95
input=color187;color235;bold
inputmark=color228;color88;bold
inputunchanged=color144;color235;bold
commandlinemark=color228;color88;bold
reverse=color254;color95
header=color180;;bold
disabled=color246;color239
#inputhistory=
#commandhistory=
[dialog]
_default_=color252;color239
dhotnormal=color214
dfocus=color228;color88;bold
dhotfocus=color214;color88;bold
dtitle=color180;;bold
[error]
_default_=color230;color52
errdfocus=color254;color95;bold
errdhotnormal=color203;color52
errdhotfocus=color203;color95;bold
errdtitle=color227;;bold
[filehighlight]
directory=color144;;bold
executable=color114
symlink=color45
hardlink=
stalelink=color203
device=color170
special=color142
core=color197
temp=color245
archive=color172
doc=color153
source=color109
media=color141
graph=color216
database=color103
[menu]
_default_=color252;color239
menuhot=color214
menusel=color253;color88
menuhotsel=color214;color88
menuinactive=color246
[popupmenu]
_default_=color252;color239
menusel=color253;color88
menutitle=color180;;bold
[buttonbar]
button=color253;color236
hotkey=color214;color238;bold
[statusbar]
_default_=color254;color95
[help]
_default_=color252;color239
helpitalic=color114;;bold
helpbold=color180;;bold
helplink=color45
helpslink=color228;color88;bold
[editor]
_default_=color252;color237
editbold=color228;;bold
editmarked=color228;color88;bold
editwhitespace=color56;color234
editlinestate=color95;color235
bookmark=;color239
bookmarkfound=;color239;bold
editrightmargin=;color235;bold
[viewer]
_default_=color252;color237
viewunderline=;;underline
[diffviewer]
changedline=color231;color130
changednew=color232;color208
changed=color231;color96
added=color232;color218
removed=;color235
folder=color232;color185
error=color231;color160
[widget-common]
sort-sign-up=
sort-sign-down=
[widget-panel]
hiddenfiles-sign-show=
hiddenfiles-sign-hide=
history-prev-item-sign=«
history-next-item-sign=»
history-show-list-sign=^
[widget-scollbar]
first-vert-char=
last-vert-char=
first-horiz-char=«
last-horiz-char=»
current-char=
background-char=

143
etc/soft/mc/skins/nicedark.ini

@ -0,0 +1,143 @@
[skin]
description=Nice and Dark
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=lightgray;black
selected=lightgray;blue
marked=brown;black
markselect=brown;blue
gauge=black;lightgray
input=lightgray;black
inputunchanged=gray;black
inputmark=black;lightgray
disabled=gray;darkgray
reverse=brown;black
commandlinemark=black;lightgray
header=lightgray;black
inputhistory=
commandhistory=
[dialog]
_default_=lightgray;darkgray
dfocus=lightgray;blue
dhotnormal=brown;darkgray
dhotfocus=brown;blue
dtitle=brown;darkgray
[error]
_default_=red;black
errdfocus=black;red
errdhotnormal=brightred;black
errdhotfocus=brown;red
errdtitle=brown;black
[filehighlight]
directory=blue;
executable=brightgreen;
symlink=gray;
hardlink=
stalelink=brightred;
device=brightmagenta;
special=gray;
core=red;
temp=gray;
archive=magenta;
doc=lightgray;
source=brightcyan;
media=green;
graph=cyan;
database=brightred;
[menu]
_default_=lightgray;black
menuhot=brown;black
menusel=lightgray;blue
menuhotsel=brown;blue
menuinactive=gray;black
[buttonbar]
hotkey=lightgray;blue
button=lightgray;black
[statusbar]
_default_=lightgray;black
[help]
_default_=lightgray;darkgray
helpitalic=red;darkgray
helpbold=brown;darkgray
helplink=blue;darkgray
helpslink=lightgray;blue
helptitle=brown;darkgray
[editor]
_default_=lightgray;darkgray
editbold=brown;blue
editmarked=black;cyan
editwhitespace=brightblue;blue
editlinestate=white;cyan
bookmark=white;red
bookmarkfound=black;green
editrightmargin=brightblue;black
# editbg=
editframe=gray;
editframeactive=lightgray;
editframedrag=brightblue;
window-state-char =
window-close-char =
[viewer]
viewbold=brown;blue
viewunderline=brightred;blue
viewselected=brown;cyan
[diffviewer]
added=white;brown
changedline=blue;cyan
changednew=red;cyan
changed=white;cyan
removed=white;red
folder=blue;black
error=red;white
[popupmenu]
_default_=lightgray;black
menusel=lightgray;blue
menutitle=lightgray;black
[widget-common]
sort-sign-down=
sort-sign-up=
[widget-panel]
hiddenfiles-sign-show =
hiddenfiles-sign-hide =
history-prev-item-sign = «
history-next-item-sign = »
history-show-list-sign = ^
filename-scroll-left-char = «
filename-scroll-right-char = »

201
etc/soft/mc/skins/sand256.ini

@ -0,0 +1,201 @@
# This skin demonstrates how to use 256 colors in mc.
#
# As a prerequisite, you will need to:
# 1) Have a terminal emulator that supports 256 colors (a few examples:
# xterm, Gnome terminal and other VTE derivatives, KDE's Konsole;
# iTerm for Mac OS X, PuTTY for Windows).
# 2) Adjust your TERM variable accordingly, e.g.: export TERM=xterm-256color
# Verify by running tput colors
#
# Each of the 256 colors has two names, you can use whichever you prefer.
#
# One possibility is to use the names "color0" to "color255" to access every
# color directly based on their number.
#
# The first 16 colors ("color0" to "color15") can also be specified by their
# names (these names are already being used by mc for 8/16 color terminals):
# black gray
# red brightred
# green brightgreen
# brown yellow
# blue brightblue
# magenta brightmagenta
# cyan brightcyan
# lightgray white
# Note that with 8/16 color terminal settings (such as TERM=xterm), colors
# of the second column can only be used for the foreground, and their actual
# interpretation varies across terminals. Some terminals show the colors
# from the first column instead (that is, you only have 8 colors), but make
# them bold. Others show the brighter version (16 foreground colors). Yet
# others make them bold and bright at the same time. Switching to 256 colors
# should end this ambiguity: you should have 16 separate colors according to
# their names, none of them are bold by default but any of them can be
# switched to bold, and all of them are available for background, too. This
# is the intended behavior, the actual behavior might vary across terminals.
#
# Colors of the 6x6x6 cube ("color16" to "color231") can alternatively be
# referred to as "rgb000" to "rgb555", all three digits ranging from 0 to 5,
# corresponding to the R, G and B color components.
#
# The 24 grayscale colors ("color232" to "color255") have the aliases "gray0"
# to "gray23".
#
# In addition to the 256 colors, the special word "default" means the
# default foreground or background color of your terminal, while "base" means
# mc's main colors. A missing value means falling back to the _default_ of the
# given section.
#
# Following the foreground and background colors, the third (optional) value
# can specify special attributes to enable. Valid values are bold, underline,
# reverse and blink. Append more with a plus sign, e.g. "underline+bold".
# Leaving the field empty makes it fall back to the attributes of _default_.
# Use any other word (e.g. "none") to prevent fallback and disable all flags.
[skin]
description=Sand skin using 256 colors
256colors=true
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=black;rgb554
selected=;rgb452
marked=rgb400
markselect=rgb400;rgb452
gauge=;rgb452
input=;rgb452
inputunchanged=gray;rgb452
inputmark=rgb452;gray
disabled=gray;rgb553
reverse=;rgb452
commandlinemark=white;gray
header=red
[dialog]
_default_=black;rgb553
dfocus=;rgb452
dhotnormal=;;underline
dhotfocus=;rgb452;underline
dtitle=;;underline
[error]
_default_=rgb554;rgb320;bold
errdfocus=black;rgb452;bold
errdhotnormal=;;bold+underline
errdhotfocus=black;rgb452;bold+underline
errdtitle=;;bold+underline
[filehighlight]
directory=
executable=rgb030
symlink=rgb202
hardlink=
# 404 Not Found :)
stalelink=rgb404
device=rgb231
special=rgb331
core=rgb430
temp=gray15
archive=rgb012
doc=rgb103
source=rgb310
media=rgb024
graph=rgb033
database=rgb421
[menu]
_default_=black;rgb452
menuhot=;;underline
menusel=;rgb551
menuhotsel=;rgb551;underline
menuinactive=
[popupmenu]
_default_=black;rgb553
menusel=;rgb452;underline
menutitle=;;underline
[buttonbar]
hotkey=black;rgb554
button=black;rgb452
[statusbar]
_default_=black;rgb452
[help]
_default_=black;rgb553
helpitalic=green
helpbold=red
helplink=blue;;underline
helpslink=blue;;reverse
[editor]
_default_=black;rgb554
editbold=rgb400
editmarked=;rgb452
editwhitespace=rgb400;rgb553
editlinestate=;rgb553
bookmark=;rgb551
bookmarkfound=;rgb530
editrightmargin=rgb400;rgb553
# editbg=
editframe=rgb530;
editframeactive=black;
editframedrag=rgb400;
window-state-char =
window-close-char =
[viewer]
viewunderline=;;underline
[diffviewer]
added=;rgb450
changedline=blue;rgb553
changednew=rgb400;rgb553
changed=;rgb553
removed=;rgb511
folder=;rgb530
error=rgb554;rgb320
[widget-common]
sort-sign-up =
sort-sign-down =
[widget-panel]
hiddenfiles-sign-show =
hiddenfiles-sign-hide =
history-prev-item-sign = «
history-next-item-sign = »
history-show-list-sign = ^
filename-scroll-left-char = «
filename-scroll-right-char = »
[widget-scollbar]
first-vert-char=
last-vert-char=
first-horiz-char=«
last-horiz-char=»
current-char=
background-char=

192
etc/soft/mc/skins/x.ini

@ -0,0 +1,192 @@
# This is a 256 colors MidnightCommander color scheme
# based on the Xoria256 color scheme for the Vim editor
# (http://www.vim.org/scripts/script.php?script_id=2140)
# Note you'll need mc > 4.7.5 for this scheme to work (256 colors support)
# Hint: compile from the git repository
# Author : Alexander Glyzov (isee@inbox.ru)
# Last Change : Jan 11, 2011
# Special Thanks to Dmitriy Zotikov -- author of the Vim Xoria256 color scheme.
[skin]
description=Xoria256
256colors=true
# [Lines]
# horiz=─
# vert=│
# lefttop=┌
# righttop=┐
# leftbottom=└
# rightbottom=┘
# topmiddle=─
# bottommiddle=─
# leftmiddle=├
# rightmiddle=┤
# cross=┼
# dhoriz=─
# dvert=│
# dlefttop=┌
# drighttop=┐
# dleftbottom=└
# drightbottom=┘
# dtopmiddle=─
# dbottommiddle=─
# dleftmiddle=├
# drightmiddle=┤
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=color250;color234
selected=;color60
marked=color228
markselect=color228;color60
reverse=color234;color250;
header=color180;;bold
gauge=white;black
input=color252;color60;bold
inputunchanged=color250;color60;bold
inputmark=color228;color236;bold
disabled=color244;color250
#inputhistory=
#commandhistory=
#commandlinemark=black;lightgray
[dialog]
_default_=black;color250
dhotnormal=color88;;
dfocus=black;color73;
dhotfocus=color88;color73;
dtitle=color235;;bold
[error]
_default_=white;red
errdfocus=black;lightgray
errdhotnormal=yellow;red
errdhotfocus=yellow;lightgray
errdtitle=yellow;red;bold
[filehighlight]
directory=;;bold
executable=color114
symlink=color180
hardlink=
stalelink=rgb404
device=rgb231
special=rgb331
core=rgb430
temp=color239
archive=color174
doc=rgb033
source=color29
media=color110
graph=color182
database=color31
[menu]
_default_=black;color250
menuhot=color88;;
menusel=black;color73;
menuhotsel=color88;color73;
menuinactive=color244
[popupmenu]
_default_=black;color250
menusel=black;color73
menutitle=;;bold
[buttonbar]
button=black;color250
hotkey=color88;color181;bold
[statusbar]
_default_=black;color250
[help]
_default_=black;color250
helpitalic=color88;;bold
helpbold=color235;;bold
helplink=color19;;
helpslink=black;color73;inverse
[editor]
_default_=color250;color234
editbold=;;bold
editmarked=;color60
editwhitespace=color236;color234
editlinestate=;color235
bookmark=;color239;
bookmarkfound=;color239;bold
editrightmargin=color180;color235;bold
# editbg=
editframe=color244;
editframeactive=color250;
editframedrag=color73;
window-state-char =
window-close-char =
[viewer]
viewunderline=;;underline
[diffviewer]
changedline=;color60
changednew=black;color174
added=black;color181
changed=black;color151
removed=;color235
folder=;color60
error=rgb554;rgb320
[widget-common]
sort-sign-up =
sort-sign-down =
[widget-panel]
hiddenfiles-sign-show =
hiddenfiles-sign-hide =
history-prev-item-sign = «
history-next-item-sign = »
history-show-list-sign = ^
filename-scroll-left-char = «
filename-scroll-right-char = »
[widget-scollbar]
first-vert-char=
last-vert-char=
first-horiz-char=«
last-horiz-char=»
current-char=
background-char=

181
etc/soft/mc/skins/xoria256.ini

@ -0,0 +1,181 @@
# This is a 256 colors MidnightCommander color scheme
# based on the Xoria256 color scheme for the Vim editor
# (http://http://www.vim.org/scripts/script.php?script_id=2140)
# Note you'll need mc >= 4.7.6 for this scheme to work (256 colors support)
# Hint: compile from the git repository
# Author : Alexander Glyzov (isee@inbox.ru)
# Last Change : Jan 11, 2011
# Special Thanks to Dmitriy Zotikov -- author of the Vim Xoria256 color scheme.
[skin]
description=Xoria256
# [Lines]
# horiz=─
# vert=│
# lefttop=┌
# righttop=┐
# leftbottom=└
# rightbottom=┘
# topmiddle=─
# bottommiddle=─
# leftmiddle=├
# rightmiddle=┤
# cross=┼
# dhoriz=─
# dvert=│
# dlefttop=┌
# drighttop=┐
# dleftbottom=└
# drightbottom=┘
# dtopmiddle=─
# dbottommiddle=─
# dleftmiddle=├
# drightmiddle=┤
[Lines]
horiz=
vert=
lefttop=
righttop=
leftbottom=
rightbottom=
topmiddle=
bottommiddle=
leftmiddle=
rightmiddle=
cross=
dhoriz=
dvert=
dlefttop=
drighttop=
dleftbottom=
drightbottom=
dtopmiddle=
dbottommiddle=
dleftmiddle=
drightmiddle=
[core]
_default_=color250;color234
selected=;color60
marked=color228
markselect=color228;color60
reverse=color234;color250;
header=color180;;bold
gauge=white;black
input=color252;color60;bold
inputunchanged=color250;color60;bold
inputmark=color228;color236;bold
disabled=color244;color250
#inputhistory=
#commandhistory=
#commandlinemark=black;lightgray
[dialog]
_default_=black;color250
dhotnormal=color88;;
dfocus=black;color73;
dhotfocus=color88;color73;
dtitle=color235;;bold
[error]
_default_=white;red
errdfocus=black;lightgray
errdhotnormal=yellow;red
errdhotfocus=yellow;lightgray
errdtitle=yellow;red;bold
[filehighlight]
directory=;;bold
executable=color114
symlink=color180
stalelink=rgb404
device=rgb231
special=rgb331
core=rgb430
temp=color239
archive=color174
doc=rgb033
source=color29
media=color110
graph=color182
database=color31
[menu]
_default_=black;color250
menuhot=color88;;
menusel=black;color73;
menuhotsel=color88;color73;
menuinactive=color244
[popupmenu]
_default_=black;color250
menusel=black;color73
menutitle=;;bold
[buttonbar]
button=black;color250
hotkey=color88;color181;bold
[statusbar]
_default_=black;color250
[help]
_default_=black;color250
helpitalic=color88;;bold
helpbold=color235;;bold
helplink=color19;;
helpslink=black;color73;inverse
[editor]
_default_=color250;color234
editbold=;;bold
editmarked=;color60
editwhitespace=color236;color234
editlinestate=;color235
bookmark=;color239;
bookmarkfound=;color239;bold
editrightmargin=color180;color235;bold
[viewer]
viewunderline=;;underline
[diffviewer]
changedline=;color60
changednew=black;color174
added=black;color181
changed=black;color151
removed=;color235
folder=;color60
error=rgb554;rgb320
[widget-common]
sort-sign-up =
sort-sign-down =
[widget-panel]
hiddenfiles-sign-show =
hiddenfiles-sign-hide =
history-prev-item-sign = «
history-next-item-sign = »
history-show-list-sign = ^
[widget-scollbar]
first-vert-char=
last-vert-char=
first-horiz-char=«
last-horiz-char=»
current-char=
background-char=

339
etc/soft/nagelfar/COPYING

@ -0,0 +1,339 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
675 Mass Ave, Cambridge, MA 02139, USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Library General Public License instead.) You can apply it to
your programs, too.
When we speak of free software, we are referring to freedom, not
price. Our General Public Licenses are designed to make sure that you
have the freedom to distribute copies of free software (and charge for
this service if you wish), that you receive source code or can get it
if you want it, that you can change the software or use pieces of it
in new free programs; and that you know you can do these things.
To protect your rights, we need to make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. You must make sure that they, too, receive or can get the
source code. And you must show them these terms so they know their
rights.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute verbatim copies of the Program's
source code as you receive it, in any medium, provided that you
conspicuously and appropriately publish on each copy an appropriate
copyright notice and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the General Public License from time to time. Such new versions will
be similar in spirit to the present version, but may differ in detail to
address new problems or concerns.
Each version is given a distinguishing version number. If the Program
specifies a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
REPAIR OR CORRECTION.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
POSSIBILITY OF SUCH DAMAGES.
END OF TERMS AND CONDITIONS
Appendix: How to Apply These Terms to Your New Programs
If you develop a new program, and you want it to be of the greatest
possible use to the public, the best way to achieve this is to make it
free software which everyone can redistribute and change under these terms.
To do so, attach the following notices to the program. It is safest
to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least
the "copyright" line and a pointer to where the full notice is found.
<one line to give the program's name and a brief idea of what it does.>
Copyright (C) 19yy <name of author>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) 19yy name of author
Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show c' for details.
The hypothetical commands `show w' and `show c' should show the appropriate
parts of the General Public License. Of course, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This General Public License does not permit incorporating your program into
proprietary programs. If your program is a subroutine library, you may
consider it more useful to permit linking proprietary applications with the
library. If this is what you want to do, use the GNU Library General
Public License instead of this License.

1
etc/soft/nagelfar/README.txt

@ -0,0 +1 @@
See doc/README.txt and the other files there for information.

106
etc/soft/nagelfar/doc/README.txt

@ -0,0 +1,106 @@
INSTALLATION
Unpack the distribution whereever you want it and add a link
to nagelfar.tcl from any directory in your path.
The syntax database in the distribution may not be right for your system.
Look in the file syntaxdb.tcl, or in the About window to see the platform
and version it is for. Read syntaxdatabases.txt for more information on
how to generate your own.
REQUIREMENTS
Nagelfar requires Tcl 8.4 or higher.
If you do not have 8.4, you can run Nagelfar as a Starkit
using a 8.4 based Tclkit. http://wiki.tcl.tk/tclkit
Generally it is good to run Nagelfar in a Tcl at least as new the script
is targeted for. In particular, to check 8.5 code with {*} syntax, Nagelfar
must be run with at least 8.5.
USAGE
This tool is both a command line tool and a GUI tool.
Typical usage:
nagelfar.tcl \u003ctcl-file\u003e
For a usage summary:
nagelfar.tcl -h
Multiple files can be checked in one command. In that case the tool
will remember procedures from previous files when checking a file.
GUI
If you start it without arguments or with -gui, you get GUI mode,
provided that Tk can be found.
Nagelfar supports drag&drop if TkDnd is available.
The GUI lists database files and lets you select one to use.
The other list shows files to check. With multiple files all are checked
in the same way as with multiple files on a command line.
You can reorder files with shift-up/down keys, and remove them with delete.
By doubleclicking on an error the file and line is viewed in a simple
editor. You can edit and save the file.
FEEDBACK
Bugs and suggestions can be added to the trackers at:
http://nagelfar.berlios.de/
You can also mail peter.spjuth@gmail.com
(I also accept beer and teddybears, or just a note saying you use the
tool so I get encouraged to work on it.)
GENERATE HEADERS
You can generate a header file to help checking multiple files.
nagelfar.tcl -header \u003cout-file\u003e \u003cfile1\u003e \u003cfile2\u003e
You can then check file1 and get it to recognise procs from file2 too:
nagelfar.tcl \u003cout-file\u003e \u003cfile1\u003e
TODO
The database in syntaxbuild is far from complete when it comes to subcommands.
Handle widgets -command options, bind code and other callbacks
Handle e.g. -textvariable
Handle namespaces and qualified vars better
Everything marked FIXA
Tidy up code structure. Things are getting messy.
A standardized way to handle databases for packages, and loading
them when package require is seen.
Handle namespace import if the namespace is known e.g. from a package db.
Maybe places where a constant list is expected (e.g. foreach {a b} ...)
should be able to recognise [list a b] as a constant list.
Recognise the idiom [list cmd arg arg] as code.
Recognise the idiom [set $var] for double dereferencing.
Option to enforce switch --.
Option to enforce not using "then".
Make a GUI to help working with the database builder. It should
be possible to add packages that should be included in the db.
BUGS
The close brace alignment check should match against the line
with the opening brace, not the start of the command:
cmd xx yy \
apa {
hejsan
}
Line 4: Close brace not aligned with line 1 (4 8)

34
etc/soft/nagelfar/doc/call-by-name.txt

@ -0,0 +1,34 @@
A common source of false warnings have to do with call-by-name.
When analysing a procedure, Nagelfar will detect "upvar" usage and
set up a syntax description accordingly.
Example, the following procedure:
proc Incr {varName val} {
upvar $varName var
set var [expr {$var + $val}]
}
will get the syntax description "v x" where "v" indicates variable name.
There are limitations to this detection though, in that it is neither
100% accurate unless the code is straightforward, and it is only detected
in the second pass of the analysis.
Nagelfar uses two passes when analyzing a file. In the first, only
"namespace eval" and "proc" are analyzed to collect basic information
about procedures. This allows procs to be in any order in the file and
still be checked correctly. However, since procedure bodies are not
processed in the first pass, the "Incr" procedure above will get "x x"
stored as its syntax description and not until the "Incr" is processed
in the second pass it is corrected to "v x".
This means that a procedure like "Incr" above needs to be defined earlier
in the file than it is used, or you have to provide the syntax description
yourself. The latter is also necessary when Nagelfar's automatic detection
doesn't do the right thing.
You provide a syntax description using inline comments
(see doc/inlinecomments.txt). For the example above it would be:
##nagelfar syntax Incr v x

104
etc/soft/nagelfar/doc/codecoverage.txt

@ -0,0 +1,104 @@
<ul>Code Coverage</ul>
Nagelfar has support for doing simple code coverage analysis.
Instrument each file:
nagelfar.tcl -instrument apa.tcl
That creates apa.tcl_i
Make your tests run the instrumented file. If a file is sourced from an
instrumented file, an instrumented version (i.e. one called _i) will be
read if it exists. Thus you only need to adjust the top file being called
from the test, if all other files are accessed through source.
You do not need to keep the instrumented name. You can rename them back
to the original if you cannot use _i or the automatic "source" redirection
for some reason.
The source under test must terminate using the "exit" command. The
instrumentation uses the exit command to produce the result, thus it needs
to be called to work as expected.
If you cannot end your tests with "exit", you can call the internal command
::_instrument_::cleanup manually. Note that this command name is not
guaranteed, so try to use "exit".
Running tests creates apa.tcl_log.
Coverage data is accumulated in the log file so multiple tests can
be run. Make sure the log file is deleted before a rerun.
Create a markup file for displaying result:
nagelfar.tcl -markup apa.tcl
This reads coverage data from apa.tcl_log and creates apa.tcl_m. The markup
file contains markers in blocks that were not run.
See uncovered parts by comparing original with markup in a graphical
diff tool, like eskil:
eskil -noparse apa.tcl apa.tcl_m
<ul>Example</ul>
Nagelfar's testsuite has code like this to automatically run the
instrumented file:
set file nagelfar.tcl
if {[file exists ${file}_i]} {
set file ${file}_i
}
Below is the makefile lines used by Nagelfar to test itself.
# Source files for code coverage
SRCFILES = nagelfar.tcl
IFILES = $(SRCFILES:.tcl=.tcl_i)
LOGFILES = $(SRCFILES:.tcl=.tcl_log)
MFILES = $(SRCFILES:.tcl=.tcl_m)
# Instrument source file for code coverage
%.tcl_i: %.tcl
@./nagelfar.tcl -instrument $<
# Target to prepare for code coverage run. Makes sure log file is clear.
instrument: $(IFILES)
@rm -f $(LOGFILES)
# Run tests to create log file.
$(LOGFILES): $(IFILES)
@./tests/all.tcl $(TESTFLAGS)
# Create markup file for better view of result
%.tcl_m: %.tcl_log
@./nagelfar.tcl -markup $*.tcl
# View code coverage result
icheck: $(MFILES)
@for i in $(SRCFILES) ; do eskil -noparse $$i $${i}_m & done
# Remove code coverage files
clean:
@rm -f $(LOGFILES) $(IFILES) $(MFILES)
<ul>Naming conventions</ul>
When xxx is instrumented, result is called xxx_i.
The "source" command is overloaded to prefer xxx_i if
it exists, when xxx is sourced.
Instrumented files can be renamed to the original before running,
if that is desired.
The log files for xxx_i or xxx is called xxx_log.
At startup any existing log is read, to accumulate info.
The "exit" command is overloaded to call ::_instrument_::cleanup,
which produces the logs. If you cannot end your tests with "exit",
you can call ::_instrument_::cleanup manually. Note that this
command name is not guaranteed, so try to use "exit".
Markup of xxx reads xxx_log and produces xxx_m.

74
etc/soft/nagelfar/doc/inlinecomments.txt

@ -0,0 +1,74 @@
Nagelfar supports having comments inlined to help it check a file.
Whenever \u003cfile\u003e.tcl is checked, any \u003cfile\u003e.syntax is run through
the syntax checker first. Thus you can put your comments in such
a separate file instead of your source if that is not suitable.
A comment should start with "##nagelfar" to be recognised as special.
The comment must be a valid Tcl list.
<ul>Ignoring messages</ul>
##nagelfar ignore ?string?
##nagelfar filter ?string?
These two are equivalent and adds a message filter rule for the line
following it. The string argument will be part of the filter pattern,
which is a glob pattern built like this: "*Line *$line:*$string*"
If the string is preceeded by "N", "W" or "E", anything from that
severity level and down is ignored.
Examples:
##nagelfar ignore
set apa [Miffo a b c]
##nagelfar ignore Unknown variable
set apa [lindex $Gurka 1]
##nagelfar ignore Expr without braces
set apa [expr 1 + 2]
##nagelfar ignore N
Nagelfar also recognises "# PRAGMA: nocheck", which is equivalent to
"##nagelfar ignore", and ignores messages on the next line.
<ul>Specifying variables</ul>
##nagelfar variable name ?type?
This will make "name" a known variable and optionally set its type.
Types are still experimental in Nagelfar. The type "varName" can
be used to tell Nagelfar that a variable contains a variable name,
which suppresses some warnings.
Example:
##nagelfar variable apaName varName
set hejsan [set $apaName]
<ul>Syntax database</ul>
##nagelfar syntax cmd tokens
##nagelfar subcmd cmd subcmds
##nagelfar subcmd+ cmd subcmds
##nagelfar option cmd options
##nagelfar return cmd type
##nagelfar copy from to
All these provides access directly into the syntax database that
usually is loaded from syntaxdb.tcl.
Check syntaxbuild.tcl for more info.
Examples:
##nagelfar syntax binary s x*
##nagelfar subcmd binary format scan
##nagelfar syntax binary\\ scan x x n n*
##nagelfar syntax fcopy x x p*
##nagelfar option fcopy -size -command
Add to subcmd list, e.g. when using namespace ensemble:
##nagelfar subcmd+ string mysubcmd
##nagelfar syntax string\ mysubcmd x x
Copy syntax from command
##nagelfar copy binary mybinary
For more examples, use the database browser to see how the comments
would look like for the commands known in the database.

36
etc/soft/nagelfar/doc/messages.txt

@ -0,0 +1,36 @@
Explanations of some error messages.
"Found constant "x" which is also a variable."
This is the error for detecting missing $.
This is also a common source for false errors. Typically with commands
that use call-by-name, or when using simple variable names.
For example, this will give such a message: $w configure -anchor w
If the constant is within quotes no warning is issued so in the example
above you can get rid of it by doing -anchor "w".
"Could not complete statement."
A valid end of this statement could not be found. This means that
a brace, quote or bracket is missing.
The message may be followed by extra info that can help figure out
what happened.
"Close brace not aligned with line \u003cl\u003e (\u003ci1\u003e \u003ci2\u003e)"
It is assumed that a close brace is indented equally to the line
where its corresponding open brace is (line \u003cl\u003e).
The open brace's indent level is \u003ci1\u003e and the close brace's \u003ci2\u003e.
This error may indicate a brace mismatch, an indentation slip
or just that you have a different indentation style.
"Found non indented close brace that did not end statement. This may
indicate a brace mismatch."
A close brace that is not indented should normally end the
preceeding statement. See also above.
"Close brace first in statement."
A close brace was seen where a command should start.
Typically a brace mismatch.

45
etc/soft/nagelfar/doc/syntaxdatabases.txt

@ -0,0 +1,45 @@
SYNTAX DATABASES
The tool uses a file defining what commands are available and how they
are used. This file is typically called syntaxdb.tcl, and is just a Tcl
file defining variables.
Any file called syntaxdb*.tcl in your current directory or in the
directory where Nagelfar is located is detected and possibly used as
default database unless you specify one on the command line.
The search order for default database is:
syntaxdb.tcl in current directory
syntaxdb*.tcl in current directory (if more than one it is unspecified which)
syntaxdb.tcl where Nagelfar is located
syntaxdb*.tcl where Nagelfar is located
You can select database(s) with the command line switch "-s".
In the GUI, all databases found are listed, and those found where Nagelfar
is located are marked "(app)".
Syntax databases may contain inline comments, so a file generated with
the -header option may be used with -s.
CREATING SYNTAX DATABASES
A syntax database is created by syntaxbuild.tcl which makes
it possible to create customised databases for the interpreter
where your script will run.
For example, if you want to create a database for Tcl8.2:
tclsh82 syntaxbuild.tcl syntaxdb82.tcl
or
tclsh82
% source syntaxbuild.tcl
% buildFile syntaxdb82.tcl
% exit
Then use it:
nagelfar.tcl -s syntaxdb82.tcl \u003ctcl-file\u003e
On Windows it is usually just to double click on syntaxbuild.tcl
and a new syntaxdb.tcl is generated using your installed Tcl version.

67
etc/soft/nagelfar/doc/syntaxtokens.txt

@ -0,0 +1,67 @@
Nagelfar's syntax descriptions for a command consists of little language
describing the arguments to the command.
An entry must be a valid list of tokens as described below.
Check the syntax database (syntaxdb.tcl) or in the database browser in the
gui for examples.
<ul>Tokens</ul>
x Anything, the argument is not checked
o Option, i.e anything starting with -
p Option+Any (p as in option Pair)
s Subcommand
e Expression
E Expression that should be in braces
d Definition. That arg defines a new command.
If followed by =cmd, it copies syntax from cmd.
c Code, checked in surrounding context
cg Code, checked in global context
cn Code, checked in a virtual namespace
cl Code, checked in its own local context
cv Code, checked in its own local context, preceded by variable list
n, v and l all marks variable names. Those arguments will not be
checked against known variables to detect missing $.
n The variable does not have to exist, and is set by the command.
v The variable must exist. It is not marked as set.
l Does not have to exist. It will be marked as known, but not set.
If a token is an integer, just check the number of arguments against
it. This is equivalent to that many "x"es.
r min ?max? Specify a range for number of arguments
<ul>Modifiers</ul>
These apply to some of the tokens.
? Zero or One
* Zero or more
. One or nothing at all
* after x swallows all the rest and must be last
s may only have .
e and c may not have any modifier
<ul>Subcommands</ul>
For commands that have subcommands (as indicated by token "s"),
separate descriptions can be set up for each subcommand.
If a syntax for a subcommand is defined, it is used to check the rest.
##nagelfar syntax string s x x*
##nagelfar syntax string\\ bytelength 1
##nagelfar syntax string\\ compare o* x x
<ul>Different syntax for different number of arguments</ul>
If the first token ends with : it means that there are different syntax
descriptions for different number of arguments. Any token ending
with : starts a syntax for the number of arguments that the number
preceding it says. A lone : starts the default syntax.
Example: "1: x 2: n n : e x*"

3
etc/soft/nagelfar/misctests/test.syntax

@ -0,0 +1,3 @@
# Special syntax definitions for the file test.tcl
##nagelfar syntax copy v n

93
etc/soft/nagelfar/misctests/test.tcl

@ -0,0 +1,93 @@
proc apa {} {
set bepa 1
# Detect missing $
set cepa bepa
# Detect unknown or misspelled variable
set depa $cep
set epa
# Detect bad $
set $depa apa
if {[info exists $cepa]} {
# Detect wrong number of args
set apa bepa cepa
}
# Detect ugly if
if {$bepa == $cepa} {
set hej 1
} elsif {$bepa == $cepa} {
set hej 2
} else {
set hej 3
}
# Detect bad subcommand
info gurka
# Detect bad switch comment
switch $bepa {
hej {
set hej hopp
}
# This is bad
hopp {
# Detect a missing command
miffo
}
}
}
# Test call-by-name handling
# The syntax of this proc is described in
# the file test.syntax
proc copy {srcName dstName} {
upvar $srcName src $dstName dst
set dst $src
}
proc testCopy {} {
set apa 1
# It should not warn about apa below
copy apa bepa
# Bepa should be known now
set cepa $bepa
# Detect $ mistake
copy apa $bepa
copy $apa bepa
}
proc bepa {} {
# Missing quote
set apa "hej hopp
}
# A quote just to fix syntax coloring "
proc cepa {} {
# Missing bracket
set apa [hej hopp
}
proc epa {} {
# Extra close brace
if {[string length apa}} {
set bepa 1
}
}
proc fepa {} {
# Commented brace {
if {[string length apa]} {
set bepa 1
}
}
}
# This should be last in the file, since
# the missing close brace disturbs anything
# after it
proc depa {} {
# Missing close brace
if {[string length apa] {
set bepa 1
}
}

5728
etc/soft/nagelfar/nag

File diff suppressed because it is too large Load Diff

40
etc/soft/nagelfar/nagelfar.syntax

@ -0,0 +1,40 @@
# This is a supplement to the source file nagelfar.tcl to provide
# extra syntax info for it.
# Whenever <file>.tcl is checked, any <file>.syntax is run through
# the syntax checker first.
# Comments of the style below can be included in the source file
# or in a file like this if that is not suitable.
# The syntax tokens (x/v/n etc.) are described in syntaxbuild.tcl
# More info can be found in the doc about inline comments.
# This procedure takes four arguments, the third being a call-by-name
# where the variable is set by the proc. The fourth is a call-by-name
# where the variable should exist before.
##nagelfar syntax parseSubst x x n v
# This procedure takes three arguments, the third being a
# call-by-name where the variable should exist before.
##nagelfar syntax parseBody x x v x?
# Argument 6 and 7 to markVariable is a call-by-name where
# the variable is set by this call and need not exist before.
##nagelfar syntax markVariable x x x x x n n
# This application uses TkDnd but since the standard database usually
# do not know about 'dnd', it is included here to avoid false warnings.
##nagelfar syntax dnd s x*
# The "s" above denotes a subcommand, and those can be listed like this.
##nagelfar subcmd dnd bindtarget cleartarget
# Additional syntax can be defined for a subcommand
##nagelfar syntax dnd\ bindtarget 4

5726
etc/soft/nagelfar/nagelfar.tcl

File diff suppressed because it is too large Load Diff

305
etc/soft/nagelfar/nagelfar_changes

@ -0,0 +1,305 @@
--- ./nag 2010-10-24 00:33:30.000000000 +0600
+++ ./nagelfar.tcl 2010-10-24 00:43:01.000000000 +0600
@@ -317,7 +317,7 @@
if {[string match "##nagelfar *" $str]} {
set rest [string range $str 11 end]
if {[catch {llength $rest}]} {
- errorMsg N "Bad list in ##nagelfar comment" $index
+ errorMsg W "Bad list in ##nagelfar comment" $index
return
}
if {[llength $rest] == 0} return
@@ -380,7 +380,7 @@
}
}
default {
- errorMsg N "Bad type in ##nagelfar comment" $index
+ errorMsg W "Bad type in ##nagelfar comment" $index
return
}
}
@@ -455,7 +455,7 @@
set i $ni
set si2 $i
} else {
- errorMsg N "Standalone {*} can be confusing. I recommend \"*\"." $i
+ errorMsg W "Standalone {*} can be confusing. I recommend \"*\"." $i
}
}
}
@@ -605,7 +605,7 @@
}
set check [info exists option($cmd)]
if {!$check && $::Nagelfar(dbpicky)} {
- errorMsg N "DB: Missing options for command \"$cmd\"" 0
+ errorMsg W "DB: Missing options for command \"$cmd\"" 0
}
set i 0
set used 0
@@ -893,7 +893,7 @@
return ""
}
# FIXA: Use markVariable
- if {![info exists knownVars(known,$var)] && !$::Prefs(noVar)} {
+ if {![info exists knownVars(known,$var)] && !$::Prefs(noVar) && ![regexp {[\w]*::[\w]+} $var]} {
if {[string match "*::*" $var]} {
set tail [namespace tail $var]
set ns [namespace qualifiers $var]
@@ -983,11 +983,11 @@
if {[string equal $c "\]"] && $i == ($len - 1)} {
# Note unescaped bracket at end of word since it's
# likely to mean it should not be there.
- errorMsg N "Unescaped end bracket" [expr {$index + $i}]
+ errorMsg W "Unescaped end bracket" [expr {$index + $i}]
} elseif {[string equal $c "\""] && $i == ($len - 1)} {
# Note unescaped quote at end of word since it's
# likely to mean it should not be there.
- errorMsg N "Unescaped quote" [expr {$index + $i}]
+ errorMsg W "Unescaped quote" [expr {$index + $i}]
}
}
} else {
@@ -1047,7 +1047,7 @@
# Warn if the called command is expr
set body [string range $str $si $i]
if {[string match "expr*" $body]} {
- errorMsg N "Expr called in expression" \
+ errorMsg W "Expr called in expression" \
[expr {$index + $si}]
}
parseBody $body [expr {$index + $si}] knownVars 1
@@ -1089,7 +1089,7 @@
while {[set si [string first \# $word $si]] >= 0} {
# Is it first in a line?
if {[string index $word [expr {$si - 1}]] eq "\n"} {
- errorMsg N "Suspicious \# char. Possibly a bad comment." \
+ errorMsg W "Suspicious \# char. Possibly a bad comment." \
[expr {$index + $si}]
break
}
@@ -1286,7 +1286,7 @@
# corresponding object command
#decho "$tok $tokCount $mod"
if {([lindex $wordstatus $i] & 1) == 0} { # Non constant
- errorMsg N "Non constant definition \"[lindex $argv $i]\".\
+ errorMsg W "Non constant definition \"[lindex $argv $i]\".\
Skipping." [lindex $indices $i]
} else {
set copyFrom [string range $mod 1 end]
@@ -1356,7 +1356,7 @@
# FIXA: Maybe accept substitutions as part of namespace?
foreach ws [lrange $wordstatus $i $iplus2] {
if {($ws & 1) == 0} {
- errorMsg N "Non constant argument to proc \"[lindex $argv $i]\".\
+ errorMsg W "Non constant argument to proc \"[lindex $argv $i]\".\
Skipping." $index
return
}
@@ -1534,7 +1534,7 @@
}
lappend constantsDontCheck $i
if {([lindex $wordstatus $i] & 1) == 0} { # Non constant
- errorMsg N "Non static subcommand to \"$cmd\"" \
+ errorMsg W "Non static subcommand to \"$cmd\"" \
[lindex $indices $i]
} else {
set arg [lindex $argv $i]
@@ -1564,7 +1564,7 @@
}
}
} elseif {$::Nagelfar(dbpicky)} {
- errorMsg N "DB: Missing subcommands for \"$cmd\"" 0
+ errorMsg W "DB: Missing subcommands for \"$cmd\"" 0
}
# Are there any syntax definition for this subcommand?
set sub "$cmd $arg"
@@ -1578,7 +1578,7 @@
set i $argc
break
} elseif {$::Nagelfar(dbpicky)} {
- errorMsg N "DB: Missing syntax for subcommand $sub" 0
+ errorMsg W "DB: Missing syntax for subcommand $sub" 0
}
}
incr i
@@ -1723,7 +1723,7 @@
}
}
if {$wordtype ne "varName"} {
- errorMsg N "Suspicious variable name \"$var\"" $index
+ errorMsg W "Suspicious variable name \"$var\"" $index
}
return 0
}
@@ -1942,7 +1942,7 @@
}
# Detect bracketed command
if {[llength $words2] == 1 && [string index $cmd 0] eq "\["} {
- errorMsg N "Suspicious brackets around command" $index
+ errorMsg W "Suspicious brackets around command" $index
}
return
}
@@ -1987,7 +1987,7 @@
set knownVars(namespace,$var) ""
set knownVars(type,$var) ""
} else {
- errorMsg N "Non constant argument to $cmd: $var" $index
+ errorMsg W "Non constant argument to $cmd: $var" $index
}
}
set noConstantCheck 1
@@ -2022,7 +2022,7 @@
}
lappend constantsDontCheck $i
} else {
- errorMsg N "Non constant argument to $cmd: $var" \
+ errorMsg W "Non constant argument to $cmd: $var" \
$index
}
}
@@ -2057,7 +2057,7 @@
# Assume it is not a level unless odd number of args.
if {$oddA} {
# Warn here? FIXA
- errorMsg N "Non constant level to $cmd: \"$level\"" $index
+ errorMsg W "Non constant level to $cmd: \"$level\"" $index
set hasLevel 1
set level ""
} else {
@@ -2077,7 +2077,7 @@
foreach {other var} $tmp {wsO wsV} $tmpWS {
if {($wsV & 1) == 0} {
# The variable name contains substitutions
- errorMsg N "Suspicious upvar variable \"$var\"" $index
+ errorMsg W "Suspicious upvar variable \"$var\"" $index
} else {
set knownVars(known,$var) 1
set knownVars(type,$var) ""
@@ -2282,7 +2282,7 @@
}
if {[lindex $wordstatus $i] & 1 == 1} {
# First argument to switch is constant, suspiscious
- errorMsg N "String argument to switch is constant" \
+ errorMsg W "String argument to switch is constant" \
[lindex $indices $i]
}
incr i
@@ -2428,7 +2428,7 @@
popNamespace
} else {
if {!$::Nagelfar(firstpass)} { # Messages in second pass
- errorMsg N "Only braced namespace evals are checked." \
+ errorMsg W "Only braced namespace evals are checked." \
[lindex $indices 0]
}
}
@@ -2496,7 +2496,7 @@
$wordtype $indices]
}
} else {
- errorMsg N "No superclass found for 'next'" $index
+ errorMsg W "No superclass found for 'next'" $index
}
}
tailcall {
@@ -2554,7 +2554,7 @@
set type [checkCommand $cmd $index $argv $wordstatus \
$wordtype $indices]
} elseif {$::Nagelfar(dbpicky)} {
- errorMsg N "DB: Missing syntax for command \"$cmd\"" 0
+ errorMsg W "DB: Missing syntax for command \"$cmd\"" 0
}
}
}
@@ -2725,7 +2725,7 @@
if {$tmp != $closeBrace} {
# Only do this if there is a free open brace
if {[regexp "\{\n" $tryline]} {
- errorMsg N "Close brace not aligned with line\
+ errorMsg W "Close brace not aligned with line\
[calcLineNo $index] ($tmp $closeBrace)" \
$closeBraceIx
}
@@ -2743,7 +2743,7 @@
# If it does not end the statement, there is probably a
# brace mismatch.
# When inside a namespace eval block, this is probably ok.
- errorMsg N "Found non indented close brace that did not end\
+ errorMsg W "Found non indented close brace that did not end\
statement." $closeBraceIx
contMsg "This may indicate a brace mismatch."
}
@@ -2820,7 +2820,7 @@
foreach statement [lrange $statements 0 end-1] \
stmtIndex [lrange $indices 0 end-1] {
if {[string index $statement end] eq "\n"} {
- errorMsg N "Newline in command substitution" $stmtIndex
+ errorMsg W "Newline in command substitution" $stmtIndex
break
}
}
@@ -2863,7 +2863,7 @@
if {[llength $a] > 1} {
set seenDefault 1
} elseif {$seenDefault && !$::Nagelfar(firstpass) && $var ne "args"} {
- errorMsg N "Non-default arg after default arg" $indexArgs
+ errorMsg W "Non-default arg after default arg" $indexArgs
# Reset to avoid further messages
set seenDefault 0
}
@@ -2882,14 +2882,14 @@
# Check for non-last "args"
set i [lsearch $procArgs "args"]
if {$i >= 0 && $i != [llength $procArgs] - 1} {
- errorMsg N "Argument 'args' used before last, which can be confusing" \
+ errorMsg W "Argument 'args' used before last, which can be confusing" \
$indexArgs
}
# Check for duplicates
set l1 [lsort $procArgs]
set l2 [lsort -unique $procArgs]
if {$l1 ne $l2} {
- errorMsg N "Duplicate proc arguments" $indexArgs
+ errorMsg W "Duplicate proc arguments" $indexArgs
}
}
}
@@ -3040,7 +3040,7 @@
if {$isMethod} {
set currentObj [currentObject]
if {$currentObj eq ""} {
- errorMsg N "Method definition without a current object" \
+ errorMsg W "Method definition without a current object" \
[lindex $indices 0]
set isMethod 0
} else {
@@ -3317,7 +3317,7 @@
}
if {!$found} {
# Close brace is reported elsewhere
- if {$cmd ne "\}"} {
+ if {$cmd ne "\}" && ![regexp {::} $cmd]} {
# Different messages depending on name
if {[regexp {^(?:(?:[\w',:.]+)|(?:%W))$} $cmd]} {
errorMsg W "Unknown command \"$cmd\"" $index
@@ -3363,7 +3363,7 @@
parseScript $script
if {$i >= 0} {
# Add a note about the Ctrl-Z
- errorMsg N "Aborted script due to end-of-file marker" \
+ errorMsg W "Aborted script due to end-of-file marker" \
[expr {[string length $::instrumenting(script)] - 1}]
}
flushMsg
@@ -3876,9 +3876,7 @@
} else {
foreach f $::Nagelfar(files) {
if {$::Nagelfar(stop)} break
- if {$::Nagelfar(gui) || [llength $::Nagelfar(files)] > 1} {
- set ::currentFile $f
- }
+ set ::currentFile $f
set syntaxfile [file rootname $f].syntax
if {[file exists $syntaxfile]} {
if {!$::Nagelfar(quiet)} {

808
etc/soft/nagelfar/syntaxbuild.tcl

@ -0,0 +1,808 @@
# This script is intended to be run in a Tcl interpreter to extract
# information for the Nagelfar syntax checker.
#
# This file contains hardcoded syntax info for many commands that it
# adds to the resulting syntax database, plus it tries to extract info
# from the interpreter about things like subcommands.
# Autoload stuff to have them available
catch {parray} ; catch {tk_dialog} ; catch {package require msgcat}
foreach gurkmeja [array names auto_index] {
if {[info procs $gurkmeja] == ""} {
catch {eval $auto_index($gurkmeja)}
}
}
if {[info exists gurkmeja]} {
unset gurkmeja
}
# First get some data about the system
set ::kG [lsort [info globals]]
set ::kC [info commands]
foreach pat {{tcl::[a-z]*} {msgcat::[a-z]*} {oo::[a-z]*}} {
foreach p [info commands $pat] {
if {[string match ::* $p]} {
set p [string range $p 2 end]
}
lappend ::kC $p
}
}
# Collect exported namespace commands
if 0 { # Not working yet
set todo [namespace children ::]
while {[llength $todo] > 0} {
set ns [lindex $todo 0]
set todo [lrange $todo 1 end]
eval lappend todo [namespace children $ns]
set exports [namespace eval $ns {namespace export}]
foreach pat $exports {
foreach p [info commands ${ns}::$pat] {
# Do not include the first :: in the name
if {[string match ::* $p]} {
set p [string range $p 2 end]
}
lappend ::kC $p
}
}
}
}
# Function to get an option or subcommand list from an error message.
proc getSubCmds {args} {
catch {uplevel 1 $args} err
lappend regexps {option .* must be (.*)$}
lappend regexps {option .* should be one of (.*)$}
lappend regexps {bad .* must be (.*)$}
lappend regexps {: must be (.*)$}
lappend regexps {: should be (.*)$}
foreach re $regexps {
if {[regexp $re $err -> apa]} {
regsub -all {( or )|(, or )|(, )} $apa " " apa
return [lsort -dictionary [lrange $apa 0 end]]
}
}
#puts "Error '$err' from '$args'"
return {}
}
# Create a syntax description for a procedure
proc createSyntax {procName} {
set args [info args $procName]
set min 0
set unlim 0
if {[lindex $args end] == "args"} {
set unlim 1
}
set i 1
foreach a $args {
if {$a != "args"} {
if {![info default $procName $a dummy]} {
set min $i
}
}
incr i
}
if {$unlim} {
set result "r $min"
} elseif {$min == [llength $args]} {
set result $min
} else {
set result [list r $min [llength $args]]
}
return $result
}
proc markCmdAsKnown {args} {
foreach cmd $args {
if {[lsearch $::kC $cmd] == -1} {
lappend ::kC $cmd
}
}
}
# Build a syntax database and write it to a channel
proc buildDb {ch} {
set patch [info patchlevel]
set ver [package present Tcl]
puts $ch "# Automatically generated syntax database."
puts $ch ""
set useTk [expr {![catch {package present Tk}]}]
set dbstring "Tcl $patch $::tcl_platform(platform)"
if {$useTk} {
append dbstring ", Tk $::tk_patchLevel"
if {![catch {tk windowingsystem}]} {
append dbstring " [tk windowingsystem]"
}
}
# Below is the hardcoded syntax for many core commands.
# It is defined using the "language" below.
# TODO: Add all core commands.
# An entry should be a valid list of tokens as described below.
# If the first token ends with : it means that there are different
# syntax descriptions for different number of arguments.
# Any token ending with : starts a syntax for the number of arguments
# that the number preceding it says. A lone : starts the default syntax.
# Example "1: x 2: n n : e x*"
# If a token is an integer, just check the number of arguments against it.
# r min ?max? Specifies a range for number of arguments
# x Any
# o Option, i.e anything starting with -
# p Option+Any (p as in option Pair)
# s Subcommand
# d Definition. That arg defines a new command
# If followed by =cmd, it copies syntax from cmd.
# e Expression
# E Expression that should be in braces
# c Code, checked in surrounding context
# cg Code, checked in global context
# cn Code, checked in virtual namespace
# cl Code, checked in its own local context
# cv Code, checked in its own local context, preceded by variable list
# n, v and l all marks variable names. Those arguments will not be
# checked against known variables to detect missing $.
# n The variable does not have to exist, and is set by the command.
# v The variable must exist. It is not marked as set.
# l Does not have to exist. It will be marked as known, but not set.
# Modifiers that apply to some of the above
# ? Zero or One
# * Zero or more
# . One or nothing at all
# * after x swallows all the rest and must be last
# s may only have .
# e and c may not have any modifier
# If a syntax for a subcommand is defined, it is used to check the rest
# Syntax for Tcl core commands
set syntax(after) "r 1"
# FIXA: handle after's id/subcommand thing.
set syntax(append) "n x*"
set syntax(array) "s v x?"
set syntax(array\ exists) "l"
set syntax(array\ names) "v x? x?"
set syntax(array\ set) "n x"
set syntax(array\ size) "v"
set syntax(array\ statistics) "v"
set syntax(array\ unset) "l x?"
#set syntax(bgerror) 1
set syntax(binary) "s x*"
set syntax(binary\ scan) "x x n n*"
set syntax(break) 0
set syntax(case) "x*"
set syntax(catch) "c n?"
set syntax(cd) "r 0 1"
set syntax(clock) "s x*"
set syntax(clock\ clicks) "o?"
set syntax(clock\ format) "x p*"
set syntax(clock\ scan) "x p*"
set syntax(clock\ seconds) 0
set syntax(close) 1
set syntax(concat) "r 0"
set syntax(continue) 0
set syntax(encoding) "s x*"
set syntax(encoding\ convertfrom) "r 1 2"
set syntax(encoding\ convertto) "r 1 2"
set syntax(encoding\ names) 0
set syntax(encoding\ system) "r 0 1"
set syntax(eof) 1
set syntax(error) "r 1 3"
set special(eval) 1
set syntax(exec) "o* x x*"
set syntax(exit) "r 0 1"
set special(expr) 1
set syntax(fblocked) 1
set syntax(fconfigure) "x o. x. p*"
set syntax(fcopy) "x x p*"
set syntax(file) "s x*"
set syntax(file\ atime) "x x?"
set syntax(file\ attributes) "x o. x. p*"
set syntax(file\ channels) "x?"
set syntax(file\ copy) "o* x x x*"
set syntax(file\ delete) "o* x x*"
set syntax(file\ dirname) "x"
set syntax(file\ executable) "x"
set syntax(file\ exists) "x"
set syntax(file\ extension) "x"
set syntax(file\ isdirectory) "x"
set syntax(file\ isfile) "x"
set syntax(file\ join) "x x*"
set syntax(file\ link) "o? x x?"
set syntax(file\ lstat) "x n"
set syntax(file\ mkdir) "x x*"
set syntax(file\ mtime) "x x?"
set syntax(file\ nativename) "x"
set syntax(file\ normalize) "x"
set syntax(file\ owned) "x"
set syntax(file\ pathtype) "x"
set syntax(file\ readable) "x"
set syntax(file\ readlink) "x"
set syntax(file\ rename) "o* x x x*"
set syntax(file\ rootname) "x"
set syntax(file\ separator) "x?"
set syntax(file\ size) "x"
set syntax(file\ split) "x"
set syntax(file\ stat) "x n"
set syntax(file\ system) "x"
set syntax(file\ tail) "x"
set syntax(file\ type) "x"
set syntax(file\ volumes) 0
set syntax(file\ writable) "x"
set syntax(fileevent) "x x x?"
set syntax(flush) 1
set syntax(for) "c E c c"
set special(foreach) 1
set syntax(format) "r 1"
set syntax(gets) "x n?"
set syntax(glob) "o* x x*"
set special(global) 1
# "if" is handled specially, but is added here to not disturb header gen.
set syntax(if) "e c"
set syntax(incr) "v x?"
set syntax(info) "s x*" ;# FIXA: All subcommands
set syntax(info\ exists) "l"
set syntax(info\ default) "x x n"
# "interp" is handled specially
set syntax(interp) "s x*"
set syntax(interp\ invokehidden) "x o* x x*"
set syntax(join) "r 1 2"
set syntax(lappend) "n x*"
if {[catch {lindex apa 0 0}]} {
set syntax(lindex) 2 ;# Pre 8.4
} else {
set syntax(lindex) "r 2"
}
set syntax(linsert) "r 3"
set syntax(list) "r 0"
set syntax(llength) 1
set syntax(load) "r 1 3"
set syntax(lrange) 3
set syntax(lreplace) "r 3"
if {[catch {lsearch -all -glob apa bepa}]} {
set syntax(lsearch) "o? x x" ;# Pre 8.4
} else {
set syntax(lsearch) "o* x x"
}
set syntax(lset) "n x x x*"
set syntax(lsort) "o* x"
# "namespace" is handled specially
set syntax(namespace) "s x*" ;# FIXA: All subcommands
set syntax(namespace\ import) "o* x*"
set syntax(namespace\ which) "o* x?"
set option(namespace\ which) "-variable -command"
set option(namespace\ which\ -variable) v
set syntax(open) "r 1 3"
# "package" is handled specially
set syntax(package) "s x*" ;# FIXA: All subcommands
set syntax(pid) "r 0 1"
set syntax(proc) dp
set syntax(puts) "1: x : o? x x?"
set syntax(pwd) 0
set syntax(read) "r 1 2"
set syntax(regexp) "o* x x n*"
set syntax(regsub) "o* x x x n?"
set syntax(rename) 2 ;# Maybe treat rename specially?
set syntax(return) "p* x?"
set syntax(scan) "x x n*"
set syntax(seek) "r 2 3"
set syntax(set) "1: v : n x"
set syntax(socket) "r 2"
set syntax(source) 1
set syntax(split) "r 1 2"
set syntax(string) "s x x*"
set syntax(string\ bytelength) 1
set syntax(string\ compare) "o* x x"
set syntax(string\ equal) "o* x x"
set syntax(string\ first) "r 2 3"
set syntax(string\ index) 2
set syntax(string\ is) "s o* x"
set syntax(string\ last) "r 2 3"
set syntax(string\ length) 1
set syntax(string\ map) "o? x x"
set syntax(string\ match) "o? x x"
set syntax(string\ range) 3
set syntax(string\ repeat) 2
set syntax(string\ replace) "r 3 4"
set syntax(string\ tolower) "r 1 3"
set syntax(string\ totitle) "r 1 3"
set syntax(string\ toupper) "r 1 3"
set syntax(string\ trim) "r 1 2"
set syntax(string\ trimleft) "r 1 2"
set syntax(string\ trimright) "r 1 2"
set syntax(string\ wordend) 2
set syntax(string\ wordstart) 2
set syntax(subst) "o* x"
set special(switch) 1
set syntax(tell) 1
set syntax(time) "c x?"
set syntax(trace) "s x x*"
set syntax(trace\ add) "s x x x"
set syntax(trace\ add\ command) "x x c3"
set syntax(trace\ add\ execution) "x x c2"
set syntax(trace\ add\ variable) "v x c3"
set syntax(trace\ remove) "s x x x"
set syntax(trace\ remove\ command) "x x x"
set syntax(trace\ remove\ execution) "x x x"
set syntax(trace\ remove\ variable) "v x x"
set syntax(trace\ info) "s x x x"
set syntax(trace\ info\ command) "x"
set syntax(trace\ info\ execution) "x"
set syntax(trace\ info\ variable) "v"
set syntax(trace\ variable) "n x x"
set syntax(trace\ vinfo) "l"
set syntax(trace\ vdelete) "v x x"
set syntax(unset) "o* l l*"
set syntax(update) "s."
set special(uplevel) 1
set special(upvar) 1
set special(variable) 1
set syntax(vwait) "n"
set syntax(while) "E c"
# Things added in 8.5
if {[info commands dict] ne ""} {
set syntax(dict) "s x*"
set syntax(dict\ append) "n x x*"
set syntax(dict\ incr) "n x x*"
set syntax(dict\ filter) "x x x"
set syntax(dict\ lappend) "n x x*"
set syntax(dict\ set) "n x x*"
set syntax(dict\ unset) "n x x*"
# FIXA: handle this style:
set syntax(dict\ update) "n x x x* c"
set syntax(dict\ with) "n x* c"
# FIXA: handle variables in dict for
set syntax(dict\ for) "x x c"
# Initialising incr
set syntax(incr) "n x?"
set syntax(lassign) "x n n*"
set syntax(lrepeat) "r 2"
set syntax(lreverse) "1"
set syntax(string\ reverse) "1"
set syntax(unload) "o* x x*"
set syntax(chan) "s x*"
set syntax(chan\ blocked) "x"
set syntax(chan\ close) "x"
set syntax(chan\ configure) "x o. x. p*"
set syntax(chan\ copy) "x x p*"
set syntax(chan\ create) "x x"
set syntax(chan\ eof) "x"
set syntax(chan\ event) "x x cg?"
set syntax(chan\ flush) "x"
set syntax(chan\ gets) "x n?"
set syntax(chan\ names) "x?"
set syntax(chan\ pending) "x x"
set syntax(chan\ postevent) "x x"
set syntax(chan\ puts) "1: x : o? x x?"
set syntax(chan\ read) "x x?"
set syntax(chan\ seek) $syntax(seek)
set syntax(chan\ tell) $syntax(tell)
set syntax(chan\ truncate) "x x?"
set syntax(apply) "x x*"
set syntax(source) "p* x"
set option(interp\ invokehidden\ -namespace) 1
}
# Things added in 8.6
if {[info commands try] ne ""} {
# Changed commands
set syntax(catch) "c n? n?" ;# FIXA make a test for this
set syntax(close) "x x?"
set syntax(chan\ close) "x x?"
set syntax(dict\ filter) "x x x*"
# Do nothing gracefully
set syntax(file\ delete) "o* x*"
set syntax(file\ mkdir) "x*"
set syntax(glob) "o* x*"
set syntax(lassign) "x n*"
set syntax(linsert) "r 2"
set syntax(lrepeat) "r 1"
# New subcommands
set syntax(binary\ decode) "s x*"
set syntax(binary\ decode\ base64) "o* x"
set syntax(binary\ decode\ hex) "o* x"
set syntax(binary\ decode\ uuencode) "o* x"
set syntax(binary\ encode) "s x*"
set syntax(binary\ encode\ base64) "p* x"
set syntax(binary\ encode\ hex) "x"
set syntax(binary\ encode\ uuencode) "p* x"
set syntax(chan\ pipe) 0
set syntax(chan\ pop) "x"
set syntax(chan\ push) "x c"
set syntax(file\ tempfile) "n? x?*"
set syntax(info\ coroutine) 0
set syntax(interp\ cancel) "o* x? x?"
# New commands
set syntax(try) "r 0"
set syntax(throw) "2"
set syntax(coroutine) "x x x*"
set special(tailcall) 1
set special(next) 1
set syntax(yield) "x?"
set syntax(zlib) "s x*"
set syntax(zlib\ adler32) "x x?"
set syntax(zlib\ compress) "x x?"
set syntax(zlib\ crc32) "x x?"
set syntax(zlib\ decompress) "x x?"
set syntax(zlib\ deflate) "x x?"
set syntax(zlib\ gzip) "x p*"
set syntax(zlib\ gunzip) "x p*"
set syntax(zlib\ inflate) "x x?"
set syntax(zlib\ push) "s x*"
set syntax(zlib\ stream) "s x*"
set syntax(tcl::prefix) "s x*"
set syntax(tcl::prefix\ all) "x x"
set syntax(tcl::prefix\ longest) "x x"
set syntax(tcl::prefix\ match) "o* x x"
set option(tcl::prefix\ match\ -message) x
set option(tcl::prefix\ match\ -error) x
set syntax(oo::class) "s x*"
set syntax(oo::class\ create) "do=_stdclass_oo cn?"
set syntax(oo::class\ create::constructor) dk ;# Define constructor
set syntax(oo::class\ create::superclass) di ;# Define inheritance
set syntax(oo::class\ create::method) "dm" ;# Define method
set syntax(oo::class\ create::destructor) c
set syntax(_stdclass_oo) "s x*"
set subCmd(_stdclass_oo) "create new destroy variable"
set syntax(_stdclass_oo\ create) "dc=_obj,_stdclass_oo x?"
set return(_stdclass_oo\ create) _obj,_stdclass_oo
set syntax(_stdclass_oo\ new) 0
set return(_stdclass_oo\ new) _obj,_stdclass_oo
set syntax(_stdclass_oo\ destroy) 0
set syntax(_stdclass_oo\ variable) n*
set syntax(info\ object) "s x x*"
set syntax(info\ class) "s x x*"
set syntax(oo::copy) "x x?"
# FIXA: all oo::define
set syntax(oo::define) "2: x cn : x s x x*"
set syntax(oo::objdefine) "2: x cn : x s x x*"
set syntax(oo::define::method) "x cv"
set syntax(oo::objdefine::method) "x cv"
set syntax(oo::define\ method) "x cv"
set syntax(oo::objdefine\ method) "x cv"
set syntax(oo::define::constructor) "cv"
set syntax(oo::objdefine::constructor) "cv"
set syntax(oo::define\ constructor) "cv"
set syntax(oo::objdefine\ constructor) "cv"
set syntax(oo::define::denstructor) "cl"
set syntax(oo::objdefine::destructor) "cl"
set syntax(oo::define\ destructor) "cl"
set syntax(oo::objdefine\ destructor) "cl"
set syntax(oo::define::forward) "x x x*"
set syntax(oo::objdefine::forward) "x x x*"
set syntax(oo::define::unexport) "x x*"
set syntax(oo::objdefine::unexport) "x x*"
set syntax(oo::object) "s x*" ;# FIXA?
# Set up basic checking of self/my
set syntax(my) "s x*"
set syntax(my\ variable) "n*"
set syntax(self) "s?"
lappend ::kC self my
oo::class create miffo {
constructor {} {
upvar 1 subCmd subCmd
set subCmd(self) [getSubCmds self gurkmeja]
}
}
# Run constructor to get info about self
[miffo new] destroy
# New options
set option(lsort\ -stride) 1
}
# Some special Tcl commands
set syntax(dde) "o? s x*" ;# FIXA: is this correct?
set syntax(history) "s x*"
set syntax(parray) "v x?"
# FIXA: Type checking is still experimental
set return(linsert) list
set return(list) list
set return(llength) int
set return(lrange) list
set return(lreplace) list
set return(lsort) list
# Syntax for Tk commands
if {$useTk} {
set syntax(bell) "o* x*"
set syntax(bind) "x x? cg?"
set syntax(bindtags) "x x?"
set syntax(clipboard) "s x*"
set syntax(console) "r 1"
set syntax(destroy) "x*"
set syntax(event) "s x*"
set syntax(focus) "o? x?"
set syntax(font) "s x*"
set syntax(image) "s x*"
set syntax(grab) "x x*" ;# FIXA, how to check subcommands here?
set syntax(grid) "x x*" ;# FIXA, how to check subcommands here?
set syntax(lower) "x x?"
set syntax(option) "s x*"
set syntax(pack) "x x*"
set syntax(place) "x x*"
set syntax(raise) "x x?"
set syntax(selection) "s x*"
set syntax(send) "o* x x x*"
set syntax(tk) "s x*"
set syntax(tkwait) "s x"
set syntax(tkwait\ variable) "l" ;# Global variable?
set syntax(winfo) "s x x*"
set syntax(wm) "s x x*"
set syntax(tk_chooseColor) "p*"
set syntax(tk_chooseDirectory) "p*"
#set syntax(tk_dialog) "r 6"
set syntax(tk_getOpenFile) "p*"
set syntax(tk_getSaveFile) "p*"
set syntax(tk_messageBox) "p*"
set syntax(tk_popup) "r 3 4"
set syntax(.) "s x*"
set syntax(.\ configure) "o. x. p*"
set syntax(.\ cget) "o"
# FIXA: Starting on better Tk support
set classCmds {frame entry label button checkbutton radiobutton \
listbox labelframe spinbox panedwindow toplevel menu message \
scrollbar text canvas scale menubutton}
# Handle tk::xxx usage
foreach cmd $classCmds {
if {[info commands tk::$cmd] ne ""} {
lappend classCmds tk::$cmd
}
}
if {[info commands ttk::frame] ne ""} {
lappend classCmds ttk::scale ttk::label ttk::panedwindow
lappend classCmds ttk::separator ttk::menubutton
lappend classCmds ttk::entry ttk::radiobutton ttk::frame
lappend classCmds ttk::labelframe ttk::button ttk::sizegrip
lappend classCmds ttk::combobox ttk::notebook
lappend classCmds ttk::progressbar ttk::checkbutton
lappend classCmds ttk::treeview ttk::scrollbar
set syntax(ttk::style) "s x*"
set syntax(ttk::style\ configure) "x o. x. p*"
set syntax(ttk::style\ map) "x p*"
set syntax(ttk::style\ lookup) "r 2 4"
set syntax(ttk::style\ layout) "x x?"
set syntax(ttk::style\ element) "s x*"
set syntax(ttk::style\ element\ create) "x x x*"
set syntax(ttk::style\ element\ names) 0
set syntax(ttk::style\ element\ options) x
set syntax(ttk::style\ theme) "s x*"
set syntax(ttk::style\ theme\ create) "x p*"
set syntax(ttk::style\ theme\ settings) 2
set syntax(ttk::style\ theme\ names) 0
set syntax(ttk::style\ theme\ use) x
set syntax(ttk::themes) x?
set syntax(ttk::setTheme) x
markCmdAsKnown ttk::style ttk::themes ttk::setTheme
}
foreach class $classCmds {
destroy .w
if {[catch {$class .w}]} continue
markCmdAsKnown $class
set syntax($class) "x p*"
set return($class) _obj,$class
set option($class) {}
foreach opt [.w configure] {
set opt [lindex $opt 0]
lappend option($class) $opt
if {[string match *variable $opt]} {
set option($class\ $opt) n
set option(_obj,$class\ configure\ $opt) n
}
}
set syntax(_obj,$class) "s x*"
set subCmd(_obj,$class) [getSubCmds .w gurkmeja]
set syntax(_obj,$class\ configure) "o. x. p*"
set option(_obj,$class\ configure) $option($class)
set syntax(_obj,$class\ cget) "o"
set option(_obj,$class\ cget) $option($class)
switch $class {
listbox {
set syntax(_obj,$class\ selection) "s x x?"
set subCmd(_obj,$class\ selection) \
[getSubCmds .w selection gurkmeja 0]
}
}
}
set option(.\ configure) $option(toplevel)
set option(.\ cget) $option(toplevel)
}
# Build a database of options and subcommands
# subCmd(cmd) contains a list of all allowed subcommands
# Get subcommands for commands that can't use the standard loop below
set subCmd(wm) [getSubCmds wm gurkmeja .]
# Get subcommands for any commands defining "s"
foreach cmd [array names syntax] {
if {[info exists subCmd($cmd)]} continue
set syn $syntax($cmd)
set oi [lsearch -glob $syn "s*"]
if {$oi >= 0} {
set syn [lreplace $syn $oi $oi gurkmeja]
# If the subcmd is after a :, handle it
set ci [lsearch -exact $syn ":"]
if {$ci >= 0 && $ci < $oi} {
set syn [lrange $syn [expr {$ci + 1}] end]
}
set opts [eval getSubCmds $cmd $syn]
if {[llength $opts] > 0} {
set subCmd($cmd) $opts
#puts "AutoSub: $cmd $subCmd($cmd)"
} else {
#puts "Failed AutoSub: $cmd $syn"
}
}
}
# option(cmd) contains a list of all allowed options
# option(cmd subcmd) defines options for subcommands
# Get options for commands that can't use the standard loop below.
set option(switch) [getSubCmds switch -gurkmeja x x]
set option(fconfigure) [getSubCmds fconfigure stdin -gurkmeja]
set option(fcopy) [getSubCmds fcopy stdin stdout -gurkmeja x]
set option(unset) [list -nocomplain --]
set option(clock\ format) [getSubCmds clock format 1 -gurkmeja x]
# Add additonal fconfigure, known for serial channels
lappend option(fconfigure) -mode -handshake -queue -timeout -ttycontrol -ttystatus -xchar -pollinterval -sysbuffer -lasterror
# For socket channels
lappend option(fconfigure) -error -peername -sockname
set option(fconfigure) [lsort -uniq -dictionary $option(fconfigure)]
# Get options for any commands defining "o" or "p"
foreach cmd [array names syntax] {
if {[info exists option($cmd)]} continue
set syn $syntax($cmd)
if {[set i [lsearch -exact $syn ":"]] >= 0} {
# Handle a syn like "1: x : o? x x?"
# Just do the it the simple way of ignoring all but the last
set syn [lrange $syn [expr {$i + 1}] end]
}
set oi [lsearch -glob $syn "o*"]
if {$oi >= 0} {
set syn [lreplace $syn $oi $oi -gurkmeja]
}
set pi [lsearch -glob $syn "p*"]
if {$pi >= 0} {
set syn [lreplace $syn $pi $pi -gurkmeja apa]
}
if {$oi >= 0 || $pi >= 0} {
set opts [eval getSubCmds $cmd $syn]
if {[llength $opts] > 0} {
set option($cmd) $opts
#puts "Autoopt: $cmd $option($cmd)"
} else {
#puts "Failed Autoopt: $cmd"
}
}
}
# A fix since puts still gives an unhelpful error
if {![info exists option(puts)] || [lsearch $option(puts) "-nonewline"] < 0} {
set option(puts) [list -nonewline]
# Also chan puts if present
if {[info exists syntax(chan\ puts)]} {
set option(chan\ puts) [list -nonewline]
}
}
# The default for options is not to take a value unless 'p' is
# used in the syntax definition.
# If option(cmd opt) is set, the option is followed by a value.
# The value of option(cmd opt) may also be any of the syntax chars
# c/n/v/l and will be used to check the option.
set option(lsort\ -index) 1
set option(lsort\ -command) 1
set option(lsearch\ -index) 1
set option(lsearch\ -start) 1
set option(string\ is\ -failindex) n
set option(string\ compare\ -length) 1
set option(string\ equal\ -length) 1
set option(regexp\ -start) 1
set option(regsub\ -start) 1
set option(glob\ -directory) 1
set option(glob\ -path) 1
set option(glob\ -types) 1
set option(send\ -displayof) 1
# Clean up unused options
foreach item [array names option] {
if {[string match "-*" [lindex $item end]]} {
set opt [lindex $item end]
set cmd [lrange $item 0 end-1]
if {[lsearch -exact $option($cmd) $opt] < 0} {
#puts "Deleting option($item)"
unset option($item)
}
}
}
# Build syntax info for procs
foreach apa $::kC {
if {![info exists syntax($apa)]} {
# Is it a proc?
if {[info procs $apa] != ""} {
set syntax($apa) [createSyntax $apa]
} elseif {![info exists special($apa)]} {
# Debug helper
#puts "No syntax defined for cmd '$apa'"
}
}
}
# Output the data
puts $ch [list lappend ::dbInfo $dbstring]
puts $ch [list set ::dbTclVersion $::tcl_version]
puts $ch [list set ::knownGlobals $::kG]
puts $ch [list set ::knownCommands [lsort $::kC]]
foreach a {syntax return subCmd option} {
foreach i [lsort [array names $a]] {
set v [set ${a}($i)]
if {[llength $v] != 0} {
set first [lindex [split $i] 0]
if {![string match _* $first] && \
![string match *::* $first] && \
[lsearch $::kC $first] == -1} {
puts stderr "Skipping ${a}($i) since $i is not known."
} else {
puts $ch [list set ::${a}($i) $v]
}
}
}
puts $ch ""
}
}
# Build a syntax database and write it to a file
proc buildFile {filename} {
set ch [open $filename w]
buildDb $ch
close $ch
}
# This file can be sourced into an interactive interpreter.
# source syntaxbuild.tcl
# buildFile <filename>
if {[info exists tcl_interactive] && !$tcl_interactive} {
if {$argc == 0 && $tcl_platform(platform) == "windows"} {
set argc 1
set argv [list syntaxdb.tcl]
}
if {$argc == 0} {
buildDb stdout
} else {
buildFile [lindex $argv 0]
}
exit
}

934
etc/soft/nagelfar/syntaxdb.tcl

@ -0,0 +1,934 @@
# Automatically generated syntax database.
lappend ::dbInfo {Tcl 8.5.9 unix, Tk 8.5.9 x11}
set ::dbTclVersion 8.5
set ::knownGlobals {argc argv argv0 auto_index auto_path env errorCode errorInfo tcl_interactive tcl_library tcl_nonwordchars tcl_patchLevel tcl_pkgPath tcl_platform tcl_rcFileName tcl_version tcl_wordchars tk_library tk_patchLevel tk_strictMotif tk_version}
set ::knownCommands {. EvalAttached after append apply array auto_execok auto_import auto_load auto_load_index auto_mkindex auto_mkindex_old auto_qualify auto_reset bell bgerror binary bind bindtags break button canvas case catch cd chan checkbutton clipboard clock close concat continue destroy dict encoding entry eof error eval event exec exit expr fblocked fconfigure fcopy file fileevent flush focus font for foreach format frame gets glob global grab grid history if image incr info interp join label labelframe lappend lassign lindex linsert list listbox llength load lower lrange lrepeat lreplace lreverse lsearch lset lsort menu menubutton message msgcat::mc msgcat::mcload msgcat::mclocale msgcat::mcmax msgcat::mcmset msgcat::mcpreferences msgcat::mcset msgcat::mcunknown namespace open option pack package panedwindow parray pid pkg_mkIndex place proc puts pwd radiobutton raise read regexp regsub rename return scale scan scrollbar seek selection send set socket source spinbox split string subst switch tcl::pkgconfig tclListValidFlags tclLog tclParseConfigSpec tclPkgSetup tclPkgUnknown tcl_endOfWord tcl_findLibrary tcl_startOfNextWord tcl_startOfPreviousWord tcl_wordBreakAfter tcl_wordBreakBefore tell text thread_load thread_source time tk tk::button tk::canvas tk::checkbutton tk::entry tk::frame tk::label tk::labelframe tk::listbox tk::menubutton tk::message tk::panedwindow tk::radiobutton tk::scale tk::scrollbar tk::spinbox tk::text tk::toplevel tk_bindForTraversal tk_bisque tk_chooseColor tk_chooseDirectory tk_dialog tk_focusFollowsMouse tk_focusNext tk_focusPrev tk_getFileType tk_getOpenFile tk_getSaveFile tk_menuBar tk_menuSetFocus tk_messageBox tk_optionMenu tk_popup tk_setPalette tk_textCopy tk_textCut tk_textPaste tkwait toplevel trace ttk::button ttk::checkbutton ttk::combobox ttk::entry ttk::frame ttk::label ttk::labelframe ttk::menubutton ttk::notebook ttk::panedwindow ttk::progressbar ttk::radiobutton ttk::scale ttk::scrollbar ttk::separator ttk::setTheme ttk::sizegrip ttk::style ttk::themes ttk::treeview unknown unload unset update uplevel upvar variable vwait while winfo wm}
set ::syntax(.) {s x*}
set {::syntax(. cget)} o
set {::syntax(. configure)} {o. x. p*}
set ::syntax(_obj,button) {s x*}
set {::syntax(_obj,button cget)} o
set {::syntax(_obj,button configure)} {o. x. p*}
set ::syntax(_obj,canvas) {s x*}
set {::syntax(_obj,canvas cget)} o
set {::syntax(_obj,canvas configure)} {o. x. p*}
set ::syntax(_obj,checkbutton) {s x*}
set {::syntax(_obj,checkbutton cget)} o
set {::syntax(_obj,checkbutton configure)} {o. x. p*}
set ::syntax(_obj,entry) {s x*}
set {::syntax(_obj,entry cget)} o
set {::syntax(_obj,entry configure)} {o. x. p*}
set ::syntax(_obj,frame) {s x*}
set {::syntax(_obj,frame cget)} o
set {::syntax(_obj,frame configure)} {o. x. p*}
set ::syntax(_obj,label) {s x*}
set {::syntax(_obj,label cget)} o
set {::syntax(_obj,label configure)} {o. x. p*}
set ::syntax(_obj,labelframe) {s x*}
set {::syntax(_obj,labelframe cget)} o
set {::syntax(_obj,labelframe configure)} {o. x. p*}
set ::syntax(_obj,listbox) {s x*}
set {::syntax(_obj,listbox cget)} o
set {::syntax(_obj,listbox configure)} {o. x. p*}
set {::syntax(_obj,listbox selection)} {s x x?}
set ::syntax(_obj,menu) {s x*}
set {::syntax(_obj,menu cget)} o
set {::syntax(_obj,menu configure)} {o. x. p*}
set ::syntax(_obj,menubutton) {s x*}
set {::syntax(_obj,menubutton cget)} o
set {::syntax(_obj,menubutton configure)} {o. x. p*}
set ::syntax(_obj,message) {s x*}
set {::syntax(_obj,message cget)} o
set {::syntax(_obj,message configure)} {o. x. p*}
set ::syntax(_obj,panedwindow) {s x*}
set {::syntax(_obj,panedwindow cget)} o
set {::syntax(_obj,panedwindow configure)} {o. x. p*}
set ::syntax(_obj,radiobutton) {s x*}
set {::syntax(_obj,radiobutton cget)} o
set {::syntax(_obj,radiobutton configure)} {o. x. p*}
set ::syntax(_obj,scale) {s x*}
set {::syntax(_obj,scale cget)} o
set {::syntax(_obj,scale configure)} {o. x. p*}
set ::syntax(_obj,scrollbar) {s x*}
set {::syntax(_obj,scrollbar cget)} o
set {::syntax(_obj,scrollbar configure)} {o. x. p*}
set ::syntax(_obj,spinbox) {s x*}
set {::syntax(_obj,spinbox cget)} o
set {::syntax(_obj,spinbox configure)} {o. x. p*}
set ::syntax(_obj,text) {s x*}
set {::syntax(_obj,text cget)} o
set {::syntax(_obj,text configure)} {o. x. p*}
set ::syntax(_obj,tk::button) {s x*}
set {::syntax(_obj,tk::button cget)} o
set {::syntax(_obj,tk::button configure)} {o. x. p*}
set ::syntax(_obj,tk::canvas) {s x*}
set {::syntax(_obj,tk::canvas cget)} o
set {::syntax(_obj,tk::canvas configure)} {o. x. p*}
set ::syntax(_obj,tk::checkbutton) {s x*}
set {::syntax(_obj,tk::checkbutton cget)} o
set {::syntax(_obj,tk::checkbutton configure)} {o. x. p*}
set ::syntax(_obj,tk::entry) {s x*}
set {::syntax(_obj,tk::entry cget)} o
set {::syntax(_obj,tk::entry configure)} {o. x. p*}
set ::syntax(_obj,tk::frame) {s x*}
set {::syntax(_obj,tk::frame cget)} o
set {::syntax(_obj,tk::frame configure)} {o. x. p*}
set ::syntax(_obj,tk::label) {s x*}
set {::syntax(_obj,tk::label cget)} o
set {::syntax(_obj,tk::label configure)} {o. x. p*}
set ::syntax(_obj,tk::labelframe) {s x*}
set {::syntax(_obj,tk::labelframe cget)} o
set {::syntax(_obj,tk::labelframe configure)} {o. x. p*}
set ::syntax(_obj,tk::listbox) {s x*}
set {::syntax(_obj,tk::listbox cget)} o
set {::syntax(_obj,tk::listbox configure)} {o. x. p*}
set ::syntax(_obj,tk::menubutton) {s x*}
set {::syntax(_obj,tk::menubutton cget)} o
set {::syntax(_obj,tk::menubutton configure)} {o. x. p*}
set ::syntax(_obj,tk::message) {s x*}
set {::syntax(_obj,tk::message cget)} o
set {::syntax(_obj,tk::message configure)} {o. x. p*}
set ::syntax(_obj,tk::panedwindow) {s x*}
set {::syntax(_obj,tk::panedwindow cget)} o
set {::syntax(_obj,tk::panedwindow configure)} {o. x. p*}
set ::syntax(_obj,tk::radiobutton) {s x*}
set {::syntax(_obj,tk::radiobutton cget)} o
set {::syntax(_obj,tk::radiobutton configure)} {o. x. p*}
set ::syntax(_obj,tk::scale) {s x*}
set {::syntax(_obj,tk::scale cget)} o
set {::syntax(_obj,tk::scale configure)} {o. x. p*}
set ::syntax(_obj,tk::scrollbar) {s x*}
set {::syntax(_obj,tk::scrollbar cget)} o
set {::syntax(_obj,tk::scrollbar configure)} {o. x. p*}
set ::syntax(_obj,tk::spinbox) {s x*}
set {::syntax(_obj,tk::spinbox cget)} o
set {::syntax(_obj,tk::spinbox configure)} {o. x. p*}
set ::syntax(_obj,tk::text) {s x*}
set {::syntax(_obj,tk::text cget)} o
set {::syntax(_obj,tk::text configure)} {o. x. p*}
set ::syntax(_obj,tk::toplevel) {s x*}
set {::syntax(_obj,tk::toplevel cget)} o
set {::syntax(_obj,tk::toplevel configure)} {o. x. p*}
set ::syntax(_obj,toplevel) {s x*}
set {::syntax(_obj,toplevel cget)} o
set {::syntax(_obj,toplevel configure)} {o. x. p*}
set ::syntax(_obj,ttk::button) {s x*}
set {::syntax(_obj,ttk::button cget)} o
set {::syntax(_obj,ttk::button configure)} {o. x. p*}
set ::syntax(_obj,ttk::checkbutton) {s x*}
set {::syntax(_obj,ttk::checkbutton cget)} o
set {::syntax(_obj,ttk::checkbutton configure)} {o. x. p*}
set ::syntax(_obj,ttk::combobox) {s x*}
set {::syntax(_obj,ttk::combobox cget)} o
set {::syntax(_obj,ttk::combobox configure)} {o. x. p*}
set ::syntax(_obj,ttk::entry) {s x*}
set {::syntax(_obj,ttk::entry cget)} o
set {::syntax(_obj,ttk::entry configure)} {o. x. p*}
set ::syntax(_obj,ttk::frame) {s x*}
set {::syntax(_obj,ttk::frame cget)} o
set {::syntax(_obj,ttk::frame configure)} {o. x. p*}
set ::syntax(_obj,ttk::label) {s x*}
set {::syntax(_obj,ttk::label cget)} o
set {::syntax(_obj,ttk::label configure)} {o. x. p*}
set ::syntax(_obj,ttk::labelframe) {s x*}
set {::syntax(_obj,ttk::labelframe cget)} o
set {::syntax(_obj,ttk::labelframe configure)} {o. x. p*}
set ::syntax(_obj,ttk::menubutton) {s x*}
set {::syntax(_obj,ttk::menubutton cget)} o
set {::syntax(_obj,ttk::menubutton configure)} {o. x. p*}
set ::syntax(_obj,ttk::notebook) {s x*}
set {::syntax(_obj,ttk::notebook cget)} o
set {::syntax(_obj,ttk::notebook configure)} {o. x. p*}
set ::syntax(_obj,ttk::panedwindow) {s x*}
set {::syntax(_obj,ttk::panedwindow cget)} o
set {::syntax(_obj,ttk::panedwindow configure)} {o. x. p*}
set ::syntax(_obj,ttk::progressbar) {s x*}
set {::syntax(_obj,ttk::progressbar cget)} o
set {::syntax(_obj,ttk::progressbar configure)} {o. x. p*}
set ::syntax(_obj,ttk::radiobutton) {s x*}
set {::syntax(_obj,ttk::radiobutton cget)} o
set {::syntax(_obj,ttk::radiobutton configure)} {o. x. p*}
set ::syntax(_obj,ttk::scale) {s x*}
set {::syntax(_obj,ttk::scale cget)} o
set {::syntax(_obj,ttk::scale configure)} {o. x. p*}
set ::syntax(_obj,ttk::scrollbar) {s x*}
set {::syntax(_obj,ttk::scrollbar cget)} o
set {::syntax(_obj,ttk::scrollbar configure)} {o. x. p*}
set ::syntax(_obj,ttk::separator) {s x*}
set {::syntax(_obj,ttk::separator cget)} o
set {::syntax(_obj,ttk::separator configure)} {o. x. p*}
set ::syntax(_obj,ttk::sizegrip) {s x*}
set {::syntax(_obj,ttk::sizegrip cget)} o
set {::syntax(_obj,ttk::sizegrip configure)} {o. x. p*}
set ::syntax(_obj,ttk::treeview) {s x*}
set {::syntax(_obj,ttk::treeview cget)} o
set {::syntax(_obj,ttk::treeview configure)} {o. x. p*}
set ::syntax(after) {r 1}
set ::syntax(append) {n x*}
set ::syntax(apply) {x x*}
set ::syntax(array) {s v x?}
set {::syntax(array exists)} l
set {::syntax(array names)} {v x? x?}
set {::syntax(array set)} {n x}
set {::syntax(array size)} v
set {::syntax(array statistics)} v
set {::syntax(array unset)} {l x?}
set ::syntax(auto_execok) 1
set ::syntax(auto_import) 1
set ::syntax(auto_load) {r 1 2}
set ::syntax(auto_load_index) 0
set ::syntax(auto_mkindex) {r 1}
set ::syntax(auto_mkindex_old) {r 1}
set ::syntax(auto_qualify) 2
set ::syntax(auto_reset) 0
set ::syntax(bell) {o* x*}
set ::syntax(bgerror) 1
set ::syntax(binary) {s x*}
set {::syntax(binary scan)} {x x n n*}
set ::syntax(bind) {x x? cg?}
set ::syntax(bindtags) {x x?}
set ::syntax(break) 0
set ::syntax(button) {x p*}
set ::syntax(canvas) {x p*}
set ::syntax(case) x*
set ::syntax(catch) {c n?}
set ::syntax(cd) {r 0 1}
set ::syntax(chan) {s x*}
set {::syntax(chan blocked)} x
set {::syntax(chan close)} x
set {::syntax(chan configure)} {x o. x. p*}
set {::syntax(chan copy)} {x x p*}
set {::syntax(chan create)} {x x}
set {::syntax(chan eof)} x
set {::syntax(chan event)} {x x cg?}
set {::syntax(chan flush)} x
set {::syntax(chan gets)} {x n?}
set {::syntax(chan names)} x?
set {::syntax(chan pending)} {x x}
set {::syntax(chan postevent)} {x x}
set {::syntax(chan puts)} {1: x : o? x x?}
set {::syntax(chan read)} {x x?}
set {::syntax(chan seek)} {r 2 3}
set {::syntax(chan tell)} 1
set {::syntax(chan truncate)} {x x?}
set ::syntax(checkbutton) {x p*}
set ::syntax(clipboard) {s x*}
set ::syntax(clock) {s x*}
set {::syntax(clock clicks)} o?
set {::syntax(clock format)} {x p*}
set {::syntax(clock scan)} {x p*}
set {::syntax(clock seconds)} 0
set ::syntax(close) 1
set ::syntax(concat) {r 0}
set ::syntax(continue) 0
set ::syntax(destroy) x*
set ::syntax(dict) {s x*}
set {::syntax(dict append)} {n x x*}
set {::syntax(dict filter)} {x x x}
set {::syntax(dict for)} {x x c}
set {::syntax(dict incr)} {n x x*}
set {::syntax(dict lappend)} {n x x*}
set {::syntax(dict set)} {n x x*}
set {::syntax(dict unset)} {n x x*}
set {::syntax(dict update)} {n x x x* c}
set {::syntax(dict with)} {n x* c}
set ::syntax(encoding) {s x*}
set {::syntax(encoding convertfrom)} {r 1 2}
set {::syntax(encoding convertto)} {r 1 2}
set {::syntax(encoding names)} 0
set {::syntax(encoding system)} {r 0 1}
set ::syntax(entry) {x p*}
set ::syntax(eof) 1
set ::syntax(error) {r 1 3}
set ::syntax(event) {s x*}
set ::syntax(exec) {o* x x*}
set ::syntax(exit) {r 0 1}
set ::syntax(fblocked) 1
set ::syntax(fconfigure) {x o. x. p*}
set ::syntax(fcopy) {x x p*}
set ::syntax(file) {s x*}
set {::syntax(file atime)} {x x?}
set {::syntax(file attributes)} {x o. x. p*}
set {::syntax(file channels)} x?
set {::syntax(file copy)} {o* x x x*}
set {::syntax(file delete)} {o* x x*}
set {::syntax(file dirname)} x
set {::syntax(file executable)} x
set {::syntax(file exists)} x
set {::syntax(file extension)} x
set {::syntax(file isdirectory)} x
set {::syntax(file isfile)} x
set {::syntax(file join)} {x x*}
set {::syntax(file link)} {o? x x?}
set {::syntax(file lstat)} {x n}
set {::syntax(file mkdir)} {x x*}
set {::syntax(file mtime)} {x x?}
set {::syntax(file nativename)} x
set {::syntax(file normalize)} x
set {::syntax(file owned)} x
set {::syntax(file pathtype)} x
set {::syntax(file readable)} x
set {::syntax(file readlink)} x
set {::syntax(file rename)} {o* x x x*}
set {::syntax(file rootname)} x
set {::syntax(file separator)} x?
set {::syntax(file size)} x
set {::syntax(file split)} x
set {::syntax(file stat)} {x n}
set {::syntax(file system)} x
set {::syntax(file tail)} x
set {::syntax(file type)} x
set {::syntax(file volumes)} 0
set {::syntax(file writable)} x
set ::syntax(fileevent) {x x x?}
set ::syntax(flush) 1
set ::syntax(focus) {o? x?}
set ::syntax(font) {s x*}
set ::syntax(for) {c E c c}
set ::syntax(format) {r 1}
set ::syntax(frame) {x p*}
set ::syntax(gets) {x n?}
set ::syntax(glob) {o* x x*}
set ::syntax(grab) {x x*}
set ::syntax(grid) {x x*}
set ::syntax(history) {s x*}
set ::syntax(if) {e c}
set ::syntax(image) {s x*}
set ::syntax(incr) {n x?}
set ::syntax(info) {s x*}
set {::syntax(info default)} {x x n}
set {::syntax(info exists)} l
set ::syntax(interp) {s x*}
set {::syntax(interp invokehidden)} {x o* x x*}
set ::syntax(join) {r 1 2}
set ::syntax(label) {x p*}
set ::syntax(labelframe) {x p*}
set ::syntax(lappend) {n x*}
set ::syntax(lassign) {x n n*}
set ::syntax(lindex) {r 2}
set ::syntax(linsert) {r 3}
set ::syntax(list) {r 0}
set ::syntax(listbox) {x p*}
set ::syntax(llength) 1
set ::syntax(load) {r 1 3}
set ::syntax(lower) {x x?}
set ::syntax(lrange) 3
set ::syntax(lrepeat) {r 2}
set ::syntax(lreplace) {r 3}
set ::syntax(lreverse) 1
set ::syntax(lsearch) {o* x x}
set ::syntax(lset) {n x x x*}
set ::syntax(lsort) {o* x}
set ::syntax(menu) {x p*}
set ::syntax(menubutton) {x p*}
set ::syntax(message) {x p*}
set ::syntax(msgcat::mc) {r 1}
set ::syntax(msgcat::mcload) 1
set ::syntax(msgcat::mclocale) {r 0}
set ::syntax(msgcat::mcmax) {r 0}
set ::syntax(msgcat::mcmset) 2
set ::syntax(msgcat::mcpreferences) 0
set ::syntax(msgcat::mcset) {r 2 3}
set ::syntax(msgcat::mcunknown) {r 2}
set ::syntax(namespace) {s x*}
set {::syntax(namespace import)} {o* x*}
set {::syntax(namespace which)} {o* x?}
set ::syntax(open) {r 1 3}
set ::syntax(option) {s x*}
set ::syntax(pack) {x x*}
set ::syntax(package) {s x*}
set ::syntax(panedwindow) {x p*}
set ::syntax(parray) {v x?}
set ::syntax(pid) {r 0 1}
set ::syntax(pkg_mkIndex) {r 0}
set ::syntax(place) {x x*}
set ::syntax(proc) dp
set ::syntax(puts) {1: x : o? x x?}
set ::syntax(pwd) 0
set ::syntax(radiobutton) {x p*}
set ::syntax(raise) {x x?}
set ::syntax(read) {r 1 2}
set ::syntax(regexp) {o* x x n*}
set ::syntax(regsub) {o* x x x n?}
set ::syntax(rename) 2
set ::syntax(return) {p* x?}
set ::syntax(scale) {x p*}
set ::syntax(scan) {x x n*}
set ::syntax(scrollbar) {x p*}
set ::syntax(seek) {r 2 3}
set ::syntax(selection) {s x*}
set ::syntax(send) {o* x x x*}
set ::syntax(set) {1: v : n x}
set ::syntax(socket) {r 2}
set ::syntax(source) {p* x}
set ::syntax(spinbox) {x p*}
set ::syntax(split) {r 1 2}
set ::syntax(string) {s x x*}
set {::syntax(string bytelength)} 1
set {::syntax(string compare)} {o* x x}
set {::syntax(string equal)} {o* x x}
set {::syntax(string first)} {r 2 3}
set {::syntax(string index)} 2
set {::syntax(string is)} {s o* x}
set {::syntax(string last)} {r 2 3}
set {::syntax(string length)} 1
set {::syntax(string map)} {o? x x}
set {::syntax(string match)} {o? x x}
set {::syntax(string range)} 3
set {::syntax(string repeat)} 2
set {::syntax(string replace)} {r 3 4}
set {::syntax(string reverse)} 1
set {::syntax(string tolower)} {r 1 3}
set {::syntax(string totitle)} {r 1 3}
set {::syntax(string toupper)} {r 1 3}
set {::syntax(string trim)} {r 1 2}
set {::syntax(string trimleft)} {r 1 2}
set {::syntax(string trimright)} {r 1 2}
set {::syntax(string wordend)} 2
set {::syntax(string wordstart)} 2
set ::syntax(subst) {o* x}
set ::syntax(tclListValidFlags) 1
set ::syntax(tclLog) 1
set ::syntax(tclParseConfigSpec) 4
set ::syntax(tclPkgSetup) 4
set ::syntax(tclPkgUnknown) {r 1}
set ::syntax(tcl_endOfWord) 2
set ::syntax(tcl_findLibrary) 6
set ::syntax(tcl_startOfNextWord) 2
set ::syntax(tcl_startOfPreviousWord) 2
set ::syntax(tcl_wordBreakAfter) 2
set ::syntax(tcl_wordBreakBefore) 2
set ::syntax(tell) 1
set ::syntax(text) {x p*}
set ::syntax(thread_load) 1
set ::syntax(thread_source) 1
set ::syntax(time) {c x?}
set ::syntax(tk) {s x*}
set ::syntax(tk::button) {x p*}
set ::syntax(tk::canvas) {x p*}
set ::syntax(tk::checkbutton) {x p*}
set ::syntax(tk::entry) {x p*}
set ::syntax(tk::frame) {x p*}
set ::syntax(tk::label) {x p*}
set ::syntax(tk::labelframe) {x p*}
set ::syntax(tk::listbox) {x p*}
set ::syntax(tk::menubutton) {x p*}
set ::syntax(tk::message) {x p*}
set ::syntax(tk::panedwindow) {x p*}
set ::syntax(tk::radiobutton) {x p*}
set ::syntax(tk::scale) {x p*}
set ::syntax(tk::scrollbar) {x p*}
set ::syntax(tk::spinbox) {x p*}
set ::syntax(tk::text) {x p*}
set ::syntax(tk::toplevel) {x p*}
set ::syntax(tk_bindForTraversal) {r 0}
set ::syntax(tk_bisque) 0
set ::syntax(tk_chooseColor) p*
set ::syntax(tk_chooseDirectory) p*
set ::syntax(tk_dialog) {r 5}
set ::syntax(tk_focusFollowsMouse) 0
set ::syntax(tk_focusNext) 1
set ::syntax(tk_focusPrev) 1
set ::syntax(tk_getFileType) 0
set ::syntax(tk_getOpenFile) p*
set ::syntax(tk_getSaveFile) p*
set ::syntax(tk_menuBar) {r 0}
set ::syntax(tk_menuSetFocus) 1
set ::syntax(tk_messageBox) p*
set ::syntax(tk_optionMenu) {r 3}
set ::syntax(tk_popup) {r 3 4}
set ::syntax(tk_setPalette) {r 0}
set ::syntax(tk_textCopy) 1
set ::syntax(tk_textCut) 1
set ::syntax(tk_textPaste) 1
set ::syntax(tkwait) {s x}
set {::syntax(tkwait variable)} l
set ::syntax(toplevel) {x p*}
set ::syntax(trace) {s x x*}
set {::syntax(trace add)} {s x x x}
set {::syntax(trace add command)} {x x c3}
set {::syntax(trace add execution)} {x x c2}
set {::syntax(trace add variable)} {v x c3}
set {::syntax(trace info)} {s x x x}
set {::syntax(trace info command)} x
set {::syntax(trace info execution)} x
set {::syntax(trace info variable)} v
set {::syntax(trace remove)} {s x x x}
set {::syntax(trace remove command)} {x x x}
set {::syntax(trace remove execution)} {x x x}
set {::syntax(trace remove variable)} {v x x}
set {::syntax(trace variable)} {n x x}
set {::syntax(trace vdelete)} {v x x}
set {::syntax(trace vinfo)} l
set ::syntax(ttk::button) {x p*}
set ::syntax(ttk::checkbutton) {x p*}
set ::syntax(ttk::combobox) {x p*}
set ::syntax(ttk::entry) {x p*}
set ::syntax(ttk::frame) {x p*}
set ::syntax(ttk::label) {x p*}
set ::syntax(ttk::labelframe) {x p*}
set ::syntax(ttk::menubutton) {x p*}
set ::syntax(ttk::notebook) {x p*}
set ::syntax(ttk::panedwindow) {x p*}
set ::syntax(ttk::progressbar) {x p*}
set ::syntax(ttk::radiobutton) {x p*}
set ::syntax(ttk::scale) {x p*}
set ::syntax(ttk::scrollbar) {x p*}
set ::syntax(ttk::separator) {x p*}
set ::syntax(ttk::setTheme) x
set ::syntax(ttk::sizegrip) {x p*}
set ::syntax(ttk::style) {s x*}
set {::syntax(ttk::style configure)} {x o. x. p*}
set {::syntax(ttk::style element)} {s x*}
set {::syntax(ttk::style element create)} {x x x*}
set {::syntax(ttk::style element names)} 0
set {::syntax(ttk::style element options)} x
set {::syntax(ttk::style layout)} {x x?}
set {::syntax(ttk::style lookup)} {r 2 4}
set {::syntax(ttk::style map)} {x p*}
set {::syntax(ttk::style theme)} {s x*}
set {::syntax(ttk::style theme create)} {x p*}
set {::syntax(ttk::style theme names)} 0
set {::syntax(ttk::style theme settings)} 2
set {::syntax(ttk::style theme use)} x
set ::syntax(ttk::themes) x?
set ::syntax(ttk::treeview) {x p*}
set ::syntax(unknown) {r 0}
set ::syntax(unload) {o* x x*}
set ::syntax(unset) {o* l l*}
set ::syntax(update) s.
set ::syntax(vwait) n
set ::syntax(while) {E c}
set ::syntax(winfo) {s x x*}
set ::syntax(wm) {s x x*}
set ::return(button) _obj,button
set ::return(canvas) _obj,canvas
set ::return(checkbutton) _obj,checkbutton
set ::return(entry) _obj,entry
set ::return(frame) _obj,frame
set ::return(label) _obj,label
set ::return(labelframe) _obj,labelframe
set ::return(linsert) list
set ::return(list) list
set ::return(listbox) _obj,listbox
set ::return(llength) int
set ::return(lrange) list
set ::return(lreplace) list
set ::return(lsort) list
set ::return(menu) _obj,menu
set ::return(menubutton) _obj,menubutton
set ::return(message) _obj,message
set ::return(panedwindow) _obj,panedwindow
set ::return(radiobutton) _obj,radiobutton
set ::return(scale) _obj,scale
set ::return(scrollbar) _obj,scrollbar
set ::return(spinbox) _obj,spinbox
set ::return(text) _obj,text
set ::return(tk::button) _obj,tk::button
set ::return(tk::canvas) _obj,tk::canvas
set ::return(tk::checkbutton) _obj,tk::checkbutton
set ::return(tk::entry) _obj,tk::entry
set ::return(tk::frame) _obj,tk::frame
set ::return(tk::label) _obj,tk::label
set ::return(tk::labelframe) _obj,tk::labelframe
set ::return(tk::listbox) _obj,tk::listbox
set ::return(tk::menubutton) _obj,tk::menubutton
set ::return(tk::message) _obj,tk::message
set ::return(tk::panedwindow) _obj,tk::panedwindow
set ::return(tk::radiobutton) _obj,tk::radiobutton
set ::return(tk::scale) _obj,tk::scale
set ::return(tk::scrollbar) _obj,tk::scrollbar
set ::return(tk::spinbox) _obj,tk::spinbox
set ::return(tk::text) _obj,tk::text
set ::return(tk::toplevel) _obj,tk::toplevel
set ::return(toplevel) _obj,toplevel
set ::return(ttk::button) _obj,ttk::button
set ::return(ttk::checkbutton) _obj,ttk::checkbutton
set ::return(ttk::combobox) _obj,ttk::combobox
set ::return(ttk::entry) _obj,ttk::entry
set ::return(ttk::frame) _obj,ttk::frame
set ::return(ttk::label) _obj,ttk::label
set ::return(ttk::labelframe) _obj,ttk::labelframe
set ::return(ttk::menubutton) _obj,ttk::menubutton
set ::return(ttk::notebook) _obj,ttk::notebook
set ::return(ttk::panedwindow) _obj,ttk::panedwindow
set ::return(ttk::progressbar) _obj,ttk::progressbar
set ::return(ttk::radiobutton) _obj,ttk::radiobutton
set ::return(ttk::scale) _obj,ttk::scale
set ::return(ttk::scrollbar) _obj,ttk::scrollbar
set ::return(ttk::separator) _obj,ttk::separator
set ::return(ttk::sizegrip) _obj,ttk::sizegrip
set ::return(ttk::treeview) _obj,ttk::treeview
set ::subCmd(.) {cget configure}
set ::subCmd(_obj,button) {cget configure flash invoke}
set ::subCmd(_obj,canvas) {addtag bbox bind canvasx canvasy cget configure coords create dchars delete dtag find focus gettags icursor index insert itemcget itemconfigure lower move postscript raise scale scan select type xview yview}
set ::subCmd(_obj,checkbutton) {cget configure deselect flash invoke select toggle}
set ::subCmd(_obj,entry) {bbox cget configure delete get icursor index insert scan selection validate xview}
set ::subCmd(_obj,frame) {cget configure}
set ::subCmd(_obj,label) {cget configure}
set ::subCmd(_obj,labelframe) {cget configure}
set ::subCmd(_obj,listbox) {activate bbox cget configure curselection delete get index insert itemcget itemconfigure nearest scan see selection size xview yview}
set {::subCmd(_obj,listbox selection)} {anchor clear includes set}
set ::subCmd(_obj,menu) {activate add cget clone configure delete entrycget entryconfigure index insert invoke post postcascade type unpost xposition yposition}
set ::subCmd(_obj,menubutton) {cget configure}
set ::subCmd(_obj,message) {cget configure}
set ::subCmd(_obj,panedwindow) {add cget configure forget identify panecget paneconfigure panes proxy sash}
set ::subCmd(_obj,radiobutton) {cget configure deselect flash invoke select}
set ::subCmd(_obj,scale) {cget configure coords get identify set}
set ::subCmd(_obj,scrollbar) {activate cget configure delta fraction get identify set}
set ::subCmd(_obj,spinbox) {bbox cget configure delete get icursor identify index insert invoke scan selection set validate xview}
set ::subCmd(_obj,text) {bbox cget compare configure count debug delete dlineinfo dump edit get image index insert mark peer replace scan search see tag window xview yview}
set ::subCmd(_obj,tk::button) {cget configure flash invoke}
set ::subCmd(_obj,tk::canvas) {addtag bbox bind canvasx canvasy cget configure coords create dchars delete dtag find focus gettags icursor index insert itemcget itemconfigure lower move postscript raise scale scan select type xview yview}
set ::subCmd(_obj,tk::checkbutton) {cget configure deselect flash invoke select toggle}
set ::subCmd(_obj,tk::entry) {bbox cget configure delete get icursor index insert scan selection validate xview}
set ::subCmd(_obj,tk::frame) {cget configure}
set ::subCmd(_obj,tk::label) {cget configure}
set ::subCmd(_obj,tk::labelframe) {cget configure}
set ::subCmd(_obj,tk::listbox) {activate bbox cget configure curselection delete get index insert itemcget itemconfigure nearest scan see selection size xview yview}
set ::subCmd(_obj,tk::menubutton) {cget configure}
set ::subCmd(_obj,tk::message) {cget configure}
set ::subCmd(_obj,tk::panedwindow) {add cget configure forget identify panecget paneconfigure panes proxy sash}
set ::subCmd(_obj,tk::radiobutton) {cget configure deselect flash invoke select}
set ::subCmd(_obj,tk::scale) {cget configure coords get identify set}
set ::subCmd(_obj,tk::scrollbar) {activate cget configure delta fraction get identify set}
set ::subCmd(_obj,tk::spinbox) {bbox cget configure delete get icursor identify index insert invoke scan selection set validate xview}
set ::subCmd(_obj,tk::text) {bbox cget compare configure count debug delete dlineinfo dump edit get image index insert mark peer replace scan search see tag window xview yview}
set ::subCmd(_obj,tk::toplevel) {cget configure}
set ::subCmd(_obj,toplevel) {cget configure}
set ::subCmd(_obj,ttk::button) {cget configure identify instate invoke state}
set ::subCmd(_obj,ttk::checkbutton) {cget configure identify instate invoke state}
set ::subCmd(_obj,ttk::combobox) {bbox cget configure current delete get icursor identify index insert instate selection set state xview}
set ::subCmd(_obj,ttk::entry) {bbox cget configure delete get icursor identify index insert instate selection state validate xview}
set ::subCmd(_obj,ttk::frame) {cget configure identify instate state}
set ::subCmd(_obj,ttk::label) {cget configure identify instate state}
set ::subCmd(_obj,ttk::labelframe) {cget configure identify instate state}
set ::subCmd(_obj,ttk::menubutton) {cget configure identify instate state}
set ::subCmd(_obj,ttk::notebook) {add cget configure forget hide identify index insert instate select state tab tabs}
set ::subCmd(_obj,ttk::panedwindow) {add cget configure forget identify insert instate pane panes sashpos state}
set ::subCmd(_obj,ttk::progressbar) {cget configure identify instate start state step stop}
set ::subCmd(_obj,ttk::radiobutton) {cget configure identify instate invoke state}
set ::subCmd(_obj,ttk::scale) {cget configure coords get identify instate set state}
set ::subCmd(_obj,ttk::scrollbar) {cget configure delta fraction get identify instate set state}
set ::subCmd(_obj,ttk::separator) {cget configure identify instate state}
set ::subCmd(_obj,ttk::sizegrip) {cget configure identify instate state}
set ::subCmd(_obj,ttk::treeview) {bbox cget children column configure delete detach drag exists focus heading identify index insert instate item move next parent prev see selection set state tag xview yview}
set ::subCmd(array) {anymore donesearch exists get names nextelement set size startsearch statistics unset}
set ::subCmd(binary) {format scan}
set ::subCmd(chan) {blocked close configure copy create eof event flush gets names pending postevent puts read seek tell truncate}
set ::subCmd(clipboard) {append clear get}
set ::subCmd(clock) {add clicks format microseconds milliseconds scan seconds}
set ::subCmd(dict) {append create exists filter for get incr info keys lappend merge remove replace set size unset update values with}
set ::subCmd(encoding) {convertfrom convertto dirs names system}
set ::subCmd(event) {add delete generate info}
set ::subCmd(file) {atime attributes channels copy delete dirname executable exists extension isdirectory isfile join link lstat mkdir mtime nativename normalize owned pathtype readable readlink rename rootname separator size split stat system tail type volumes writable}
set ::subCmd(font) {actual configure create delete families measure metrics names}
set ::subCmd(history) {add change clear event info keep nextid redo}
set ::subCmd(image) {create delete height inuse names type types width}
set ::subCmd(info) {args body cmdcount commands complete default exists frame functions globals hostname level library loaded locals nameofexecutable patchlevel procs script sharedlibextension tclversion vars}
set ::subCmd(interp) {alias aliases bgerror create delete eval exists expose hidden hide invokehidden issafe limit marktrusted recursionlimit share slaves target transfer}
set ::subCmd(namespace) {children code current delete ensemble eval exists export forget import inscope origin parent path qualifiers tail unknown upvar which}
set ::subCmd(option) {add clear get readfile}
set ::subCmd(package) {forget ifneeded names prefer present provide require unknown vcompare versions vsatisfies}
set ::subCmd(selection) {clear get handle own}
set ::subCmd(string) {bytelength compare equal first index is last length map match range repeat replace reverse tolower totitle toupper trim trimleft trimright wordend wordstart}
set {::subCmd(string is)} {alnum alpha ascii boolean control digit double false graph integer list lower print punct space true upper wideinteger wordchar xdigit}
set ::subCmd(tk) {appname caret inactive scaling useinputmethods windowingsystem}
set ::subCmd(tkwait) {variable visibility window}
set ::subCmd(trace) {add info remove variable vdelete vinfo}
set {::subCmd(trace add)} {command execution variable}
set {::subCmd(trace info)} {command execution variable}
set {::subCmd(trace remove)} {command execution variable}
set ::subCmd(ttk::style) {configure element layout lookup map theme}
set {::subCmd(ttk::style element)} {create names options}
set {::subCmd(ttk::style theme)} {create names settings use}
set ::subCmd(update) idletasks
set ::subCmd(winfo) {atom atomname cells children class colormapfull containing depth exists fpixels geometry height id interps ismapped manager name parent pathname pixels pointerx pointerxy pointery reqheight reqwidth rgb rootx rooty screen screencells screendepth screenheight screenmmheight screenmmwidth screenvisual screenwidth server toplevel viewable visual visualid visualsavailable vrootheight vrootwidth vrootx vrooty width x y}
set ::subCmd(wm) {aspect attributes client colormapwindows command deiconify focusmodel forget frame geometry grid group iconbitmap iconify iconmask iconname iconphoto iconposition iconwindow manage maxsize minsize overrideredirect positionfrom protocol resizable sizefrom stackorder state title transient withdraw}
set {::option(. cget)} {-bd -borderwidth -class -menu -relief -screen -use -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(. configure)} {-bd -borderwidth -class -menu -relief -screen -use -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,button cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -default -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -overrelief -padx -pady -relief -repeatdelay -repeatinterval -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,button configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -default -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -overrelief -padx -pady -relief -repeatdelay -repeatinterval -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,button configure -textvariable)} n
set {::option(_obj,canvas cget)} {-background -bd -bg -borderwidth -closeenough -confine -cursor -height -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -offset -relief -scrollregion -selectbackground -selectborderwidth -selectforeground -state -takefocus -width -xscrollcommand -xscrollincrement -yscrollcommand -yscrollincrement}
set {::option(_obj,canvas configure)} {-background -bd -bg -borderwidth -closeenough -confine -cursor -height -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -offset -relief -scrollregion -selectbackground -selectborderwidth -selectforeground -state -takefocus -width -xscrollcommand -xscrollincrement -yscrollcommand -yscrollincrement}
set {::option(_obj,checkbutton cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -offvalue -onvalue -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -tristateimage -tristatevalue -underline -variable -width -wraplength}
set {::option(_obj,checkbutton configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -offvalue -onvalue -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -tristateimage -tristatevalue -underline -variable -width -wraplength}
set {::option(_obj,checkbutton configure -textvariable)} n
set {::option(_obj,checkbutton configure -variable)} n
set {::option(_obj,entry cget)} {-background -bd -bg -borderwidth -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -readonlybackground -relief -selectbackground -selectborderwidth -selectforeground -show -state -takefocus -textvariable -validate -validatecommand -vcmd -width -xscrollcommand}
set {::option(_obj,entry configure)} {-background -bd -bg -borderwidth -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -readonlybackground -relief -selectbackground -selectborderwidth -selectforeground -show -state -takefocus -textvariable -validate -validatecommand -vcmd -width -xscrollcommand}
set {::option(_obj,entry configure -textvariable)} n
set {::option(_obj,frame cget)} {-bd -borderwidth -class -relief -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,frame configure)} {-bd -borderwidth -class -relief -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,label cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -padx -pady -relief -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,label configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -padx -pady -relief -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,label configure -textvariable)} n
set {::option(_obj,labelframe cget)} {-bd -borderwidth -class -fg -font -foreground -labelanchor -labelwidget -relief -text -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,labelframe configure)} {-bd -borderwidth -class -fg -font -foreground -labelanchor -labelwidget -relief -text -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,listbox cget)} {-activestyle -background -bd -bg -borderwidth -cursor -disabledforeground -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -relief -selectbackground -selectborderwidth -selectforeground -selectmode -setgrid -state -takefocus -width -xscrollcommand -yscrollcommand -listvariable}
set {::option(_obj,listbox configure)} {-activestyle -background -bd -bg -borderwidth -cursor -disabledforeground -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -relief -selectbackground -selectborderwidth -selectforeground -selectmode -setgrid -state -takefocus -width -xscrollcommand -yscrollcommand -listvariable}
set {::option(_obj,listbox configure -listvariable)} n
set {::option(_obj,menu cget)} {-activebackground -activeborderwidth -activeforeground -background -bd -bg -borderwidth -cursor -disabledforeground -fg -font -foreground -postcommand -relief -selectcolor -takefocus -tearoff -tearoffcommand -title -type}
set {::option(_obj,menu configure)} {-activebackground -activeborderwidth -activeforeground -background -bd -bg -borderwidth -cursor -disabledforeground -fg -font -foreground -postcommand -relief -selectcolor -takefocus -tearoff -tearoffcommand -title -type}
set {::option(_obj,menubutton cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -cursor -direction -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -menu -padx -pady -relief -compound -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,menubutton configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -cursor -direction -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -menu -padx -pady -relief -compound -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,menubutton configure -textvariable)} n
set {::option(_obj,message cget)} {-anchor -aspect -background -bd -bg -borderwidth -cursor -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -justify -padx -pady -relief -takefocus -text -textvariable -width}
set {::option(_obj,message configure)} {-anchor -aspect -background -bd -bg -borderwidth -cursor -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -justify -padx -pady -relief -takefocus -text -textvariable -width}
set {::option(_obj,message configure -textvariable)} n
set {::option(_obj,panedwindow cget)} {-background -bd -bg -borderwidth -cursor -handlepad -handlesize -height -opaqueresize -orient -relief -sashcursor -sashpad -sashrelief -sashwidth -showhandle -width}
set {::option(_obj,panedwindow configure)} {-background -bd -bg -borderwidth -cursor -handlepad -handlesize -height -opaqueresize -orient -relief -sashcursor -sashpad -sashrelief -sashwidth -showhandle -width}
set {::option(_obj,radiobutton cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -tristateimage -tristatevalue -underline -value -variable -width -wraplength}
set {::option(_obj,radiobutton configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -tristateimage -tristatevalue -underline -value -variable -width -wraplength}
set {::option(_obj,radiobutton configure -textvariable)} n
set {::option(_obj,radiobutton configure -variable)} n
set {::option(_obj,scale cget)} {-activebackground -background -bigincrement -bd -bg -borderwidth -command -cursor -digits -fg -font -foreground -from -highlightbackground -highlightcolor -highlightthickness -label -length -orient -relief -repeatdelay -repeatinterval -resolution -showvalue -sliderlength -sliderrelief -state -takefocus -tickinterval -to -troughcolor -variable -width}
set {::option(_obj,scale configure)} {-activebackground -background -bigincrement -bd -bg -borderwidth -command -cursor -digits -fg -font -foreground -from -highlightbackground -highlightcolor -highlightthickness -label -length -orient -relief -repeatdelay -repeatinterval -resolution -showvalue -sliderlength -sliderrelief -state -takefocus -tickinterval -to -troughcolor -variable -width}
set {::option(_obj,scale configure -variable)} n
set {::option(_obj,scrollbar cget)} {-activebackground -activerelief -background -bd -bg -borderwidth -command -cursor -elementborderwidth -highlightbackground -highlightcolor -highlightthickness -jump -orient -relief -repeatdelay -repeatinterval -takefocus -troughcolor -width}
set {::option(_obj,scrollbar configure)} {-activebackground -activerelief -background -bd -bg -borderwidth -command -cursor -elementborderwidth -highlightbackground -highlightcolor -highlightthickness -jump -orient -relief -repeatdelay -repeatinterval -takefocus -troughcolor -width}
set {::option(_obj,spinbox cget)} {-activebackground -background -bd -bg -borderwidth -buttonbackground -buttoncursor -buttondownrelief -buttonuprelief -command -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -format -from -highlightbackground -highlightcolor -highlightthickness -increment -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -relief -readonlybackground -repeatdelay -repeatinterval -selectbackground -selectborderwidth -selectforeground -state -takefocus -textvariable -to -validate -validatecommand -values -vcmd -width -wrap -xscrollcommand}
set {::option(_obj,spinbox configure)} {-activebackground -background -bd -bg -borderwidth -buttonbackground -buttoncursor -buttondownrelief -buttonuprelief -command -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -format -from -highlightbackground -highlightcolor -highlightthickness -increment -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -relief -readonlybackground -repeatdelay -repeatinterval -selectbackground -selectborderwidth -selectforeground -state -takefocus -textvariable -to -validate -validatecommand -values -vcmd -width -wrap -xscrollcommand}
set {::option(_obj,spinbox configure -textvariable)} n
set {::option(_obj,text cget)} {-autoseparators -background -bd -bg -blockcursor -borderwidth -cursor -endline -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -inactiveselectbackground -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -maxundo -padx -pady -relief -selectbackground -selectborderwidth -selectforeground -setgrid -spacing1 -spacing2 -spacing3 -startline -state -tabs -tabstyle -takefocus -undo -width -wrap -xscrollcommand -yscrollcommand}
set {::option(_obj,text configure)} {-autoseparators -background -bd -bg -blockcursor -borderwidth -cursor -endline -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -inactiveselectbackground -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -maxundo -padx -pady -relief -selectbackground -selectborderwidth -selectforeground -setgrid -spacing1 -spacing2 -spacing3 -startline -state -tabs -tabstyle -takefocus -undo -width -wrap -xscrollcommand -yscrollcommand}
set {::option(_obj,tk::button cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -default -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -overrelief -padx -pady -relief -repeatdelay -repeatinterval -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,tk::button configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -default -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -overrelief -padx -pady -relief -repeatdelay -repeatinterval -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,tk::button configure -textvariable)} n
set {::option(_obj,tk::canvas cget)} {-background -bd -bg -borderwidth -closeenough -confine -cursor -height -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -offset -relief -scrollregion -selectbackground -selectborderwidth -selectforeground -state -takefocus -width -xscrollcommand -xscrollincrement -yscrollcommand -yscrollincrement}
set {::option(_obj,tk::canvas configure)} {-background -bd -bg -borderwidth -closeenough -confine -cursor -height -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -offset -relief -scrollregion -selectbackground -selectborderwidth -selectforeground -state -takefocus -width -xscrollcommand -xscrollincrement -yscrollcommand -yscrollincrement}
set {::option(_obj,tk::checkbutton cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -offvalue -onvalue -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -tristateimage -tristatevalue -underline -variable -width -wraplength}
set {::option(_obj,tk::checkbutton configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -offvalue -onvalue -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -tristateimage -tristatevalue -underline -variable -width -wraplength}
set {::option(_obj,tk::checkbutton configure -textvariable)} n
set {::option(_obj,tk::checkbutton configure -variable)} n
set {::option(_obj,tk::entry cget)} {-background -bd -bg -borderwidth -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -readonlybackground -relief -selectbackground -selectborderwidth -selectforeground -show -state -takefocus -textvariable -validate -validatecommand -vcmd -width -xscrollcommand}
set {::option(_obj,tk::entry configure)} {-background -bd -bg -borderwidth -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -readonlybackground -relief -selectbackground -selectborderwidth -selectforeground -show -state -takefocus -textvariable -validate -validatecommand -vcmd -width -xscrollcommand}
set {::option(_obj,tk::entry configure -textvariable)} n
set {::option(_obj,tk::frame cget)} {-bd -borderwidth -class -relief -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,tk::frame configure)} {-bd -borderwidth -class -relief -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,tk::label cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -padx -pady -relief -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,tk::label configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -padx -pady -relief -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,tk::label configure -textvariable)} n
set {::option(_obj,tk::labelframe cget)} {-bd -borderwidth -class -fg -font -foreground -labelanchor -labelwidget -relief -text -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,tk::labelframe configure)} {-bd -borderwidth -class -fg -font -foreground -labelanchor -labelwidget -relief -text -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,tk::listbox cget)} {-activestyle -background -bd -bg -borderwidth -cursor -disabledforeground -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -relief -selectbackground -selectborderwidth -selectforeground -selectmode -setgrid -state -takefocus -width -xscrollcommand -yscrollcommand -listvariable}
set {::option(_obj,tk::listbox configure)} {-activestyle -background -bd -bg -borderwidth -cursor -disabledforeground -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -relief -selectbackground -selectborderwidth -selectforeground -selectmode -setgrid -state -takefocus -width -xscrollcommand -yscrollcommand -listvariable}
set {::option(_obj,tk::listbox configure -listvariable)} n
set {::option(_obj,tk::menubutton cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -cursor -direction -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -menu -padx -pady -relief -compound -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,tk::menubutton configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -cursor -direction -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -menu -padx -pady -relief -compound -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,tk::menubutton configure -textvariable)} n
set {::option(_obj,tk::message cget)} {-anchor -aspect -background -bd -bg -borderwidth -cursor -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -justify -padx -pady -relief -takefocus -text -textvariable -width}
set {::option(_obj,tk::message configure)} {-anchor -aspect -background -bd -bg -borderwidth -cursor -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -justify -padx -pady -relief -takefocus -text -textvariable -width}
set {::option(_obj,tk::message configure -textvariable)} n
set {::option(_obj,tk::panedwindow cget)} {-background -bd -bg -borderwidth -cursor -handlepad -handlesize -height -opaqueresize -orient -relief -sashcursor -sashpad -sashrelief -sashwidth -showhandle -width}
set {::option(_obj,tk::panedwindow configure)} {-background -bd -bg -borderwidth -cursor -handlepad -handlesize -height -opaqueresize -orient -relief -sashcursor -sashpad -sashrelief -sashwidth -showhandle -width}
set {::option(_obj,tk::radiobutton cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -tristateimage -tristatevalue -underline -value -variable -width -wraplength}
set {::option(_obj,tk::radiobutton configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -tristateimage -tristatevalue -underline -value -variable -width -wraplength}
set {::option(_obj,tk::radiobutton configure -textvariable)} n
set {::option(_obj,tk::radiobutton configure -variable)} n
set {::option(_obj,tk::scale cget)} {-activebackground -background -bigincrement -bd -bg -borderwidth -command -cursor -digits -fg -font -foreground -from -highlightbackground -highlightcolor -highlightthickness -label -length -orient -relief -repeatdelay -repeatinterval -resolution -showvalue -sliderlength -sliderrelief -state -takefocus -tickinterval -to -troughcolor -variable -width}
set {::option(_obj,tk::scale configure)} {-activebackground -background -bigincrement -bd -bg -borderwidth -command -cursor -digits -fg -font -foreground -from -highlightbackground -highlightcolor -highlightthickness -label -length -orient -relief -repeatdelay -repeatinterval -resolution -showvalue -sliderlength -sliderrelief -state -takefocus -tickinterval -to -troughcolor -variable -width}
set {::option(_obj,tk::scale configure -variable)} n
set {::option(_obj,tk::scrollbar cget)} {-activebackground -activerelief -background -bd -bg -borderwidth -command -cursor -elementborderwidth -highlightbackground -highlightcolor -highlightthickness -jump -orient -relief -repeatdelay -repeatinterval -takefocus -troughcolor -width}
set {::option(_obj,tk::scrollbar configure)} {-activebackground -activerelief -background -bd -bg -borderwidth -command -cursor -elementborderwidth -highlightbackground -highlightcolor -highlightthickness -jump -orient -relief -repeatdelay -repeatinterval -takefocus -troughcolor -width}
set {::option(_obj,tk::spinbox cget)} {-activebackground -background -bd -bg -borderwidth -buttonbackground -buttoncursor -buttondownrelief -buttonuprelief -command -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -format -from -highlightbackground -highlightcolor -highlightthickness -increment -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -relief -readonlybackground -repeatdelay -repeatinterval -selectbackground -selectborderwidth -selectforeground -state -takefocus -textvariable -to -validate -validatecommand -values -vcmd -width -wrap -xscrollcommand}
set {::option(_obj,tk::spinbox configure)} {-activebackground -background -bd -bg -borderwidth -buttonbackground -buttoncursor -buttondownrelief -buttonuprelief -command -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -format -from -highlightbackground -highlightcolor -highlightthickness -increment -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -relief -readonlybackground -repeatdelay -repeatinterval -selectbackground -selectborderwidth -selectforeground -state -takefocus -textvariable -to -validate -validatecommand -values -vcmd -width -wrap -xscrollcommand}
set {::option(_obj,tk::spinbox configure -textvariable)} n
set {::option(_obj,tk::text cget)} {-autoseparators -background -bd -bg -blockcursor -borderwidth -cursor -endline -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -inactiveselectbackground -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -maxundo -padx -pady -relief -selectbackground -selectborderwidth -selectforeground -setgrid -spacing1 -spacing2 -spacing3 -startline -state -tabs -tabstyle -takefocus -undo -width -wrap -xscrollcommand -yscrollcommand}
set {::option(_obj,tk::text configure)} {-autoseparators -background -bd -bg -blockcursor -borderwidth -cursor -endline -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -inactiveselectbackground -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -maxundo -padx -pady -relief -selectbackground -selectborderwidth -selectforeground -setgrid -spacing1 -spacing2 -spacing3 -startline -state -tabs -tabstyle -takefocus -undo -width -wrap -xscrollcommand -yscrollcommand}
set {::option(_obj,tk::toplevel cget)} {-bd -borderwidth -class -menu -relief -screen -use -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,tk::toplevel configure)} {-bd -borderwidth -class -menu -relief -screen -use -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,toplevel cget)} {-bd -borderwidth -class -menu -relief -screen -use -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,toplevel configure)} {-bd -borderwidth -class -menu -relief -screen -use -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,ttk::button cget)} {-takefocus -command -default -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(_obj,ttk::button configure)} {-takefocus -command -default -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(_obj,ttk::button configure -textvariable)} n
set {::option(_obj,ttk::checkbutton cget)} {-takefocus -variable -onvalue -offvalue -command -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(_obj,ttk::checkbutton configure)} {-takefocus -variable -onvalue -offvalue -command -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(_obj,ttk::checkbutton configure -textvariable)} n
set {::option(_obj,ttk::checkbutton configure -variable)} n
set {::option(_obj,ttk::combobox cget)} {-height -postcommand -values -takefocus -exportselection -font -invalidcommand -justify -show -state -textvariable -validate -validatecommand -width -xscrollcommand -foreground -background -takefocus -cursor -style -class}
set {::option(_obj,ttk::combobox configure)} {-height -postcommand -values -takefocus -exportselection -font -invalidcommand -justify -show -state -textvariable -validate -validatecommand -width -xscrollcommand -foreground -background -takefocus -cursor -style -class}
set {::option(_obj,ttk::combobox configure -textvariable)} n
set {::option(_obj,ttk::entry cget)} {-takefocus -exportselection -font -invalidcommand -justify -show -state -textvariable -validate -validatecommand -width -xscrollcommand -foreground -background -takefocus -cursor -style -class}
set {::option(_obj,ttk::entry configure)} {-takefocus -exportselection -font -invalidcommand -justify -show -state -textvariable -validate -validatecommand -width -xscrollcommand -foreground -background -takefocus -cursor -style -class}
set {::option(_obj,ttk::entry configure -textvariable)} n
set {::option(_obj,ttk::frame cget)} {-borderwidth -padding -relief -width -height -takefocus -cursor -style -class}
set {::option(_obj,ttk::frame configure)} {-borderwidth -padding -relief -width -height -takefocus -cursor -style -class}
set {::option(_obj,ttk::label cget)} {-background -foreground -font -borderwidth -relief -anchor -justify -wraplength -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(_obj,ttk::label configure)} {-background -foreground -font -borderwidth -relief -anchor -justify -wraplength -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(_obj,ttk::label configure -textvariable)} n
set {::option(_obj,ttk::labelframe cget)} {-labelanchor -text -underline -labelwidget -borderwidth -padding -relief -width -height -takefocus -cursor -style -class}
set {::option(_obj,ttk::labelframe configure)} {-labelanchor -text -underline -labelwidget -borderwidth -padding -relief -width -height -takefocus -cursor -style -class}
set {::option(_obj,ttk::menubutton cget)} {-takefocus -menu -direction -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(_obj,ttk::menubutton configure)} {-takefocus -menu -direction -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(_obj,ttk::menubutton configure -textvariable)} n
set {::option(_obj,ttk::notebook cget)} {-takefocus -width -height -padding -takefocus -cursor -style -class}
set {::option(_obj,ttk::notebook configure)} {-takefocus -width -height -padding -takefocus -cursor -style -class}
set {::option(_obj,ttk::panedwindow cget)} {-orient -width -height -takefocus -cursor -style -class}
set {::option(_obj,ttk::panedwindow configure)} {-orient -width -height -takefocus -cursor -style -class}
set {::option(_obj,ttk::progressbar cget)} {-orient -length -mode -maximum -variable -value -phase -takefocus -cursor -style -class}
set {::option(_obj,ttk::progressbar configure)} {-orient -length -mode -maximum -variable -value -phase -takefocus -cursor -style -class}
set {::option(_obj,ttk::progressbar configure -variable)} n
set {::option(_obj,ttk::radiobutton cget)} {-takefocus -variable -value -command -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(_obj,ttk::radiobutton configure)} {-takefocus -variable -value -command -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(_obj,ttk::radiobutton configure -textvariable)} n
set {::option(_obj,ttk::radiobutton configure -variable)} n
set {::option(_obj,ttk::scale cget)} {-takefocus -command -variable -orient -from -to -value -length -takefocus -cursor -style -class}
set {::option(_obj,ttk::scale configure)} {-takefocus -command -variable -orient -from -to -value -length -takefocus -cursor -style -class}
set {::option(_obj,ttk::scale configure -variable)} n
set {::option(_obj,ttk::scrollbar cget)} {-command -orient -takefocus -cursor -style -class}
set {::option(_obj,ttk::scrollbar configure)} {-command -orient -takefocus -cursor -style -class}
set {::option(_obj,ttk::separator cget)} {-orient -takefocus -cursor -style -class}
set {::option(_obj,ttk::separator configure)} {-orient -takefocus -cursor -style -class}
set {::option(_obj,ttk::sizegrip cget)} {-takefocus -cursor -style -class}
set {::option(_obj,ttk::sizegrip configure)} {-takefocus -cursor -style -class}
set {::option(_obj,ttk::treeview cget)} {-takefocus -columns -displaycolumns -show -selectmode -height -padding -xscrollcommand -yscrollcommand -takefocus -cursor -style -class}
set {::option(_obj,ttk::treeview configure)} {-takefocus -columns -displaycolumns -show -selectmode -height -padding -xscrollcommand -yscrollcommand -takefocus -cursor -style -class}
set ::option(bell) {-displayof -nice}
set ::option(button) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -default -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -overrelief -padx -pady -relief -repeatdelay -repeatinterval -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(button -textvariable)} n
set ::option(canvas) {-background -bd -bg -borderwidth -closeenough -confine -cursor -height -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -offset -relief -scrollregion -selectbackground -selectborderwidth -selectforeground -state -takefocus -width -xscrollcommand -xscrollincrement -yscrollcommand -yscrollincrement}
set {::option(chan puts)} -nonewline
set ::option(checkbutton) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -offvalue -onvalue -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -tristateimage -tristatevalue -underline -variable -width -wraplength}
set {::option(checkbutton -textvariable)} n
set {::option(checkbutton -variable)} n
set {::option(clock clicks)} {-microseconds -milliseconds}
set {::option(clock format)} {-format -gmt -locale -timezone}
set {::option(clock scan)} {-base -format -gmt -locale -timezone}
set ::option(entry) {-background -bd -bg -borderwidth -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -readonlybackground -relief -selectbackground -selectborderwidth -selectforeground -show -state -takefocus -textvariable -validate -validatecommand -vcmd -width -xscrollcommand}
set {::option(entry -textvariable)} n
set ::option(exec) {-- -ignorestderr -keepnewline}
set ::option(fconfigure) {-blocking -buffering -buffersize -encoding -eofchar -error -handshake -lasterror -mode -peername -pollinterval -queue -sockname -sysbuffer -timeout -translation -ttycontrol -ttystatus -xchar}
set ::option(fcopy) {-command -size}
set {::option(file attributes)} {-group -owner -permissions}
set {::option(file copy)} {-- -force}
set {::option(file delete)} {-- -force}
set {::option(file link)} {-hard -symbolic}
set {::option(file rename)} {-- -force}
set ::option(focus) {-displayof -force -lastfor}
set ::option(frame) {-bd -borderwidth -class -relief -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set ::option(glob) {-- -directory -join -nocomplain -path -tails -types}
set {::option(glob -directory)} 1
set {::option(glob -path)} 1
set {::option(glob -types)} 1
set {::option(interp invokehidden)} {-- -global -namespace}
set {::option(interp invokehidden -namespace)} 1
set ::option(label) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -padx -pady -relief -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(label -textvariable)} n
set ::option(labelframe) {-bd -borderwidth -class -fg -font -foreground -labelanchor -labelwidget -relief -text -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set ::option(listbox) {-activestyle -background -bd -bg -borderwidth -cursor -disabledforeground -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -relief -selectbackground -selectborderwidth -selectforeground -selectmode -setgrid -state -takefocus -width -xscrollcommand -yscrollcommand -listvariable}
set {::option(listbox -listvariable)} n
set ::option(lsearch) {-all -ascii -decreasing -dictionary -exact -glob -increasing -index -inline -integer -nocase -not -real -regexp -sorted -start -subindices}
set {::option(lsearch -index)} 1
set {::option(lsearch -start)} 1
set ::option(lsort) {-ascii -command -decreasing -dictionary -increasing -index -indices -integer -nocase -real -unique}
set {::option(lsort -command)} 1
set {::option(lsort -index)} 1
set ::option(menu) {-activebackground -activeborderwidth -activeforeground -background -bd -bg -borderwidth -cursor -disabledforeground -fg -font -foreground -postcommand -relief -selectcolor -takefocus -tearoff -tearoffcommand -title -type}
set ::option(menubutton) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -cursor -direction -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -menu -padx -pady -relief -compound -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(menubutton -textvariable)} n
set ::option(message) {-anchor -aspect -background -bd -bg -borderwidth -cursor -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -justify -padx -pady -relief -takefocus -text -textvariable -width}
set {::option(message -textvariable)} n
set {::option(namespace which)} {-variable -command}
set {::option(namespace which -variable)} v
set ::option(panedwindow) {-background -bd -bg -borderwidth -cursor -handlepad -handlesize -height -opaqueresize -orient -relief -sashcursor -sashpad -sashrelief -sashwidth -showhandle -width}
set ::option(puts) -nonewline
set ::option(radiobutton) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -tristateimage -tristatevalue -underline -value -variable -width -wraplength}
set {::option(radiobutton -textvariable)} n
set {::option(radiobutton -variable)} n
set ::option(regexp) {-- -about -all -expanded -indices -inline -line -lineanchor -linestop -nocase -start}
set {::option(regexp -start)} 1
set ::option(regsub) {-- -all -expanded -line -lineanchor -linestop -nocase -start}
set {::option(regsub -start)} 1
set ::option(scale) {-activebackground -background -bigincrement -bd -bg -borderwidth -command -cursor -digits -fg -font -foreground -from -highlightbackground -highlightcolor -highlightthickness -label -length -orient -relief -repeatdelay -repeatinterval -resolution -showvalue -sliderlength -sliderrelief -state -takefocus -tickinterval -to -troughcolor -variable -width}
set {::option(scale -variable)} n
set ::option(scrollbar) {-activebackground -activerelief -background -bd -bg -borderwidth -command -cursor -elementborderwidth -highlightbackground -highlightcolor -highlightthickness -jump -orient -relief -repeatdelay -repeatinterval -takefocus -troughcolor -width}
set ::option(send) {-- -async -displayof}
set {::option(send -displayof)} 1
set ::option(source) -encoding
set ::option(spinbox) {-activebackground -background -bd -bg -borderwidth -buttonbackground -buttoncursor -buttondownrelief -buttonuprelief -command -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -format -from -highlightbackground -highlightcolor -highlightthickness -increment -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -relief -readonlybackground -repeatdelay -repeatinterval -selectbackground -selectborderwidth -selectforeground -state -takefocus -textvariable -to -validate -validatecommand -values -vcmd -width -wrap -xscrollcommand}
set {::option(spinbox -textvariable)} n
set {::option(string compare)} {-length -nocase}
set {::option(string compare -length)} 1
set {::option(string equal)} {-length -nocase}
set {::option(string equal -length)} 1
set {::option(string is)} {-failindex -strict}
set {::option(string is -failindex)} n
set {::option(string map)} -nocase
set {::option(string match)} -nocase
set ::option(subst) {-nobackslashes -nocommands -novariables}
set ::option(switch) {-- -exact -glob -indexvar -matchvar -nocase -regexp}
set ::option(text) {-autoseparators -background -bd -bg -blockcursor -borderwidth -cursor -endline -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -inactiveselectbackground -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -maxundo -padx -pady -relief -selectbackground -selectborderwidth -selectforeground -setgrid -spacing1 -spacing2 -spacing3 -startline -state -tabs -tabstyle -takefocus -undo -width -wrap -xscrollcommand -yscrollcommand}
set ::option(tk::button) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -default -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -overrelief -padx -pady -relief -repeatdelay -repeatinterval -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(tk::button -textvariable)} n
set ::option(tk::canvas) {-background -bd -bg -borderwidth -closeenough -confine -cursor -height -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -offset -relief -scrollregion -selectbackground -selectborderwidth -selectforeground -state -takefocus -width -xscrollcommand -xscrollincrement -yscrollcommand -yscrollincrement}
set ::option(tk::checkbutton) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -offvalue -onvalue -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -tristateimage -tristatevalue -underline -variable -width -wraplength}
set {::option(tk::checkbutton -textvariable)} n
set {::option(tk::checkbutton -variable)} n
set ::option(tk::entry) {-background -bd -bg -borderwidth -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -readonlybackground -relief -selectbackground -selectborderwidth -selectforeground -show -state -takefocus -textvariable -validate -validatecommand -vcmd -width -xscrollcommand}
set {::option(tk::entry -textvariable)} n
set ::option(tk::frame) {-bd -borderwidth -class -relief -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set ::option(tk::label) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -padx -pady -relief -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(tk::label -textvariable)} n
set ::option(tk::labelframe) {-bd -borderwidth -class -fg -font -foreground -labelanchor -labelwidget -relief -text -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set ::option(tk::listbox) {-activestyle -background -bd -bg -borderwidth -cursor -disabledforeground -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -relief -selectbackground -selectborderwidth -selectforeground -selectmode -setgrid -state -takefocus -width -xscrollcommand -yscrollcommand -listvariable}
set {::option(tk::listbox -listvariable)} n
set ::option(tk::menubutton) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -cursor -direction -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -menu -padx -pady -relief -compound -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(tk::menubutton -textvariable)} n
set ::option(tk::message) {-anchor -aspect -background -bd -bg -borderwidth -cursor -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -justify -padx -pady -relief -takefocus -text -textvariable -width}
set {::option(tk::message -textvariable)} n
set ::option(tk::panedwindow) {-background -bd -bg -borderwidth -cursor -handlepad -handlesize -height -opaqueresize -orient -relief -sashcursor -sashpad -sashrelief -sashwidth -showhandle -width}
set ::option(tk::radiobutton) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -tristateimage -tristatevalue -underline -value -variable -width -wraplength}
set {::option(tk::radiobutton -textvariable)} n
set {::option(tk::radiobutton -variable)} n
set ::option(tk::scale) {-activebackground -background -bigincrement -bd -bg -borderwidth -command -cursor -digits -fg -font -foreground -from -highlightbackground -highlightcolor -highlightthickness -label -length -orient -relief -repeatdelay -repeatinterval -resolution -showvalue -sliderlength -sliderrelief -state -takefocus -tickinterval -to -troughcolor -variable -width}
set {::option(tk::scale -variable)} n
set ::option(tk::scrollbar) {-activebackground -activerelief -background -bd -bg -borderwidth -command -cursor -elementborderwidth -highlightbackground -highlightcolor -highlightthickness -jump -orient -relief -repeatdelay -repeatinterval -takefocus -troughcolor -width}
set ::option(tk::spinbox) {-activebackground -background -bd -bg -borderwidth -buttonbackground -buttoncursor -buttondownrelief -buttonuprelief -command -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -format -from -highlightbackground -highlightcolor -highlightthickness -increment -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -relief -readonlybackground -repeatdelay -repeatinterval -selectbackground -selectborderwidth -selectforeground -state -takefocus -textvariable -to -validate -validatecommand -values -vcmd -width -wrap -xscrollcommand}
set {::option(tk::spinbox -textvariable)} n
set ::option(tk::text) {-autoseparators -background -bd -bg -blockcursor -borderwidth -cursor -endline -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -inactiveselectbackground -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -maxundo -padx -pady -relief -selectbackground -selectborderwidth -selectforeground -setgrid -spacing1 -spacing2 -spacing3 -startline -state -tabs -tabstyle -takefocus -undo -width -wrap -xscrollcommand -yscrollcommand}
set ::option(tk::toplevel) {-bd -borderwidth -class -menu -relief -screen -use -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set ::option(tk_chooseColor) {-initialcolor -parent -title}
set ::option(tk_chooseDirectory) {-initialdir -mustexist -parent -title}
set ::option(tk_getOpenFile) {-defaultextension -filetypes -initialdir -initialfile -multiple -parent -title -typevariable}
set ::option(tk_getSaveFile) {-defaultextension -filetypes -initialdir -initialfile -parent -title -typevariable}
set ::option(tk_messageBox) {-default -detail -icon -message -parent -title -type}
set ::option(toplevel) {-bd -borderwidth -class -menu -relief -screen -use -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set ::option(ttk::button) {-takefocus -command -default -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(ttk::button -textvariable)} n
set ::option(ttk::checkbutton) {-takefocus -variable -onvalue -offvalue -command -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(ttk::checkbutton -textvariable)} n
set {::option(ttk::checkbutton -variable)} n
set ::option(ttk::combobox) {-height -postcommand -values -takefocus -exportselection -font -invalidcommand -justify -show -state -textvariable -validate -validatecommand -width -xscrollcommand -foreground -background -takefocus -cursor -style -class}
set {::option(ttk::combobox -textvariable)} n
set ::option(ttk::entry) {-takefocus -exportselection -font -invalidcommand -justify -show -state -textvariable -validate -validatecommand -width -xscrollcommand -foreground -background -takefocus -cursor -style -class}
set {::option(ttk::entry -textvariable)} n
set ::option(ttk::frame) {-borderwidth -padding -relief -width -height -takefocus -cursor -style -class}
set ::option(ttk::label) {-background -foreground -font -borderwidth -relief -anchor -justify -wraplength -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(ttk::label -textvariable)} n
set ::option(ttk::labelframe) {-labelanchor -text -underline -labelwidget -borderwidth -padding -relief -width -height -takefocus -cursor -style -class}
set ::option(ttk::menubutton) {-takefocus -menu -direction -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(ttk::menubutton -textvariable)} n
set ::option(ttk::notebook) {-takefocus -width -height -padding -takefocus -cursor -style -class}
set ::option(ttk::panedwindow) {-orient -width -height -takefocus -cursor -style -class}
set ::option(ttk::progressbar) {-orient -length -mode -maximum -variable -value -phase -takefocus -cursor -style -class}
set {::option(ttk::progressbar -variable)} n
set ::option(ttk::radiobutton) {-takefocus -variable -value -command -text -textvariable -underline -width -image -compound -padding -state -takefocus -cursor -style -class}
set {::option(ttk::radiobutton -textvariable)} n
set {::option(ttk::radiobutton -variable)} n
set ::option(ttk::scale) {-takefocus -command -variable -orient -from -to -value -length -takefocus -cursor -style -class}
set {::option(ttk::scale -variable)} n
set ::option(ttk::scrollbar) {-command -orient -takefocus -cursor -style -class}
set ::option(ttk::separator) {-orient -takefocus -cursor -style -class}
set ::option(ttk::sizegrip) {-takefocus -cursor -style -class}
set {::option(ttk::style theme create)} {-parent -settings}
set ::option(ttk::treeview) {-takefocus -columns -displaycolumns -show -selectmode -height -padding -xscrollcommand -yscrollcommand -takefocus -cursor -style -class}
set ::option(unload) {-- -keeplibrary -nocomplain}
set ::option(unset) {-nocomplain --}

524
etc/soft/nagelfar/syntaxdb84.tcl

@ -0,0 +1,524 @@
# Automatically generated syntax database.
lappend ::dbInfo {Tcl 8.4.18 unix, Tk 8.4.18 x11}
set ::dbTclVersion 8.4
set ::knownGlobals {argc argv argv0 auto_index auto_oldpath auto_path env errorCode errorInfo tcl_interactive tcl_libPath tcl_library tcl_nonwordchars tcl_patchLevel tcl_pkgPath tcl_platform tcl_rcFileName tcl_version tcl_wordchars tk_library tk_patchLevel tk_strictMotif tk_version}
set ::knownCommands {. EvalAttached after append array auto_execok auto_import auto_load auto_load_index auto_mkindex auto_mkindex_old auto_qualify auto_reset bell bgerror binary bind bindtags break button canvas case catch cd checkbutton clipboard clock close concat continue destroy encoding entry eof error eval event exec exit expr fblocked fconfigure fcopy file fileevent flush focus font for foreach format frame gets glob global grab grid history if image incr info interp join label labelframe lappend lindex linsert list listbox llength load lower lrange lreplace lsearch lset lsort menu menubutton message msgcat::mc msgcat::mcload msgcat::mclocale msgcat::mcmax msgcat::mcmset msgcat::mcpreferences msgcat::mcset msgcat::mcunknown namespace open option pack package panedwindow parray pid pkg_compareExtension pkg_mkIndex place proc puts pwd radiobutton raise read regexp regsub rename return scale scan scrollbar seek selection send set socket source spinbox split string subst switch tclLdAout tclListValidFlags tclLog tclParseConfigSpec tclPkgSetup tclPkgUnknown tcl_endOfWord tcl_findLibrary tcl_startOfNextWord tcl_startOfPreviousWord tcl_wordBreakAfter tcl_wordBreakBefore tell text thread_load thread_source time tk tk_bindForTraversal tk_bisque tk_chooseColor tk_chooseDirectory tk_dialog tk_focusFollowsMouse tk_focusNext tk_focusPrev tk_getFileType tk_getOpenFile tk_getSaveFile tk_menuBar tk_menuSetFocus tk_messageBox tk_optionMenu tk_popup tk_setPalette tk_textCopy tk_textCut tk_textPaste tkwait toplevel trace unknown unset update uplevel upvar variable vwait while winfo wm}
set ::syntax(.) {s x*}
set {::syntax(. cget)} o
set {::syntax(. configure)} {o. x. p*}
set ::syntax(_obj,button) {s x*}
set {::syntax(_obj,button cget)} o
set {::syntax(_obj,button configure)} {o. x. p*}
set ::syntax(_obj,canvas) {s x*}
set {::syntax(_obj,canvas cget)} o
set {::syntax(_obj,canvas configure)} {o. x. p*}
set ::syntax(_obj,checkbutton) {s x*}
set {::syntax(_obj,checkbutton cget)} o
set {::syntax(_obj,checkbutton configure)} {o. x. p*}
set ::syntax(_obj,entry) {s x*}
set {::syntax(_obj,entry cget)} o
set {::syntax(_obj,entry configure)} {o. x. p*}
set ::syntax(_obj,frame) {s x*}
set {::syntax(_obj,frame cget)} o
set {::syntax(_obj,frame configure)} {o. x. p*}
set ::syntax(_obj,label) {s x*}
set {::syntax(_obj,label cget)} o
set {::syntax(_obj,label configure)} {o. x. p*}
set ::syntax(_obj,labelframe) {s x*}
set {::syntax(_obj,labelframe cget)} o
set {::syntax(_obj,labelframe configure)} {o. x. p*}
set ::syntax(_obj,listbox) {s x*}
set {::syntax(_obj,listbox cget)} o
set {::syntax(_obj,listbox configure)} {o. x. p*}
set {::syntax(_obj,listbox selection)} {s x x?}
set ::syntax(_obj,menu) {s x*}
set {::syntax(_obj,menu cget)} o
set {::syntax(_obj,menu configure)} {o. x. p*}
set ::syntax(_obj,menubutton) {s x*}
set {::syntax(_obj,menubutton cget)} o
set {::syntax(_obj,menubutton configure)} {o. x. p*}
set ::syntax(_obj,message) {s x*}
set {::syntax(_obj,message cget)} o
set {::syntax(_obj,message configure)} {o. x. p*}
set ::syntax(_obj,panedwindow) {s x*}
set {::syntax(_obj,panedwindow cget)} o
set {::syntax(_obj,panedwindow configure)} {o. x. p*}
set ::syntax(_obj,radiobutton) {s x*}
set {::syntax(_obj,radiobutton cget)} o
set {::syntax(_obj,radiobutton configure)} {o. x. p*}
set ::syntax(_obj,scale) {s x*}
set {::syntax(_obj,scale cget)} o
set {::syntax(_obj,scale configure)} {o. x. p*}
set ::syntax(_obj,scrollbar) {s x*}
set {::syntax(_obj,scrollbar cget)} o
set {::syntax(_obj,scrollbar configure)} {o. x. p*}
set ::syntax(_obj,spinbox) {s x*}
set {::syntax(_obj,spinbox cget)} o
set {::syntax(_obj,spinbox configure)} {o. x. p*}
set ::syntax(_obj,text) {s x*}
set {::syntax(_obj,text cget)} o
set {::syntax(_obj,text configure)} {o. x. p*}
set ::syntax(_obj,toplevel) {s x*}
set {::syntax(_obj,toplevel cget)} o
set {::syntax(_obj,toplevel configure)} {o. x. p*}
set ::syntax(after) {r 1}
set ::syntax(append) {n x*}
set ::syntax(array) {s v x?}
set {::syntax(array exists)} l
set {::syntax(array names)} {v x? x?}
set {::syntax(array set)} {n x}
set {::syntax(array size)} v
set {::syntax(array statistics)} v
set {::syntax(array unset)} {l x?}
set ::syntax(auto_execok) 1
set ::syntax(auto_import) 1
set ::syntax(auto_load) {r 1 2}
set ::syntax(auto_load_index) 0
set ::syntax(auto_mkindex) {r 1}
set ::syntax(auto_mkindex_old) {r 1}
set ::syntax(auto_qualify) 2
set ::syntax(auto_reset) 0
set ::syntax(bell) {o* x*}
set ::syntax(bgerror) 1
set ::syntax(binary) {s x*}
set {::syntax(binary scan)} {x x n n*}
set ::syntax(bind) {x x? cg?}
set ::syntax(bindtags) {x x?}
set ::syntax(break) 0
set ::syntax(button) {x p*}
set ::syntax(canvas) {x p*}
set ::syntax(case) x*
set ::syntax(catch) {c n?}
set ::syntax(cd) {r 0 1}
set ::syntax(checkbutton) {x p*}
set ::syntax(clipboard) {s x*}
set ::syntax(clock) {s x*}
set {::syntax(clock clicks)} o?
set {::syntax(clock format)} {x p*}
set {::syntax(clock scan)} {x p*}
set {::syntax(clock seconds)} 0
set ::syntax(close) 1
set ::syntax(concat) {r 0}
set ::syntax(continue) 0
set ::syntax(destroy) x*
set ::syntax(encoding) {s x*}
set {::syntax(encoding convertfrom)} {r 1 2}
set {::syntax(encoding convertto)} {r 1 2}
set {::syntax(encoding names)} 0
set {::syntax(encoding system)} {r 0 1}
set ::syntax(entry) {x p*}
set ::syntax(eof) 1
set ::syntax(error) {r 1 3}
set ::syntax(event) {s x*}
set ::syntax(exec) {o* x x*}
set ::syntax(exit) {r 0 1}
set ::syntax(fblocked) 1
set ::syntax(fconfigure) {x o. x. p*}
set ::syntax(fcopy) {x x p*}
set ::syntax(file) {s x*}
set {::syntax(file atime)} {x x?}
set {::syntax(file attributes)} {x o. x. p*}
set {::syntax(file channels)} x?
set {::syntax(file copy)} {o* x x x*}
set {::syntax(file delete)} {o* x x*}
set {::syntax(file dirname)} x
set {::syntax(file executable)} x
set {::syntax(file exists)} x
set {::syntax(file extension)} x
set {::syntax(file isdirectory)} x
set {::syntax(file isfile)} x
set {::syntax(file join)} {x x*}
set {::syntax(file link)} {o? x x?}
set {::syntax(file lstat)} {x n}
set {::syntax(file mkdir)} {x x*}
set {::syntax(file mtime)} {x x?}
set {::syntax(file nativename)} x
set {::syntax(file normalize)} x
set {::syntax(file owned)} x
set {::syntax(file pathtype)} x
set {::syntax(file readable)} x
set {::syntax(file readlink)} x
set {::syntax(file rename)} {o* x x x*}
set {::syntax(file rootname)} x
set {::syntax(file separator)} x?
set {::syntax(file size)} x
set {::syntax(file split)} x
set {::syntax(file stat)} {x n}
set {::syntax(file system)} x
set {::syntax(file tail)} x
set {::syntax(file type)} x
set {::syntax(file volumes)} 0
set {::syntax(file writable)} x
set ::syntax(fileevent) {x x x?}
set ::syntax(flush) 1
set ::syntax(focus) {o? x?}
set ::syntax(font) {s x*}
set ::syntax(for) {c E c c}
set ::syntax(format) {r 1}
set ::syntax(frame) {x p*}
set ::syntax(gets) {x n?}
set ::syntax(glob) {o* x x*}
set ::syntax(grab) {x x*}
set ::syntax(grid) {x x*}
set ::syntax(history) {s x*}
set ::syntax(if) {e c}
set ::syntax(image) {s x*}
set ::syntax(incr) {v x?}
set ::syntax(info) {s x*}
set {::syntax(info default)} {x x n}
set {::syntax(info exists)} l
set ::syntax(interp) {s x*}
set {::syntax(interp invokehidden)} {x o* x x*}
set ::syntax(join) {r 1 2}
set ::syntax(label) {x p*}
set ::syntax(labelframe) {x p*}
set ::syntax(lappend) {n x*}
set ::syntax(lindex) {r 2}
set ::syntax(linsert) {r 3}
set ::syntax(list) {r 0}
set ::syntax(listbox) {x p*}
set ::syntax(llength) 1
set ::syntax(load) {r 1 3}
set ::syntax(lower) {x x?}
set ::syntax(lrange) 3
set ::syntax(lreplace) {r 3}
set ::syntax(lsearch) {o* x x}
set ::syntax(lset) {n x x x*}
set ::syntax(lsort) {o* x}
set ::syntax(menu) {x p*}
set ::syntax(menubutton) {x p*}
set ::syntax(message) {x p*}
set ::syntax(msgcat::mc) {r 1}
set ::syntax(msgcat::mcload) 1
set ::syntax(msgcat::mclocale) {r 0}
set ::syntax(msgcat::mcmax) {r 0}
set ::syntax(msgcat::mcmset) 2
set ::syntax(msgcat::mcpreferences) 0
set ::syntax(msgcat::mcset) {r 2 3}
set ::syntax(msgcat::mcunknown) {r 2}
set ::syntax(namespace) {s x*}
set {::syntax(namespace import)} {o* x*}
set {::syntax(namespace which)} {o* x?}
set ::syntax(open) {r 1 3}
set ::syntax(option) {s x*}
set ::syntax(pack) {x x*}
set ::syntax(package) {s x*}
set ::syntax(panedwindow) {x p*}
set ::syntax(parray) {v x?}
set ::syntax(pid) {r 0 1}
set ::syntax(pkg_compareExtension) {r 1 2}
set ::syntax(pkg_mkIndex) {r 0}
set ::syntax(place) {x x*}
set ::syntax(proc) dp
set ::syntax(puts) {1: x : o? x x?}
set ::syntax(pwd) 0
set ::syntax(radiobutton) {x p*}
set ::syntax(raise) {x x?}
set ::syntax(read) {r 1 2}
set ::syntax(regexp) {o* x x n*}
set ::syntax(regsub) {o* x x x n?}
set ::syntax(rename) 2
set ::syntax(return) {p* x?}
set ::syntax(scale) {x p*}
set ::syntax(scan) {x x n*}
set ::syntax(scrollbar) {x p*}
set ::syntax(seek) {r 2 3}
set ::syntax(selection) {s x*}
set ::syntax(send) {o* x x x*}
set ::syntax(set) {1: v : n x}
set ::syntax(socket) {r 2}
set ::syntax(source) 1
set ::syntax(spinbox) {x p*}
set ::syntax(split) {r 1 2}
set ::syntax(string) {s x x*}
set {::syntax(string bytelength)} 1
set {::syntax(string compare)} {o* x x}
set {::syntax(string equal)} {o* x x}
set {::syntax(string first)} {r 2 3}
set {::syntax(string index)} 2
set {::syntax(string is)} {s o* x}
set {::syntax(string last)} {r 2 3}
set {::syntax(string length)} 1
set {::syntax(string map)} {o? x x}
set {::syntax(string match)} {o? x x}
set {::syntax(string range)} 3
set {::syntax(string repeat)} 2
set {::syntax(string replace)} {r 3 4}
set {::syntax(string tolower)} {r 1 3}
set {::syntax(string totitle)} {r 1 3}
set {::syntax(string toupper)} {r 1 3}
set {::syntax(string trim)} {r 1 2}
set {::syntax(string trimleft)} {r 1 2}
set {::syntax(string trimright)} {r 1 2}
set {::syntax(string wordend)} 2
set {::syntax(string wordstart)} 2
set ::syntax(subst) {o* x}
set ::syntax(tclLdAout) {r 0 3}
set ::syntax(tclListValidFlags) 1
set ::syntax(tclLog) 1
set ::syntax(tclParseConfigSpec) 4
set ::syntax(tclPkgSetup) 4
set ::syntax(tclPkgUnknown) {r 2 3}
set ::syntax(tcl_endOfWord) 2
set ::syntax(tcl_findLibrary) 6
set ::syntax(tcl_startOfNextWord) 2
set ::syntax(tcl_startOfPreviousWord) 2
set ::syntax(tcl_wordBreakAfter) 2
set ::syntax(tcl_wordBreakBefore) 2
set ::syntax(tell) 1
set ::syntax(text) {x p*}
set ::syntax(thread_load) 1
set ::syntax(thread_source) 1
set ::syntax(time) {c x?}
set ::syntax(tk) {s x*}
set ::syntax(tk_bindForTraversal) {r 0}
set ::syntax(tk_bisque) 0
set ::syntax(tk_chooseColor) p*
set ::syntax(tk_chooseDirectory) p*
set ::syntax(tk_dialog) {r 5}
set ::syntax(tk_focusFollowsMouse) 0
set ::syntax(tk_focusNext) 1
set ::syntax(tk_focusPrev) 1
set ::syntax(tk_getFileType) 0
set ::syntax(tk_getOpenFile) p*
set ::syntax(tk_getSaveFile) p*
set ::syntax(tk_menuBar) {r 0}
set ::syntax(tk_menuSetFocus) 1
set ::syntax(tk_messageBox) p*
set ::syntax(tk_optionMenu) {r 3}
set ::syntax(tk_popup) {r 3 4}
set ::syntax(tk_setPalette) {r 0}
set ::syntax(tk_textCopy) 1
set ::syntax(tk_textCut) 1
set ::syntax(tk_textPaste) 1
set ::syntax(tkwait) {s x}
set {::syntax(tkwait variable)} l
set ::syntax(toplevel) {x p*}
set ::syntax(trace) {s x x*}
set {::syntax(trace add)} {s x x x}
set {::syntax(trace add command)} {x x c3}
set {::syntax(trace add execution)} {x x c2}
set {::syntax(trace add variable)} {v x c3}
set {::syntax(trace info)} {s x x x}
set {::syntax(trace info command)} x
set {::syntax(trace info execution)} x
set {::syntax(trace info variable)} v
set {::syntax(trace remove)} {s x x x}
set {::syntax(trace remove command)} {x x x}
set {::syntax(trace remove execution)} {x x x}
set {::syntax(trace remove variable)} {v x x}
set {::syntax(trace variable)} {n x x}
set {::syntax(trace vdelete)} {v x x}
set {::syntax(trace vinfo)} l
set ::syntax(unknown) {r 0}
set ::syntax(unset) {o* l l*}
set ::syntax(update) s.
set ::syntax(vwait) n
set ::syntax(while) {E c}
set ::syntax(winfo) {s x x*}
set ::syntax(wm) {s x x*}
set ::return(button) _obj,button
set ::return(canvas) _obj,canvas
set ::return(checkbutton) _obj,checkbutton
set ::return(entry) _obj,entry
set ::return(frame) _obj,frame
set ::return(label) _obj,label
set ::return(labelframe) _obj,labelframe
set ::return(linsert) list
set ::return(list) list
set ::return(listbox) _obj,listbox
set ::return(llength) int
set ::return(lrange) list
set ::return(lreplace) list
set ::return(lsort) list
set ::return(menu) _obj,menu
set ::return(menubutton) _obj,menubutton
set ::return(message) _obj,message
set ::return(panedwindow) _obj,panedwindow
set ::return(radiobutton) _obj,radiobutton
set ::return(scale) _obj,scale
set ::return(scrollbar) _obj,scrollbar
set ::return(spinbox) _obj,spinbox
set ::return(text) _obj,text
set ::return(toplevel) _obj,toplevel
set ::subCmd(.) {cget configure}
set ::subCmd(_obj,button) {cget configure flash invoke}
set ::subCmd(_obj,canvas) {addtag bbox bind canvasx canvasy cget configure coords create dchars delete dtag find focus gettags icursor index insert itemcget itemconfigure lower move postscript raise scale scan select type xview yview}
set ::subCmd(_obj,checkbutton) {cget configure deselect flash invoke select toggle}
set ::subCmd(_obj,entry) {bbox cget configure delete get icursor index insert scan selection validate xview}
set ::subCmd(_obj,frame) {cget configure}
set ::subCmd(_obj,label) {cget configure}
set ::subCmd(_obj,labelframe) {cget configure}
set ::subCmd(_obj,listbox) {activate bbox cget configure curselection delete get index insert itemcget itemconfigure nearest scan see selection size xview yview}
set {::subCmd(_obj,listbox selection)} {anchor clear includes set}
set ::subCmd(_obj,menu) {activate add cget clone configure delete entrycget entryconfigure index insert invoke post postcascade type unpost yposition}
set ::subCmd(_obj,menubutton) {cget configure}
set ::subCmd(_obj,message) {cget configure}
set ::subCmd(_obj,panedwindow) {add cget configure forget identify panecget paneconfigure panes proxy sash}
set ::subCmd(_obj,radiobutton) {cget configure deselect flash invoke select}
set ::subCmd(_obj,scale) {cget configure coords get identify set}
set ::subCmd(_obj,scrollbar) {activate cget configure delta fraction get identify set}
set ::subCmd(_obj,spinbox) {bbox cget configure delete get icursor identify index insert invoke scan selection set validate xview}
set ::subCmd(_obj,text) {bbox cget compare configure debug delete dlineinfo dump edit get image index insert mark scan search see tag window xview yview}
set ::subCmd(_obj,toplevel) {cget configure}
set ::subCmd(array) {anymore donesearch exists get names nextelement set size startsearch statistics unset}
set ::subCmd(binary) {format scan}
set ::subCmd(clipboard) {append clear get}
set ::subCmd(clock) {clicks format scan seconds}
set ::subCmd(encoding) {convertfrom convertto names system}
set ::subCmd(event) {add delete generate info}
set ::subCmd(file) {atime attributes channels copy delete dirname executable exists extension isdirectory isfile join link lstat mkdir mtime nativename normalize owned pathtype readable readlink rename rootname separator size split stat system tail type volumes writable}
set ::subCmd(font) {actual configure create delete families measure metrics names}
set ::subCmd(history) {add change clear event info keep nextid redo}
set ::subCmd(image) {create delete height inuse names type types width}
set ::subCmd(info) {args body cmdcount commands complete default exists functions globals hostname level library loaded locals nameofexecutable patchlevel procs script sharedlibextension tclversion vars}
set ::subCmd(interp) {alias aliases create delete eval exists expose hidden hide invokehidden issafe marktrusted recursionlimit share slaves target transfer}
set ::subCmd(namespace) {children code current delete eval exists export forget import inscope origin parent qualifiers tail which}
set ::subCmd(option) {add clear get readfile}
set ::subCmd(package) {forget ifneeded names present provide require unknown vcompare versions vsatisfies}
set ::subCmd(selection) {clear get handle own}
set ::subCmd(string) {bytelength compare equal first index is last length map match range repeat replace tolower totitle toupper trim trimleft trimright wordend wordstart}
set {::subCmd(string is)} {alnum alpha ascii boolean control digit double false graph integer lower print punct space true upper wordchar xdigit}
set ::subCmd(tk) {appname caret scaling useinputmethods windowingsystem}
set ::subCmd(tkwait) {variable visibility window}
set ::subCmd(trace) {add info remove variable vdelete vinfo}
set {::subCmd(trace add)} {command execution variable}
set {::subCmd(trace info)} {command execution variable}
set {::subCmd(trace remove)} {command execution variable}
set ::subCmd(update) idletasks
set ::subCmd(winfo) {atom atomname cells children class colormapfull containing depth exists fpixels geometry height id interps ismapped manager name parent pathname pixels pointerx pointerxy pointery reqheight reqwidth rgb rootx rooty screen screencells screendepth screenheight screenmmheight screenmmwidth screenvisual screenwidth server toplevel viewable visual visualid visualsavailable vrootheight vrootwidth vrootx vrooty width x y}
set ::subCmd(wm) {aspect attributes client colormapwindows command deiconify focusmodel frame geometry grid group iconbitmap iconify iconmask iconname iconphoto iconposition iconwindow maxsize minsize overrideredirect positionfrom protocol resizable sizefrom stackorder state title transient withdraw}
set {::option(. cget)} {-bd -borderwidth -class -menu -relief -screen -use -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(. configure)} {-bd -borderwidth -class -menu -relief -screen -use -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,button cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -default -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -overrelief -padx -pady -relief -repeatdelay -repeatinterval -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,button configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -default -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -overrelief -padx -pady -relief -repeatdelay -repeatinterval -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,button configure -textvariable)} n
set {::option(_obj,canvas cget)} {-background -bd -bg -borderwidth -closeenough -confine -cursor -height -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -offset -relief -scrollregion -selectbackground -selectborderwidth -selectforeground -state -takefocus -width -xscrollcommand -xscrollincrement -yscrollcommand -yscrollincrement}
set {::option(_obj,canvas configure)} {-background -bd -bg -borderwidth -closeenough -confine -cursor -height -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -offset -relief -scrollregion -selectbackground -selectborderwidth -selectforeground -state -takefocus -width -xscrollcommand -xscrollincrement -yscrollcommand -yscrollincrement}
set {::option(_obj,checkbutton cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -offvalue -onvalue -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -underline -variable -width -wraplength}
set {::option(_obj,checkbutton configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -offvalue -onvalue -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -underline -variable -width -wraplength}
set {::option(_obj,checkbutton configure -textvariable)} n
set {::option(_obj,checkbutton configure -variable)} n
set {::option(_obj,entry cget)} {-background -bd -bg -borderwidth -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -readonlybackground -relief -selectbackground -selectborderwidth -selectforeground -show -state -takefocus -textvariable -validate -validatecommand -vcmd -width -xscrollcommand}
set {::option(_obj,entry configure)} {-background -bd -bg -borderwidth -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -readonlybackground -relief -selectbackground -selectborderwidth -selectforeground -show -state -takefocus -textvariable -validate -validatecommand -vcmd -width -xscrollcommand}
set {::option(_obj,entry configure -textvariable)} n
set {::option(_obj,frame cget)} {-bd -borderwidth -class -relief -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,frame configure)} {-bd -borderwidth -class -relief -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,label cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -padx -pady -relief -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,label configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -padx -pady -relief -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,label configure -textvariable)} n
set {::option(_obj,labelframe cget)} {-bd -borderwidth -class -fg -font -foreground -labelanchor -labelwidget -relief -text -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,labelframe configure)} {-bd -borderwidth -class -fg -font -foreground -labelanchor -labelwidget -relief -text -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,listbox cget)} {-activestyle -background -bd -bg -borderwidth -cursor -disabledforeground -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -relief -selectbackground -selectborderwidth -selectforeground -selectmode -setgrid -state -takefocus -width -xscrollcommand -yscrollcommand -listvariable}
set {::option(_obj,listbox configure)} {-activestyle -background -bd -bg -borderwidth -cursor -disabledforeground -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -relief -selectbackground -selectborderwidth -selectforeground -selectmode -setgrid -state -takefocus -width -xscrollcommand -yscrollcommand -listvariable}
set {::option(_obj,listbox configure -listvariable)} n
set {::option(_obj,menu cget)} {-activebackground -activeborderwidth -activeforeground -background -bd -bg -borderwidth -cursor -disabledforeground -fg -font -foreground -postcommand -relief -selectcolor -takefocus -tearoff -tearoffcommand -title -type}
set {::option(_obj,menu configure)} {-activebackground -activeborderwidth -activeforeground -background -bd -bg -borderwidth -cursor -disabledforeground -fg -font -foreground -postcommand -relief -selectcolor -takefocus -tearoff -tearoffcommand -title -type}
set {::option(_obj,menubutton cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -cursor -direction -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -menu -padx -pady -relief -compound -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,menubutton configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -cursor -direction -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -menu -padx -pady -relief -compound -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(_obj,menubutton configure -textvariable)} n
set {::option(_obj,message cget)} {-anchor -aspect -background -bd -bg -borderwidth -cursor -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -justify -padx -pady -relief -takefocus -text -textvariable -width}
set {::option(_obj,message configure)} {-anchor -aspect -background -bd -bg -borderwidth -cursor -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -justify -padx -pady -relief -takefocus -text -textvariable -width}
set {::option(_obj,message configure -textvariable)} n
set {::option(_obj,panedwindow cget)} {-background -bd -bg -borderwidth -cursor -handlepad -handlesize -height -opaqueresize -orient -relief -sashcursor -sashpad -sashrelief -sashwidth -showhandle -width}
set {::option(_obj,panedwindow configure)} {-background -bd -bg -borderwidth -cursor -handlepad -handlesize -height -opaqueresize -orient -relief -sashcursor -sashpad -sashrelief -sashwidth -showhandle -width}
set {::option(_obj,radiobutton cget)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -underline -value -variable -width -wraplength}
set {::option(_obj,radiobutton configure)} {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -underline -value -variable -width -wraplength}
set {::option(_obj,radiobutton configure -textvariable)} n
set {::option(_obj,radiobutton configure -variable)} n
set {::option(_obj,scale cget)} {-activebackground -background -bigincrement -bd -bg -borderwidth -command -cursor -digits -fg -font -foreground -from -highlightbackground -highlightcolor -highlightthickness -label -length -orient -relief -repeatdelay -repeatinterval -resolution -showvalue -sliderlength -sliderrelief -state -takefocus -tickinterval -to -troughcolor -variable -width}
set {::option(_obj,scale configure)} {-activebackground -background -bigincrement -bd -bg -borderwidth -command -cursor -digits -fg -font -foreground -from -highlightbackground -highlightcolor -highlightthickness -label -length -orient -relief -repeatdelay -repeatinterval -resolution -showvalue -sliderlength -sliderrelief -state -takefocus -tickinterval -to -troughcolor -variable -width}
set {::option(_obj,scale configure -variable)} n
set {::option(_obj,scrollbar cget)} {-activebackground -activerelief -background -bd -bg -borderwidth -command -cursor -elementborderwidth -highlightbackground -highlightcolor -highlightthickness -jump -orient -relief -repeatdelay -repeatinterval -takefocus -troughcolor -width}
set {::option(_obj,scrollbar configure)} {-activebackground -activerelief -background -bd -bg -borderwidth -command -cursor -elementborderwidth -highlightbackground -highlightcolor -highlightthickness -jump -orient -relief -repeatdelay -repeatinterval -takefocus -troughcolor -width}
set {::option(_obj,spinbox cget)} {-activebackground -background -bd -bg -borderwidth -buttonbackground -buttoncursor -buttondownrelief -buttonuprelief -command -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -format -from -highlightbackground -highlightcolor -highlightthickness -increment -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -relief -readonlybackground -repeatdelay -repeatinterval -selectbackground -selectborderwidth -selectforeground -state -takefocus -textvariable -to -validate -validatecommand -values -vcmd -width -wrap -xscrollcommand}
set {::option(_obj,spinbox configure)} {-activebackground -background -bd -bg -borderwidth -buttonbackground -buttoncursor -buttondownrelief -buttonuprelief -command -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -format -from -highlightbackground -highlightcolor -highlightthickness -increment -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -relief -readonlybackground -repeatdelay -repeatinterval -selectbackground -selectborderwidth -selectforeground -state -takefocus -textvariable -to -validate -validatecommand -values -vcmd -width -wrap -xscrollcommand}
set {::option(_obj,spinbox configure -textvariable)} n
set {::option(_obj,text cget)} {-autoseparators -background -bd -bg -borderwidth -cursor -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -maxundo -padx -pady -relief -selectbackground -selectborderwidth -selectforeground -setgrid -spacing1 -spacing2 -spacing3 -state -tabs -takefocus -undo -width -wrap -xscrollcommand -yscrollcommand}
set {::option(_obj,text configure)} {-autoseparators -background -bd -bg -borderwidth -cursor -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -maxundo -padx -pady -relief -selectbackground -selectborderwidth -selectforeground -setgrid -spacing1 -spacing2 -spacing3 -state -tabs -takefocus -undo -width -wrap -xscrollcommand -yscrollcommand}
set {::option(_obj,toplevel cget)} {-bd -borderwidth -class -menu -relief -screen -use -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set {::option(_obj,toplevel configure)} {-bd -borderwidth -class -menu -relief -screen -use -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set ::option(bell) {-displayof -nice}
set ::option(button) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -default -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -overrelief -padx -pady -relief -repeatdelay -repeatinterval -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(button -textvariable)} n
set ::option(canvas) {-background -bd -bg -borderwidth -closeenough -confine -cursor -height -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -offset -relief -scrollregion -selectbackground -selectborderwidth -selectforeground -state -takefocus -width -xscrollcommand -xscrollincrement -yscrollcommand -yscrollincrement}
set ::option(checkbutton) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -offvalue -onvalue -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -underline -variable -width -wraplength}
set {::option(checkbutton -textvariable)} n
set {::option(checkbutton -variable)} n
set {::option(clock clicks)} -milliseconds
set {::option(clock format)} {-format -gmt}
set {::option(clock scan)} {-base -gmt}
set ::option(entry) {-background -bd -bg -borderwidth -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -readonlybackground -relief -selectbackground -selectborderwidth -selectforeground -show -state -takefocus -textvariable -validate -validatecommand -vcmd -width -xscrollcommand}
set {::option(entry -textvariable)} n
set ::option(exec) {-- -keepnewline}
set ::option(fconfigure) {-blocking -buffering -buffersize -encoding -eofchar -error -handshake -lasterror -mode -peername -pollinterval -queue -sockname -sysbuffer -timeout -translation -ttycontrol -ttystatus -xchar}
set ::option(fcopy) {-command -size}
set {::option(file attributes)} {-group -owner -permissions}
set {::option(file copy)} {-- -force}
set {::option(file delete)} {-- -force}
set {::option(file link)} {-hard -symbolic}
set {::option(file rename)} {-- -force}
set ::option(focus) {-displayof -force -lastfor}
set ::option(frame) {-bd -borderwidth -class -relief -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set ::option(glob) {-- -directory -join -nocomplain -path -tails -types}
set {::option(glob -directory)} 1
set {::option(glob -path)} 1
set {::option(glob -types)} 1
set {::option(interp invokehidden)} {-- -global}
set ::option(label) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -justify -padx -pady -relief -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(label -textvariable)} n
set ::option(labelframe) {-bd -borderwidth -class -fg -font -foreground -labelanchor -labelwidget -relief -text -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set ::option(listbox) {-activestyle -background -bd -bg -borderwidth -cursor -disabledforeground -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -relief -selectbackground -selectborderwidth -selectforeground -selectmode -setgrid -state -takefocus -width -xscrollcommand -yscrollcommand -listvariable}
set {::option(listbox -listvariable)} n
set ::option(lsearch) {-all -ascii -decreasing -dictionary -exact -glob -increasing -inline -integer -not -real -regexp -sorted -start}
set {::option(lsearch -start)} 1
set ::option(lsort) {-ascii -command -decreasing -dictionary -increasing -index -integer -real -unique}
set {::option(lsort -command)} 1
set {::option(lsort -index)} 1
set ::option(menu) {-activebackground -activeborderwidth -activeforeground -background -bd -bg -borderwidth -cursor -disabledforeground -fg -font -foreground -postcommand -relief -selectcolor -takefocus -tearoff -tearoffcommand -title -type}
set ::option(menubutton) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -cursor -direction -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -menu -padx -pady -relief -compound -state -takefocus -text -textvariable -underline -width -wraplength}
set {::option(menubutton -textvariable)} n
set ::option(message) {-anchor -aspect -background -bd -bg -borderwidth -cursor -fg -font -foreground -highlightbackground -highlightcolor -highlightthickness -justify -padx -pady -relief -takefocus -text -textvariable -width}
set {::option(message -textvariable)} n
set {::option(namespace which)} {-variable -command}
set {::option(namespace which -variable)} v
set ::option(panedwindow) {-background -bd -bg -borderwidth -cursor -handlepad -handlesize -height -opaqueresize -orient -relief -sashcursor -sashpad -sashrelief -sashwidth -showhandle -width}
set ::option(puts) -nonewline
set ::option(radiobutton) {-activebackground -activeforeground -anchor -background -bd -bg -bitmap -borderwidth -command -compound -cursor -disabledforeground -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -image -indicatoron -justify -offrelief -overrelief -padx -pady -relief -selectcolor -selectimage -state -takefocus -text -textvariable -underline -value -variable -width -wraplength}
set {::option(radiobutton -textvariable)} n
set {::option(radiobutton -variable)} n
set ::option(regexp) {-- -about -all -expanded -indices -inline -line -lineanchor -linestop -nocase -start}
set {::option(regexp -start)} 1
set ::option(regsub) {-- -all -expanded -line -lineanchor -linestop -nocase -start}
set {::option(regsub -start)} 1
set ::option(return) {-code -errorcode -errorinfo}
set ::option(scale) {-activebackground -background -bigincrement -bd -bg -borderwidth -command -cursor -digits -fg -font -foreground -from -highlightbackground -highlightcolor -highlightthickness -label -length -orient -relief -repeatdelay -repeatinterval -resolution -showvalue -sliderlength -sliderrelief -state -takefocus -tickinterval -to -troughcolor -variable -width}
set {::option(scale -variable)} n
set ::option(scrollbar) {-activebackground -activerelief -background -bd -bg -borderwidth -command -cursor -elementborderwidth -highlightbackground -highlightcolor -highlightthickness -jump -orient -relief -repeatdelay -repeatinterval -takefocus -troughcolor -width}
set ::option(send) {-- -async -displayof}
set {::option(send -displayof)} 1
set ::option(spinbox) {-activebackground -background -bd -bg -borderwidth -buttonbackground -buttoncursor -buttondownrelief -buttonuprelief -command -cursor -disabledbackground -disabledforeground -exportselection -fg -font -foreground -format -from -highlightbackground -highlightcolor -highlightthickness -increment -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -invalidcommand -invcmd -justify -relief -readonlybackground -repeatdelay -repeatinterval -selectbackground -selectborderwidth -selectforeground -state -takefocus -textvariable -to -validate -validatecommand -values -vcmd -width -wrap -xscrollcommand}
set {::option(spinbox -textvariable)} n
set {::option(string compare)} {-length -nocase}
set {::option(string compare -length)} 1
set {::option(string equal)} {-length -nocase}
set {::option(string equal -length)} 1
set {::option(string is)} {-failindex -strict}
set {::option(string is -failindex)} n
set {::option(string map)} -nocase
set {::option(string match)} -nocase
set ::option(subst) {-nobackslashes -nocommands -novariables}
set ::option(switch) {-- -exact -glob -regexp}
set ::option(text) {-autoseparators -background -bd -bg -borderwidth -cursor -exportselection -fg -font -foreground -height -highlightbackground -highlightcolor -highlightthickness -insertbackground -insertborderwidth -insertofftime -insertontime -insertwidth -maxundo -padx -pady -relief -selectbackground -selectborderwidth -selectforeground -setgrid -spacing1 -spacing2 -spacing3 -state -tabs -takefocus -undo -width -wrap -xscrollcommand -yscrollcommand}
set ::option(tk_chooseColor) {-initialcolor -parent -title}
set ::option(tk_chooseDirectory) {-initialdir -mustexist -parent -title}
set ::option(tk_getOpenFile) {-defaultextension -filetypes -initialdir -initialfile -multiple -parent -title}
set ::option(tk_getSaveFile) {-defaultextension -filetypes -initialdir -initialfile -parent -title}
set ::option(tk_messageBox) {-default -icon -message -parent -title -type}
set ::option(toplevel) {-bd -borderwidth -class -menu -relief -screen -use -background -bg -colormap -container -cursor -height -highlightbackground -highlightcolor -highlightthickness -padx -pady -takefocus -visual -width}
set ::option(unset) {-nocomplain --}

1029
etc/soft/nagelfar/syntaxdb86.tcl

File diff suppressed because it is too large Load Diff

3
etc/soft/vim/vim/+ftplugin/c.vim

@ -0,0 +1,3 @@
set makeprg=LANG=C\ gcc\ %\ -o\ %< " Компилятор
set keywordprg=man\ 3 " Просмотр страниц руководства

3
etc/soft/vim/vim/+ftplugin/cpp.vim

@ -0,0 +1,3 @@
set makeprg=LANG=C\ g++\ %\ -o\ %< " Компилятор
set keywordprg=man\ 3 " Просмотр страниц руководства

7
etc/soft/vim/vim/+ftplugin/erlang.vim

@ -0,0 +1,7 @@
"-------------------------
" Настройки Erlang
"-------------------------
set makeprg=escript\ -s\ % " Проверка на ошибки и синтаксис
set errorformat=%f:%l:\ %m " Формат строки с информацией

9
etc/soft/vim/vim/+ftplugin/graphviz.vim

@ -0,0 +1,9 @@
set makeprg=dot\ -Gsize=10,15\ -Tpng\ %\ >\ %<.png
set errorformat=%f:\ Line\ %l\ %t:\ %m " Формат строки с информацией
" Выполнение файла с параметрами
nmap <F10> :!geeqie %<.png &<left><left>
vmap <F10> <esc>:!geeqie %<.png &<left><left>
imap <F10> <esc>:!geeqie %<.png &<left><left>
set foldmethod=marker

63
etc/soft/vim/vim/+ftplugin/haskell.vim

@ -0,0 +1,63 @@
set makeprg=ghc\ %\ -o\ %< " Компилятор
set foldexpr=HaskellFold(v:lnum)
set foldmethod=expr
" =============================================================================
" Descriptions: Provide a function providing folding information for haskell
" files.
" Maintainer: Vincent B (twinside@gmail.com)
" Warning: Assume the presence of type signatures on top of your functions to
" work well.
" Usage: drop in ~/vimfiles/plugin or ~/.vim/plugin
" Version: 1.0
" Changelog: - 1.0 : initial version
" =============================================================================
if exists("g:__HASKELLFOLD_VIM__")
finish
endif
let g:__HASKELLFOLD_VIM__ = 1
" Top level bigdefs
fun! s:HaskellFoldMaster( line ) "{{{
return a:line =~ '^data\s'
\ || a:line =~ '^type\s'
\ || a:line =~ '^newdata\s'
\ || a:line =~ '^class\s'
\ || a:line =~ '^instance\s'
\ || a:line =~ '^[^:]\+\s*::'
endfunction "}}}
" Top Level one line shooters.
fun! s:HaskellSnipGlobal(line) "{{{
return a:line =~ '^module'
\ || a:line =~ '^import'
\ || a:line =~ '^infix[lr]\s'
endfunction "}}}
" The real folding function
fun! HaskellFold( lineNum ) "{{{
let line = getline( a:lineNum )
" Beginning of comment
if line =~ '^\s*--'
return 2
endif
if s:HaskellSnipGlobal( line )
return 0
endif
if line =~ '^\s*$'
let nextline = getline(a:lineNum + 1)
if s:HaskellFoldMaster( nextline ) > 0 || s:HaskellSnipGlobal( nextline ) > 0
\ || nextline =~ "^--"
return 0
else
return -1
endif
endif
return 1
endfunction "}}}

15
etc/soft/vim/vim/+ftplugin/install.sh

@ -0,0 +1,15 @@
#!/bin/bash
#Создан: Вт 19 Янв 2010 08:40:13
#Изменён: Вс 25 авг 2013 02:41:19
DIR=../ftplugin
for f in *.vim; {
mkdir -p $DIR/${f/.vim}
ln -s ../../$(basename $(pwd))/$f $DIR/${f/.vim}/${f/.vim/.custom.vim} 2>/dev/null \
&& printf " %-20sOK\n" $f \
|| printf " %-20sУстановка не требуется\n" $f
}

6
etc/soft/vim/vim/+ftplugin/lisp.vim

@ -0,0 +1,6 @@
" Проверка на ошибки и синтаксис
set makeprg=sbcl\ --load\ %\ --eval\ '(progn\ (compile-file\ \"%\")(quit))';\ mv\ -f\ %<.fasl\ %<;\chmod\ +x\ %<
set errorformat=nil
setlocal omnifunc=lispcomplete#Complete

2
etc/soft/vim/vim/+ftplugin/ocaml.vim

@ -0,0 +1,2 @@
set makeprg=ocamlc\ %\ -o\ %< " Компилятор

5
etc/soft/vim/vim/+ftplugin/pascal.vim

@ -0,0 +1,5 @@
set keywordprg=man " Просмотр страниц руководства
set makeprg=fpc\ % " Проверка на ошибки и синтаксис
""set errorformat=%f:\ line\ %l:\ %m " Формат строки с информацией
set errorformat=%f(%l\\,%c)%*[\ ]%t%*[^:]:\ %m

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save