Del & Backspace Key - Linux Termcap

Bill Campbell bill at celestial.com
Sun Oct 11 09:56:30 PDT 2009


On Sat, Oct 10, 2009, Tom Aldridge wrote:
>OK, here's a whole nuther can of worms.
>
>Can anyone give me some direction on getting the delete key to act like 
>cancel as in "Del-Cancel" like SCO emulation did?
>... and Backspace to move left one character?
>
>While I have the xterm issue resolved for people running linux desktops, 
>I have others running Putty or Zoc.

This topic has been discussed at length here several times.

I strongly suggest using ctrl-C for cancel in all terminals
rather than the sco-unique DEL key for cancel.  ctrl-c works on
pretty much any OS other than SCO including all versions of
Linux, every *nix platform I've ever used, MS-DOS, and Windows.

Put this in your /etc/profile or FilePro startup script.

stty intr '^c'

To further complicate things, many xterms like to use the DECish
DEL for the backspace key instead of ctrl-h so hitting backspace
is likely to be interpreted as a cancel on SCO systems from xterm.
Getting Linux xterms to send ctrl-h instead of ctrl-? (DEL) can
be a bit ``interesting''.  I'm attaching the XTterm file I put in
my $HOME directory on all systems that sets up some non-standard
options including this.  The interesting bits are near the bottom
with backarrowKeyIsErase, charClass, and ttyModes in particular.

The backarrowKeyIsErase should tell the xterm to use ctrl-h
instead of the DECish ctrl-?

The charClass is a bit of magic I found that causes double clicks
to generally highlight interesting things like full file paths,
IP addresses, and such making it easy to copy/paste by double
clicking the pasting with the middle mouse button.  Don't ask me
to understand it.  It's one of those things I found in an e-mail
about xterms, and have used since.

The ttyModes does the same things for xterms as stty does at the
terminal interface so should probably be used in conjunction with
a similar command at startup.

Bill
-- 
INTERNET:   bill at celestial.com  Bill Campbell; Celestial Software LLC
URL: http://www.celestial.com/  PO Box 820; 6641 E. Mercer Way
Voice:          (206) 236-1676  Mercer Island, WA 98040-0820
Fax:            (206) 232-9186  Skype: jwccsllc (206) 855-5792

Only government can take perfectly good paper, cover it with perfectly good
ink and make the combination worthless.  -- Milton Friedman
-------------- next part --------------
!
!!
!! SAMPLE .Xdefaults / app-defaults  RESOURCE SPECIFICATIONS FOR XTERM
!!
!
!
!
!!
!! set default tty mode.
!!
!
!XTerm*ttyModes: intr ^? erase ^H kill ^U
!
!
!
!!
!! modify mouse functionality so that "Shift <Btn1Down>" has the same
!! functionality as "<Btn2Down>".
!!
!! The Ctrl<Btn2Down> xterm window menu CANNOT be popped up using
!! Shift Ctrl<Btn1Down>
!!
!
!*VT100*translations: #override\
!     Shift <Btn1Down>: insert-selection(PRIMARY, CUT_BUFFER0) \n\
!     Button1 <Btn3Down>: insert-selection(PRIMARY, CUT_BUFFER0)
!
!*VT100*Scrollbar*translations: #override\
!     Shift <Btn1Down>:   StartScroll(Continuous) MoveThumb() NotifyThumb() \n\
!     Shift <Btn1Motion>: MoveThumb() NotifyThumb() \n\
!     Button1 <Btn3Down>:   StartScroll(Continuous) MoveThumb() NotifyThumb() \n\
!     Button1 <Btn3Motion>: MoveThumb() NotifyThumb()
!
!
!
!!
!! menu resources
!!
!
!*SimpleMenu*BackingStore: NotUseful
!*SimpleMenu*menuLabel.font: -adobe-helvetica-bold-r-normal--*-120-*-*-*-*-iso*-*
!*SimpleMenu*menuLabel.vertSpace: 	100
!*SimpleMenu*HorizontalMargins: 16
!*SimpleMenu*Sme.height:	16
!
!*SimpleMenu*Cursor: left_ptr
!*mainMenu.Label:  Main Options
!*mainMenu*securekbd*Label:  Secure Keyboard
!*mainMenu*allowsends*Label:  Allow SendEvents
!*mainMenu*logging*Label:  Log to File
!*mainMenu*redraw*Label:  Redraw Window
!*mainMenu*suspend*Label:  Send STOP Signal
!*mainMenu*continue*Label:  Send CONT Signal
!*mainMenu*interrupt*Label:  Send INT Signal
!*mainMenu*hangup*Label:  Send HUP Signal
!*mainMenu*terminate*Label:  Send TERM Signal
!*mainMenu*kill*Label:  Send KILL Signal
!*mainMenu*quit*Label:  Quit
!
!*vtMenu.Label:  VT Options
!*vtMenu*scrollbar*Label:  Enable Scrollbar
!*vtMenu*jumpscroll*Label:  Enable Jump Scroll
!*vtMenu*reversevideo*Label:  Enable Reverse Video
!*vtMenu*autowrap*Label:  Enable Auto Wraparound
!*vtMenu*reversewrap*Label:  Enable Reverse Wraparound
!*vtMenu*autolinefeed*Label:  Enable Auto Linefeed
!*vtMenu*appcursor*Label:  Enable Application Cursor Keys
!*vtMenu*appkeypad*Label:  Enable Application Keypad
!*vtMenu*scrollkey*Label:  Scroll to Bottom on Key Press
!*vtMenu*scrollttyoutput*Label:  Scroll to Bottom on Tty Output
!*vtMenu*allow132*Label: Allow 80/132 Column Switching
!*vtMenu*cursesemul*Label:  Enable Curses Emulation
!*vtMenu*visualbell*Label:  Enable Visual Bell
!*vtMenu*marginbell*Label:  Enable Margin Bell
!*vtMenu*altscreen*Label:  Show Alternate Screen
!*vtMenu*softreset*Label:  Do Soft Reset
!*vtMenu*hardreset*Label:  Do Full Reset
!*vtMenu*tekshow*Label:  Show Tek Window
!*vtMenu*tekmode*Label:  Switch to Tek Mode
!*vtMenu*vthide*Label:  Hide VT Window
!
!*fontMenu.Label:  VT Fonts
!*fontMenu*fontdefault*Label:	Default
!*fontMenu*font1*Label:	6x10
!*VT100*font1:		6x10
!*fontMenu*font2*Label:	6x12
!*VT100*font2:		6x12
!*fontMenu*font3*Label:	9x15
!*VT100*font3:		9x15
!*fontMenu*font4*Label:	10x20
!*VT100*font4:		10x20
!*fontMenu*fontescape*Label:	Escape Sequence
!*fontMenu*fontsel*Label:		Selection
!!fontescape and fontsel overridden by application
!
!*tekMenu.Label:  Tek Options
!*tekMenu*tektextlarge*Label:  Large Characters
!*tekMenu*tektext2*Label:  #2 Size Characters
!*tekMenu*tektext3*Label:  #3 Size Characters
!*tekMenu*tektextsmall*Label:  Small Characters
!*tekMenu*tekpage*Label:  PAGE
!*tekMenu*tekreset*Label:  RESET
!*tekMenu*tekcopy*Label:  COPY
!*tekMenu*vtshow*Label:  Show VT Window
!*tekMenu*vtmode*Label:  Switch to VT Mode
!*tekMenu*tekhide*Label:  Hide Tek Window
!
*tek4014*fontLarge: 10x20
*tek4014*font2: 9x15
*tek4014*font3: 6x13
*tek4014*fontSmall: 6x10

XTerm*font:	10x20
XTerm*pointerShape:	arrow
XTerm*termName: xterm
XTerm*blink:			true
XTerm*loginShell:		true
XTerm*scrollBar:		true
! XTerm*cursorColor:		SlateBlue
XTerm*cursorColor:		red3
XTerm*backarrowKeyIsErase:	false
!XTerm*termName:  xterm-color
XTerm*background:	Grey95
!XTerm*background:	AntiqueWhite
!XTerm*background:	seashell2
!XTerm*background:	ivory2

XTerm*charClass:  33:48,37:48,43:48,45-47:48,64:48,126:48,95:48

XTerm*ttyModes: intr ^C erase ^H kill ^U


More information about the Filepro-list mailing list