#!/bin/bash
###############################################
# Title: Tools/8bit/vim/isavim
# ID: $Id$
# Author: Franz Regensburger
# Copyright 1995 TU Muenchen
#
# open an xterm with isabelle font and start vim editor
# derived from vispec
#
# Franz Regensburger <regensbu@informatik.tu-muenchen.de> 22.3.95
#
###############################################
#
# The script `isavim' opens the editor vim in a xterm window with the
# special 8bit font for Isabelle. It also provides keyboard bindings for
# the access to the graphical characters.
#
# The script is configured by the master makefile ../Makefile and
# the perl script ../bin/gen-isavim which reads the configuration file
# ../config/key-table.inp. Edit these files to make changes!
#
###############################################
# do not edit below
###############################################
# directory where the scripts isaterm and initisaterm a located
ISAVIMDIR=$ISABELLE8BIT/vim
# make bash, axe, and vim accept 8 bit input
#export LANG=iso_8859_1
export LESSCHARSET=latin1
export INPUTRC=$ISABELLE8BIT/keyboard/bash.inputrc
###############################################
# Everything below and including the line
# `*xterm*vt100.translations: #override\'
# is configured by the perl script `gen-isavim'.
#
# DO NOT EDIT THE TRANSLATION MAP.
#
# In order to make changes to the keyboard mappings you should edit
# the configuration file `key-table.inp' which is interpreted by
# the perl script `gen-isavim',
###############################################
# start xterm ; keyboard translations are given as resource string
# the fonts can be selected in the xterm via ctrl-button3
#xterm -fn "isabelle14" -title "IsaVim" -geometry 80x40 -xrm "\
#*fontMenu.Label: 8 Bit Fonts for Isabelle" -xrm "\
#*fontMenu*font2*Label: Isabelle 14" -xrm "\
#*VT100*font2: isabelle14" -xrm "\
#*fontMenu*font3*Label: Isabelle 24 bold" -xrm "\
#*VT100*font3: isabelle24" -xrm "\
#*xterm*vt100.translations: #override\
xterm -fn "isabelle14" -title "IsaVim" -geometry 80x40 -xrm "\
*fontMenu.Label: 8 Bit Fonts for Isabelle" -xrm "\
*fontMenu*font1*Label: Isabelle 14" -xrm "\
*VT100*font1: isabelle14" -xrm "\
*fontMenu*font2*Label: Isabelle 24 bold" -xrm "\
*VT100*font2: isabelle24" -xrm "\
*xterm*vt100.translations: #override\
!Mod2 <Key>space: string(0xa0) \n\
!Mod2 Shift <Key>g: string(0xa1) \n\
!Mod2 Shift <Key>d: string(0xa2) \n\
!Mod2 Shift <Key>j: string(0xa3) \n\
!Mod2 Shift <Key>l: string(0xa4) \n\
!Mod2 Shift <Key>p: string(0xa5) \n\
!Mod2 Shift <Key>s: string(0xa6) \n\
!Mod2 Shift <Key>f: string(0xa7) \n\
!Mod2 Shift <Key>q: string(0xa8) \n\
!Mod2 Shift <Key>w: string(0xa9) \n\
!Mod2 <Key>a: string(0xaa) \n\
!Mod2 <Key>b: string(0xab) \n\
!Mod2 <Key>g: string(0xac) \n\
!Mod2 <Key>d: string(0xad) \n\
!Mod2 <Key>e: string(0xae) \n\
!Mod2 <Key>z: string(0xaf) \n\
!Mod2 <Key>h: string(0xb0) \n\
!Mod2 <Key>j: string(0xb1) \n\
!Mod2 <Key>k: string(0xb2) \n\
!Mod2 <Key>l: string(0xb3) \n\
!Mod2 <Key>m: string(0xb4) \n\
!Mod2 <Key>n: string(0xb5) \n\
!Mod2 <Key>x: string(0xb6) \n\
!Mod2 <Key>p: string(0xb7) \n\
!Mod2 <Key>r: string(0xb8) \n\
!Mod2 <Key>s: string(0xb9) \n\
!Mod2 <Key>t: string(0xba) \n\
!Mod2 <Key>f: string(0xbb) \n\
!Mod2 <Key>c: string(0xbc) \n\
!Mod2 <Key>q: string(0xbd) \n\
!Mod2 <Key>w: string(0xbe) \n\
!Mod4 <Key>n: string(0xbf) \n\
!Mod4 <Key>a: string(0xc0) \n\
!Mod4 <Key>o: string(0xc1) \n\
!Mod4 <Key>f: string(0xc2) \n\
!Mod4 <Key>t: string(0xc3) \n\
!Mod4 Shift <Key>f: string(0xc4) \n\
!Mod4 <Key>b: string(0xd8) \n\
!Mod4 <Key>e: string(0xd9) \n\
!Mod4 Shift <Key>e: string(0xda) \n\
!Mod4 <Key>u: string(0xdb) \n\
!Mod4 <Key>p: string(0xdc) \n\
!Mod4 Shift <Key>p: string(0xdd) \n\
!Mod4 <Key>l: string(0xde) \n\
!Mod4 Shift <Key>l: string(0xdf) \n\
!Mod4 <Key>g: string(0xe0) \n\
!Mod4 Shift <Key>g: string(0xe1) \n\
!Mod4 <Key>s: string(0xe2) \n\
!Mod4 Shift <Key>s: string(0xe3) \n\
!Mod4 <Key>i: string(0xe7) string(0xe8) \n\
!Mod4 Shift <Key>i: string(0xea) string(0xeb) \n\
!Mod4 Shift <Key>m: string(0xe8) \n\
!Mod4 <Key>m: string(0xeb) \n\
!Mod4 Shift <Key>n: string(0xf7) \n\
!Mod4 <Key>x: string(0xf2) \n\
! <Key>F2: string(0xe4) \n\
! <Key>F3: string(0xdd) \n\
! <Key>F4: string(0xcf) \n\
! <Key>F5: string(0xce) \n\
! <Key>F6: string(0xf1) \n\
! <Key>F7: string(0xe5) \n\
! <Key>F8: string(0xda) \n\
! <Key>F9: string(0xc4) \n\
! <Key>F10: string(0xcb) \n\
! <Key>F11: string(0xcc) \n\
! <Key>F12: string(0xea) string(0xeb) \n\
!Shift <Key>F1: string(0xe9) \n\
!Shift <Key>F2: string(0xea) \n\
!Shift <Key>F3: string(0xeb) \n\
!Shift <Key>F4: string(0xe9) string(0xeb) \n\
!Shift <Key>F5: string(0xf3) \n\
!Shift <Key>F6: string(0xf4) \n\
!Shift <Key>F7: string(0xf5) \n\
!Shift <Key>F8: string(0xf6) \n\
!Shift <Key>F9: string(0xca) \n\
!Shift <Key>F10: string(0xc9) \n\
!Ctrl <Key>F1: string(0xe6) \n\
!Ctrl <Key>F2: string(0xe7) \n\
!Ctrl <Key>F3: string(0xe8) \n\
!Ctrl <Key>F4: string(0xe6) string(0xe8) \n\
!Ctrl <Key>F5: string(0xc5) \n\
!Ctrl <Key>F6: string(0xc6) \n\
!Ctrl <Key>F7: string(0xc7) \n\
!Ctrl <Key>F8: string(0xc8) \n\
!Ctrl <Key>F9: string(0xfd) \n\
!Ctrl <Key>F10: string(0xcd) \n\
!Mod2 <Key>F1: string(0xed) \n\
!Mod2 <Key>F2: string(0xee) \n\
!Mod2 <Key>F3: string(0xef) \n\
!Mod2 <Key>F4: string(0xf0) \n\
!Mod2 <Key>F5: string(0xd4) \n\
!Mod2 <Key>F6: string(0xd5) \n\
!Mod2 <Key>F7: string(0xd6) \n\
!Mod2 <Key>F8: string(0xd7) \n\
!Mod2 <Key>F9: string(0xdc) \n\
!Mod2 <Key>F10: string(0xf8) \n\
!Mod4 <Key>F1: string(0xf9) \n\
!Mod4 <Key>F2: string(0xfa) \n\
!Mod4 <Key>F3: string(0xfb) \n\
!Mod4 <Key>F4: string(0xfc) \n\
!Mod4 <Key>F5: string(0xd0) \n\
!Mod4 <Key>F6: string(0xd1) \n\
!Mod4 <Key>F7: string(0xd2) \n\
!Mod4 <Key>F8: string(0xd3) \n\
!Mod4 <Key>F9: string(0xf7) \n\
!Mod4 <Key>F10: string(0xec) \n\
!Mod4 <Key>F11: string(0xfe) \n\
!Mod4 <Key>F12: string(0xff) \
" -e $ISAVIMDIR/initvim $*