## Main UserStartup for Eddie
##
## Contains setup of all the keyboard shortcuts and other customizable entries
##
## While it is perfectly OK to make changes in this file to suit your preferences,
## customization to UserStartup is best done in a local UserStartup file
## in ~/Library/Preferences/com.el34.eddie/UserStartup. That way your changes
## will not get overwritten each time you install a new copy of Eddie. This
## UserStartup file gets opened first, the local UserStartup second. You can
## therefore add and even undo the settings of this file in the local UserStartup
## in ~/Library/Preferences/com.el34.eddie/UserStartup.

## To turn on Emacs emulation mode, uncomment the appropriate lines near the
## end of this file

## add items to the worksets window context menu
## first add items for a context menu invoked on files

AddToWorksetsFileContextMenu -name 'Touch' 'touch $SELECTED_DOCUMENTS'
#AddToWorksetsFileContextMenu -name 'Make read only' 'chmod -w $SELECTED_DOCUMENTS'
#AddToWorksetsFileContextMenu -name 'Make writable' 'chmod +w $SELECTED_DOCUMENTS'
#AddToWorksetsFileContextMenu -name 'Lock' '/Developer/Tools/SetFile -a L $SELECTED_DOCUMENTS'
#AddToWorksetsFileContextMenu -name 'Unlock' '/Developer/Tools/SetFile -a l $SELECTED_DOCUMENTS'

## next add items for a context menu invoked either on groups or files
AddToWorksetsContextMenu -name 'Paste path' '$SELECTED_DOCUMENTS' -worksheet -pasteOnly

# add path to be used by Command-D; individual paths separated by ":"
# for now have to use absolute paths, shell variables not yet recognized;
# each path is searched recursively
# current directory is handled in a special way - if only "." is specified, it is
# only searched at the first level; if ".-r" notatition is used, a recursive search
# of the current directory is performed
OpenHeaderSearchPath ".:/usr/include/:/System/Library/Frameworks/:.-r"

# Add some useful patterns to the Find window strings menu
AddFindWindowFindPattern Identifier\ \"\(\[\[\:alpha\:\]_\]\[\[:alnum:\]_\]\*\)\" -pattern \(\[\[\:alpha\:\]_\]\[\[:alnum:\]_\]\*\) -regex -insertOnly -shortcut Command-Option-A
# AddFindWindowFindPattern Identifier\ \"\[\[\:alpha\:\]_\]\[\[:alnum:\]_\]\*\" -pattern \[\[\:alpha\:\]_\]\[\[:alnum:\]_\]\* -regex -insertOnly
AddFindWindowFindPattern Number\ \"\(\-\?\[0-9\]\+\)\" -pattern \(\-\?\[0-9\]\+\) -regex -insertOnly
# AddFindWindowFindPattern Number\ \"\-\?\[0-9\]\+\" -pattern \-\?\[0-9\]\+ -regex -insertOnly
AddFindWindowFindPattern Space\ \"\[\ \\t\]\+\" -pattern \[\ \\t\]\+ -regex -insertOnly -shortcut Command-Option-S
# AddFindWindowFindPattern Optional\ space\ \"\[\ \\t\]\*\" -pattern \[\ \\t\]\* -regex -insertOnly

# Populate the Edit and Context menus with some custom commands
AddEditUserMenu -name "Sort Selection" -toSubmenu Commands -shellCommand "sort -f < $_AS > $AS_" 
AddEditUserMenu -name "Undiff" -toSubmenu Commands -shellCommand "$EDDIE/Contents/Resources/tools/undiff < $_AS > $AS_"
AddEditUserMenu -name "Paste via undiff" -toSubmenu Commands -shellCommand "pbpaste | $EDDIE/Contents/Resources/tools/undiff > $AS_" -shortcut Control-Option-V
AddEditUserMenu -name "UPPERCASE" -toSubmenu Commands -shellCommand "perl -pe '$_=uc' <$_AS >$AS_" 
AddEditUserMenu -name "lowercase" -toSubmenu Commands -shellCommand "perl -pe '$_=lc' <$_AS >$AS_" 
AddEditUserMenu -name "CamelCase" -toSubmenu Commands -shellCommand "perl -pe 's/(?<=[^\\W_])_+([^\\W_])|([^\\W_]+)|_+/\\U$1\\L$2/g' <$_AS >$AS_" 
AddEditUserMenu -name "un_camel_case" -toSubmenu Commands -shellCommand "perl -pe 's/(^[A-Z]|(?![a-z])[A-Z])/_\\l\\1/g; s/(_)?(.*)/\\2/' <$_AS >$AS_" 

AddContextUserMenu -separator
AddContextUserMenu -name "Sort Selection" -shellCommand "sort -f < $_AS > $AS_"
AddContextUserMenu -name "Undiff" -shellCommand "$EDDIE/Contents/Resources/tools/undiff < $_AS > $AS_"
AddContextUserMenu -name "Paste via undiff" -shellCommand "pbpaste | $EDDIE/Contents/Resources/tools/undiff > $AS_" -shortcut Control-Option-V
AddContextUserMenu -name "UPPERCASE" -shellCommand "perl -pe '$_=uc' <$_AS >$AS_" 
AddContextUserMenu -name "lowercase" -shellCommand "perl -pe '$_=lc' <$_AS >$AS_" 
AddContextUserMenu -name "CamelCase" -shellCommand "perl -pe 's/(?<=[^\\W_])_+([^\\W_])|([^\\W_]+)|_+/\\U$1\\L$2/g' <$_AS >$AS_" 
AddContextUserMenu -name "un_camel_case" -shellCommand "perl -pe 's/(^[A-Z]|(?![a-z])[A-Z])/_\\l\\1/g; s/(_)?(.*)/\\2/' <$_AS >$AS_" 
AddContextUserMenu -separator
AddContextUserMenu -name "Copy as breakpoint" -toClipboard "b $DOCUMENT_NAME:$SELECTED_LINE" 

## This is the preferred MPW-style keyboard map

EditKeymap Editor_map

SetKey Command-Option-N				NewDocumentAsTabAlternate

SetKey Command-W					CloseTab
SetKey Command-Option-W				CloseAll
SetKey Command-Shift-W				Close

SetKey Control-Option-/ 			DeclarationLookup
SetKey Command-Option-/ 			DefinitionLookup
SetKey Command-Option-Shift-/ 		SymbolLookupDialog
SetKey Control-. 					SymbolCompletion
# see more symbol completion shortcuts below -- SymbolCompletionListNext


# fancy document openning shortcuts
SetKey Command-` 					SwapWithHeaderFile	# main shortcut, as shown in menu item
SetKey Command-Option-`				SwapWithHeaderFileAsTabAlternate
# SetKey Control-Tab				SwapWithHeaderFile	# alternate shortcut
SetKey 'Command-\\' 				SwitchWithNext
SetKey Command-D 					OpenSelection
SetKey Control-D					OpenSelectionAsTabAlternate
SetKey Command-Control-Shift-D		SimpleOpenSelection
SetKey Command-Shift-D	 			OpenHeader
SetKey Command-Control-P 			ActivateNextWindow
SetKey Shift-Command-Control-P 		ActivatePreviousWindow
SetKey Command-0 					ActivateWorksheet
SetKey Command-Option-0				ActivateWorkset
SetKey Command-Option-O				OpenDocumentAsTabAlternate
SetKey Command-Control-O			OpenInPreferredEditor
SetKey Command-S					Save
SetKey Command-Q					Quit

# Activate shell window instances using a shortcut
SetKey Command-1                    ActivateShell1
SetKey Command-2                    ActivateShell2
SetKey Command-3                    ActivateShell3
SetKey Command-4                    ActivateShell4
SetKey Command-5                    ActivateShell5
SetKey Command-6                    ActivateShell6
SetKey Command-7                    ActivateShell7
SetKey Command-8                    ActivateShell8

# cusror navigation shortcuts
SetKey Shift-LeftArrow 				ExtendOrShrinkLeft
SetKey Shift-RightArrow 			ExtendOrShrinkRight
SetKey Shift-UpArrow 				ExtendOrShrinkUp
SetKey Shift-DownArrow 				ExtendOrShrinkDown

SetKey Control-LeftArrow			SelectSubwordBeginning
SetKey Option-LeftArrow 			SelectWordBeginning
SetKey Command-LeftArrow 			SelectLineBeginning
SetKey Control-RightArrow			SelectSubwordEnd
SetKey Option-RightArrow 			SelectWordEnd
SetKey Command-RightArrow 			SelectLineEnd
SetKey Command-UpArrow 				GoToHome
SetKey Option-UpArrow 				GoToPageUp
SetKey Command-DownArrow 			GoToEnd
SetKey Option-DownArrow 			GoToPageDown
SetKey Option-PageUp 				GoToPageUp
SetKey Option-PageDown	 			GoToPageDown
SetKey Option-Home 					GoToHome
SetKey Option-End	 				GoToEnd
SetKey Control-UpArrow 				ScrollLineUp
SetKey Control-DownArrow 			ScrollLineDown
SetKey Control-Option-UpArrow 		ShowLineUp
SetKey Control-Option-DownArrow 	ShowLineDown

# Emacs style navigation commands that do not interfere with anything more important.
# SetKey Control-V					GoToPageDown
SetKey Control-P					UpArrow
SetKey Control-N					DownArrow
SetKey Control-B					LeftArrow
SetKey Control-F					RightArrow
SetKey Control-A					SelectLineBeginning
SetKey Control-E					SelectLineEnd
SetKey Command-Shift-.				GoToEnd
SetKey Command-Shift-,				GoToHome

# Mac-style selection expansion shortcuts
# SetKey Control-Shift-LeftArrow	ExtendToSubwordBeginning
# SetKey Option-Shift-LeftArrow 	ExtendToWordBeginning
# SetKey Command-Shift-LeftArrow 	ExtendToLineBeginning
# SetKey Control-Shift-RightArrow	ExtendToSubwordEnd
# SetKey Option-Shift-RightArrow 	ExtendToWordEnd
# SetKey Command-Shift-RightArrow 	ExtendToLineEnd

SetKey Control-Shift-LeftArrow		ExtendOrShrinkToSubwordLeft
SetKey Option-Shift-LeftArrow 		ExtendOrShrinkToWordLeft
SetKey Command-Shift-LeftArrow 		ExtendOrShrinkToLineLeft
SetKey Control-Shift-RightArrow		ExtendOrShrinkToSubwordRight
SetKey Option-Shift-RightArrow 		ExtendOrShrinkToWordRight
SetKey Command-Shift-RightArrow 	ExtendOrShrinkToLineRight

SetKey Shift-Home 					ExtendToDocumentBeginning
SetKey Shift-End			 		ExtendToDocumentEnd
SetKey Command-Shift-UpArrow		ExtendToDocumentBeginning
SetKey Command-Shift-DownArrow		ExtendToDocumentEnd

SetKey Shift-Control-UpArrow		FPGoToPreviousFunction
SetKey Shift-Control-DownArrow		FPGoToNextFunction

SetKey Option-Return				SwitchToLastEdit
SetKey Enter						SwitchToLastEdit
SetKey Option-Enter					GoBackToPreviousEdit
SetKey Option-Shift-Enter			GoForwardToNextEdit

# deleting
SetKey Command-Delete				DeleteToDocumentEnd
SetKey Command-Del					DeleteToDocumentEnd
SetKey Command-Shift-Delete			DeleteFromDocumentBeginning
SetKey Command-Shift-Del			DeleteFromDocumentBeginning
SetKey Option-Delete				DeleteToLineEnd
SetKey Option-Shift-Delete			DeleteFromLineBeginning
SetKey Option-Del					DeleteToLineEnd
SetKey Option-Shift-Del				DeleteFromLineBeginning
SetKey Control-Delete				DeleteLine
SetKey Control-Del					DeleteLine
SetKey Shift-Del					Delete
SetKey Shift-Delete					Delete

# formatting
SetKey Command-B 					Balance
SetKey Command-[ 					IndentLeft
SetKey Shift-Tab					IndentLeft
SetKey Command-] 					IndentRight
SetKey Tab							TabOrIndentRight
SetKey Command-Shift-[ 				MicroIndentLeft
SetKey Command-Shift-] 				MicroIndentRight
SetKey Control-Command-UpArrow		PullSelectionOrLinesUp
SetKey Control-Command-DownArrow	PullSelectionOrLinesDown
SetKey Control-Command-LeftArrow	SwapWithPreviousCharacter
SetKey Control-Command-RightArrow	SwapWithNextCharacter
SetKey Option-Command-LeftArrow		SwapWordLeft
SetKey Option-Command-RightArrow	SwapWordRight
SetKey Command-U					UpperCaseWord

# extended clipboard functions
SetKey Control-V					PasteFromHistory
SetKey Control-Shift-V				Paste_2
SetKey Command-Option-C 			CopyOnStack
SetKey Command-Option-V 			PasteFromStack
SetKey Command-Control-V 			SwapWithClipboard
SetKey Command-Option-X 			CutOnStack
SetKey Command-Shift-C				CopyAndAppend
SetKey Command-Shift-X				CutAndAppend
SetKey Kp1							PasteExtended1
SetKey Option-Kp1					PasteFromStackExtended1
SetKey Command-Kp1					CopyExtended1
SetKey Command-Shift-Kp1			CopyAndAppendExtended1
SetKey Command-Option-Kp1			CopyOnStackExtended1
SetKey Control-Kp1					ClearClipboardExtended1
SetKey Command-Control-Kp1			SwapWithClipboardExtended1
SetKey Kp2							PasteExtended2
SetKey Option-Kp2					PasteFromStackExtended2
SetKey Command-Kp2					CopyExtended2
SetKey Command-Shift-Kp2			CopyAndAppendExtended2
SetKey Command-Option-Kp2			CopyOnStackExtended2
SetKey Control-Kp2					ClearClipboardExtended2
SetKey Command-Control-Kp2			SwapWithClipboardExtended2
SetKey Kp3							PasteExtended3
SetKey Option-Kp3					PasteFromStackExtended3
SetKey Command-Kp3					CopyExtended3
SetKey Command-Shift-Kp3			CopyAndAppendExtended3
SetKey Command-Option-Kp3			CopyOnStackExtended3
SetKey Control-Kp3					ClearClipboardExtended3
SetKey Command-Control-Kp3			SwapWithClipboardExtended3

# search/replace
SetKey Command-E 					EnterFindString
SetKey Command-Shift-E 				EnterNewFindString
SetKey Command-Option-E				EnterReplaceString
SetKey Command-F 					OpenFindPanel
SetKey Command-Control-F			OpenQuickFindPanel
SetKey Command-Option-F				OpenQuickFindPanelFromCurrentPos
SetKey Command-Shift-F 				SetMultiFileSearchInWorkset
SetKey Command-G 					FindAgain
SetKey Shift-Command-G 				ReverseFindAgain
# SetKey Command-H 					EnterAndFind
# SetKey Shift-Command-H 			EnterAndFindReverse
SetKey Command-J 					EnterAndFind
SetKey Shift-Command-J 				EnterAndFindReverse
SetKey Command-= 					ReplaceAndFind
SetKey Command-Option-G				FindInNextDocument
SetKey Command-Shift-Option-G		FindInPreviousDocument

SetKey Command-L 					GoToLine

# font size
SetKey Command-Shift-+ 				IncreaseFontSize
SetKey Command-- 					DecreaseFontSize

#fancy editing
SetKey Command-Control-K			OpenBefore
SetKey Command-Control-Shift-K		OpenAfter

#window splitting
#SetKey Command-Control-T			SplitPaneHorizontal
#SetKey Command-Option-Control-T		SplitPaneVertical

#tabs
SetKey Command-Shift-T				ToggleTabBar
SetKey Control-Shift-Tab			ActivatePreviousTab
SetKey Control-Tab					ActivateNextTab
SetKey Command-Control-T			MergeFrontWindowsAsTabs
SetKey Command-Shift-Control-T		MergeAllWindowsAsTabs
SetKey Command-Option-U				MoveTabToNewWindow
SetKey Command-Shift-Option-U		MoveAllTabsToNewWindows
#SetKey Command-Shift-[				ActivatePreviousTab
#SetKey Command-Shift-]				ActivateNextTab

# Shell execute
SetKey Command-Option-Control-Return TempShellExecute
SetKey Control-C					ShellBreak

#prototyper
SetKey Control-Option-P				PrototyperGetOrPastePrototypes
SetKey Control-P					PrototyperGetOrPasteAllPrototypes

##ifdef balancer
SetKey Command-Option-B 			IfdefBalancerBalance
SetKey Command-Shift-B 				IfdefBalancerInclusiveBalance
SetKey Command-I					IfdefBalancerIfUserSymbolSelection
SetKey Command-Shift-I				IfdefBalancerIfNotUserSymbolSelection
SetKey Command-Option-I				IfdefBalancerIfdefUserSymbolSelection
SetKey Command-Option-Shift-I		IfdefBalancerIfndefUserSymbolSelection
SetKey Control-0					IfdefBalancerIfZeroSelection
SetKey Command-Control-B			IfdefBalancerIfDebugSelection
SetKey Command-Control-I			IfdefBalancerSelectNextUserSymbol
SetKey Command-Control-Shift-I		IfdefBalancerSelectPreviousUserSymbol
SetKey Command-Control-Option-I		IfdefBalancerDefineUserSymbol

##commenter
SetKey Command-/ 					UncommentOrPreferredComment
SetKey Control-Command-/ 			UncommentOrCommentSelection

##functionPopup
SetKey Control-Shift-UpArrow		FPGoToPreviousFunction
SetKey Control-Shift-DownArrow		FPGoToNextFunction

## more symbol lookup
SetKey --tryFirst Control-DownArrow	SymbolCompletionListNext

##find settings

SetKey Command-Control-S			ToggleCaseSensitiveSearch
SetKey Command-Control-W			ToggleWholeWordSearch
SetKey Command-Control-X			ToggleRegExpSearch
SetKey Command-Control-A			ToggleWrapAroundSearch
SetKey Command-Control-M 			ToggleMultiFileSearch
SetKey Command-Shift-F 				SetMultiFileSearchInWorkset
SetKey Command-Control-E 			SearchSelectNextFindString 
SetKey Command-Control-Shift-E		SearchSelectPreviousFindString 
SetKey Command-Option-P 			SetMultiFileSearchInTargetDir
SetKey Command-Shift-Option-P		SetMultiFileSearchInOpenWindows
SetKey Command-Shift-Option-T		SetMultiFileSearchInTabs
# SetKey Command-Control-F			FindPanelToggleKeepInFront
# SetKey Command-Control-P 			SetMultiFileSearchInDocumentDir


# FindWindow specific keyboard shortcuts

EditKeymap Find_map

SetKey Command-Control-S			ToggleCaseSensitiveSearch
SetKey Command-Control-W			ToggleWholeWordSearch
SetKey Command-Control-X			ToggleRegExpSearch
SetKey Command-Control-A			ToggleWrapAroundSearch
SetKey Command-Control-F			FindPanelToggleKeepInFront
SetKey Command-Control-M 			ToggleMultiFileSearch
SetKey Command-Shift-F	 			SetMultiFileSearchInWorkset
SetKey Command-Option-P 			SetMultiFileSearchInTargetDir
SetKey Command-Shift-Option-P		SetMultiFileSearchInOpenWindows
SetKey Command-Shift-Option-T		SetMultiFileSearchInTabs
SetKey Option-Return				FindPanelInsertReturn
SetKey Option-Tab					FindPanelInsertTab
SetKey Tab							FindPanelFocusNext
SetKey Shift-Tab					FindPanelFocusPrevious
SetKey Return						FindPanelInvokeDefault
SetKey Enter						FindPanelInvokeDefault
SetKey Shift-Return					FindPanelInvokeReverse
SetKey Shift-Enter					FindPanelInvokeReverse
SetKey Command-Control-E            SearchSelectNextFindString
SetKey Shift-Command-Control-E      SearchSelectPreviousFindString

# QuickFindWindow specific keyboard shortcuts

EditKeymap QuickFind_map

SetKey Command-G					QuickFindNext
SetKey Command-Shift-G				QuickFindPrevious
SetKey Control-S					QuickFindNext
SetKey Control-R					QuickFindPrevious


# Editor_map - based shell keyboard map

CopyKeymap Editor_map Shell_map
EditKeymap Shell_map

#shell only shortcuts
SetKey Control-C					ShellBreak
SetKey Command-.					ShellBreak
SetKey Return						ShellExecute
SetKey Command-Return				ShellInsertReturn
SetKey Control-Return				ShellInsertReturn
SetKey Tab							ShellTabComplete
SetKey Option-Tab					ShellInsertTab

EditKeymap Editor_map

############# alternative keymaps ###################################

###### Emacs-like map ########

# To use this uncomment the following map and comment the default one
# above

# NewKeymap Editor_map
# 
# #navgiation
# SetKey Control-V					GoToPageDown
# SetKey Command-V					GoToPageUp
# 
# SetKey Control-P					UpArrow
# SetKey Control-N					DownArrow
# SetKey Control-B					LeftArrow
# SetKey Control-F					RightArrow
# 
# SetKey Command-B					SelectWordBeginning
# SetKey Command-F					SelectWordEnd
# 
# SetKey Control-A					SelectLineBeginning
# SetKey Control-E					SelectLineEnd
# 
# SetKey Command-Shift-.				GoToEnd
# SetKey Command-Shift-,				GoToHome
# 
# # deleting
# SetKey Delete						Backspace
# SetKey Control-D					Delete
# 
# SetKey Command-Delete				DeleteFromWordBeginning
# SetKey Command-D					EmacsKillToWordEnd
# SetKey Control-K					EmacsKillToLineEnd
# 
# # yank
# SetKey Control-Y					EmacsYank
# SetKey Command-Y					EmacsYankPop
# SetKey Control-W					Cut
# 
# # undo
# SetKey Control-Shift--				Undo
# 
# # misc
# SetKey Control-S					OpenQuickFindPanel
# SetKey Control-X					ActivateAlternate1Map
# SetKey Control-T					Transpose
# 
# SetKey Command-L					LowerCaseWord
# SetKey Command-U					UpperCaseWord
# SetKey Command-C					CapitalizeWord
# 
# SetKey Control-O					OpenLine
# SetKey Control-Option-O				OpenBefore
# SetKey Control-Shift-Option-O		OpenAfter
# 
# # alternate meta key
# SetKey Escape						ActivateAlternate2Map
# 
# #shell only shortcuts
# SetKey Control-C					ShellBreak
# SetKey Command-.					ShellBreak
# SetKey Control-D					ShellEOF
# SetKey Return						ShellExecute
# SetKey Command-Return				ShellInsertReturn
# SetKey Control-Return				ShellInsertReturn
# SetKey Tab							ShellTabComplete
# SetKey Option-Tab					ShellInsertTab
# 
# # non-emacs generic stuff that won't hurt having
# SetKey Delete						Backspace
# SetKey Del							Delete
# SetKey DownArrow					DownArrow
# SetKey UpArrow						UpArrow
# SetKey RightArrow					RightArrow
# SetKey LeftArrow					LeftArrow
# SetKey PageUp						GoToPageUp
# SetKey PageDown						GoToPageDown
# SetKey Home							GoToHome
# SetKey End							GoToEnd
# SetKey Control-Command-UpArrow		SwapWithPreviousLine
# SetKey Control-Command-DownArrow	SwapWithNextLine
# SetKey Control-Command-LeftArrow	SwapWithPreviousCharacter
# SetKey Control-Command-RightArrow	SwapWithNextCharacter
# SetKey Option-Command-LeftArrow		SwapWordLeft
# SetKey Option-Command-RightArrow	SwapWordRight
# 
# SetKey Command-G					GoToLine
# 
# SetKey Kp1							PasteExtended1
# SetKey Option-Kp1					PasteFromStackExtended1
# SetKey Command-Kp1					CopyExtended1
# SetKey Command-Shift-Kp1			CopyAndAppendExtended1
# SetKey Command-Option-Kp1			CopyOnStackExtended1
# SetKey Control-Kp1					ClearClipboardExtended1
# SetKey Command-Control-Kp1			SwapWithClipboardExtended1
# SetKey Kp2							PasteExtended2
# SetKey Option-Kp2					PasteFromStackExtended2
# SetKey Command-Kp2					CopyExtended2
# SetKey Command-Shift-Kp2			CopyAndAppendExtended2
# SetKey Command-Option-Kp2			CopyOnStackExtended2
# SetKey Control-Kp2					ClearClipboardExtended2
# SetKey Command-Control-Kp2			SwapWithClipboardExtended2
# SetKey Kp3							PasteExtended3
# SetKey Option-Kp3					PasteFromStackExtended3
# SetKey Command-Kp3					CopyExtended3
# SetKey Command-Shift-Kp3			CopyAndAppendExtended3
# SetKey Command-Option-Kp3			CopyOnStackExtended3
# SetKey Control-Kp3					ClearClipboardExtended3
# SetKey Command-Control-Kp3			SwapWithClipboardExtended3
# 
# ## this map gets activated by Control-X
# 
# NewKeymap emacs_like_alternate1 -oneShot -beeping -mapHint C-X
# 
# SetKey U							Undo
# SetKey Control-F					OpenDocument
# SetKey Control-S					Save
# SetKey Control-W					SaveAs
# SetKey Control-C					Quit
# 
# #pane splitting
# SetKey 0							UnsplitPane
# SetKey 2							SplitPaneHorizontal
# SetKey 3							SplitPaneVertical
# 
# ## this map is for supporting Escape instead of the Meta key
# 
# NewKeymap emacs_like_Meta -oneShot -beeping -mapHint M-
# 
# SetKey V							GoToPageUp
# 
# SetKey B							SelectWordBeginning
# SetKey F							SelectWordEnd
# 
# SetKey Shift-.						GoToEnd
# SetKey Shift-,						GoToHome
# 
# SetKey Delete						DeleteFromWordBeginning
# SetKey D							EmacsKillToWordEnd
# 
# SetKey Y							EmacsYankPop
# 
# SetKey G							GoToLine
# 
# SetKey L							LowerCaseWord
# SetKey U							UpperCaseWord
# SetKey C							CapitalizeWord
#
# #activate emacs bindings
# #SetAlternate1Keymap emacs_like_alternate1
# #SetAlternate2Keymap emacs_like_Meta

# make SetKey display the MPW keyboard
EditKeymap Editor_map

################# Language support defines ###############################
########### User defined words for the syntax coloring plugin ############

SCAddUserDefinedCWords uchar SInt8 UInt8 SInt16 UInt16 SInt32 UInt32 SInt64 UInt64 time_t off_t size_t OSErr OSStatus OSType
SCAddUserDefinedCWords NSRect NSSize NSPoint CGRect CGSize CGPoint
SCAddUserDefinedCWords id Class SEL IMP BOOL self super nil Nil YES NO oneway in out inout bycopy byref
SCAddUserDefinedCWords NSObject NSView NSWindow NSControl NSImage NSColor

SCAddUserDefinedMakeWords AR AS CC CXX YACC BISON LEX FLAX LD TAGS CFLAGS CPPFLAGS CXXFLAGS LDFLAGS INCLUDES 
SCAddUserDefinedMakeWords MAKE MAKEFILES VPATH SHELL MAKELEVEL MAKEFLAGS SUFFIXES
SCAddUserDefinedMakeWords clean all install tar
SCAddUserDefinedMakeWords OBJS

