13
0
Fork 0

LT: define a dedicated keys.in file for LT

This commit is contained in:
Ben Loftis 2024-05-06 12:05:38 -05:00
parent 76771cd935
commit f81c9c83de
3 changed files with 315 additions and 1 deletions

View File

@ -0,0 +1,310 @@
; this is a template file processed by tools/fmt-bindings to generate either
; a gtk accelmap file or a LaTeX key binding cheat sheet.
;
; it is the reference for any bindings or cheatsheets
;
;
; FORMAT:
; $text -> defines cheatsheet title as "text", which may contain LaTeX markup
;
; %group owner text -> defines a binding group called "group" which will have the title "text" on the cheatsheet.
; may be followed by zero or more lines of descriptive text,
; which may contain LaTeX markup. When generating native ardour
; bindings, the definition for a binding in group "group" will
; be placed in the "owner" block of the bindings file. The
; "owner" field is otherwise ignored.
;
; If the group name starts with "-", the binding will not appear
; on the cheetsheet.
;
; @group|action|binding|description -> defines an action+binding with description, as a member of a binding group
; if group starts with '-' it will not be printed in the cheatsheet.
; if group starts with '+' it will be printed in the cheatsheet no matter what
; if the group is a mouse binding group, action should contain a ':', and
; have the binding before the colon, and the target area after it
;; Title
$ARDOUR Shortcuts \linebreak Mnemonic US-Keypad
;; GROUP DEFINITIONS
%trans Global Global Transport \& Recording Control
%sess Global Global Session \& File Handling
%edit Editor Basic Editing
%vis Editor Changing What's Visible
%vws Editor Editor Views
%numpad Global Global NumPad Transport Functions
%gedt Global Global Editing Operations
%wvis Global Global Window Visibility
%edtrk Editor Track Actions from the Editor
%eep Editor Editing with Edit Point
Most edit functions operate on a single "Edit Point". The edit point can be any of: playhead (default), the mouse or an active marker. The choice of Edit Point (by default) also sets the Zoom Focus.
%aep Editor Aligning with the Edit Point
Align operations move regions so that their start/end/sync point is at the edit point. "Relative" operations
just align the first region and moves other selected regions to maintain relative positioning.
%gmark Global Global Marker Operations
%gmode Global Global Transport Modes
%gmon Global Global Monitor Operations
%movp Global Global Playhead Operations
A left click in the rulers positions the playhead unless Ardour is recording. You can use {\tt KP$\_$n} to move the
playhead to the n-th marker.
%emov Editor Moving the Playhead in the Editor
%rop Editor Region Operations
%grid Editor Grid Settings + Editor Modes
%select Editor Selecting
%gselect Global Selecting
%ranges Editor Defining Loop, Punch Range and Tempo Changes
%markers Editor Markers \& Locations
The "move" commands all move the active marker(s). Jump to the first 9 markers using
the keypad digits 1-9 (requires numlock).
%mmode Editor Mouse Modes
%mouse Editor Mouse Usage
Right click on most objects and controls displays a context menu
Shift+Right click deletes most objects.
OS X users without a 3 button mouse can use {\tt Option+Ctrl+Left} to simulate "Middle" for some purposes.
Use F1 to step through mouse modes.
%mobject Editor Mouse Object Mode
This mode provides many different operations on both regions and control points, partially depending on where you click/drag with the mouse. The "body" of a region is the area where the waveform is displayed.
%mzoom Editor Mouse Zoom Mode
%mops Editor Mouse Ops on Solo/Mute/Rec-enable
%mopsolo Editor Mouse Ops on Solo Buttons only
%mopsfader Editor Mouse Ops on Faders \& Plugin Controls
%midi Global Global MIDI commands
%notes MIDI Note Editing
%rec Recorder Recorder Page
;; END GROUP DEFINITIONS
;; punctuation
@vis|Editor/temporal-zoom-in| equal|zoom in
@vis|Editor/temporal-zoom-out| minus|zoom out
@vis|Editor/zoom-to-session| <@SECONDARY@><@TERTIARY@>underscore|zoom to session
@trans|Transport/ToggleRoll| space|toggle roll
@trans|Transport/ToggleRollForgetCapture| <@PRIMARY@>space|stop and destroy
@trans|Transport/record-roll| <@TERTIARY@>space|start recording
@gmark|Common/add-location-from-playhead| Tab|add marker
@ranges|Editor/set-loop-from-edit-range| bracketright|set loop range from edit range
;; Alt+number row: region operations
@rop|Region/toggle-region-mute| <@SECONDARY@>1|mute/unmute
@rop|Region/normalize-region| <@SECONDARY@>3|normalize
@rop|Region/boost-region-gain| <@SECONDARY@>6|increase region gain
@rop|Region/cut-region-gain| <@SECONDARY@>7|reduce region gain
;; letters
;; TOP ROW
;; note that ctrl-w is special and consumed by the keyboard snooper
@gmark|Common/jump-backward-to-mark| q|to previous mark
@sess|Common/Quit| <@PRIMARY@>q|quit
@gmark|Common/jump-forward-to-mark| w|to next mark
@sess|Main/QuickExport| <@PRIMARY@>e|quick export session
@rop|Region/export-region| <@PRIMARY@><@SECONDARY@>e|export selected region(s)
@sess|Main/StemExport| <@SECONDARY@><@TERTIARY@>e|stem export selected tracks
@mmode|MouseMode/set-mouse-mode-range| r|range mode
@edit|Editor/redo| <@PRIMARY@>r|redo
@trans|Transport/Record| <@TERTIARY@>r|engage record
@edit|Editor/alternate-redo| <@PRIMARY@>y|redo
@sess|Common/addExistingAudioFiles| <@PRIMARY@>i|import audio files
@gselect|Common/invert-selection| <@PRIMARY@><@TERTIARY@>i|invert selection
@sess|Main/Open| <@PRIMARY@>o|open an existing session
@sess|Main/Recent| <@PRIMARY@><@TERTIARY@>o|open a recent session
@edit|Editor/set-playhead| p|set playhead position
;; MIDDLE ROW
@trans|Transport/solo-selection| a|solo selection
@select|Editor/select-all-objects| <@PRIMARY@>a|select all objects
@wvis|Window/toggle-audio-connection-manager| <@SECONDARY@><@TERTIARY@>a|toggle audio patchbay
@rop|Editor/split-region| s|split/separate
@sess|Common/Save| <@PRIMARY@>s|save session
@vis|Editor/fit-selection| f|fit selection vertically
@edit|Editor/toggle-stationary-playhead| <@TERTIARY@>f|toggle stationary playhead
@mmode|MouseMode/set-mouse-mode-object| g|object mode
@edit|Editor/group-selected-regions| <@PRIMARY@>g|group selected regions
@edit|Editor/ungroup-selected-regions| <@PRIMARY@><@TERTIARY@>g|ungroup selected regions
@trans|Transport/Loop| l|loop play (the loop range)
;; BOTTOM ROW
@mmode|Editor/zoom-to-selection| z|zoom to selection
@edit|Editor/undo| <@PRIMARY@>z|undo
@edit|Editor/alternate-alternate-redo| <@PRIMARY@><@TERTIARY@>z|redo
@edit|Editor/editor-cut| <@PRIMARY@>x|cut
@mmode|MouseMode/set-mouse-mode-cut| c|cut mode
@edit|Editor/editor-copy| <@PRIMARY@>c|copy
@edit|Editor/editor-crop| <@PRIMARY@><@SECONDARY@>c|crop range
@edit|Editor/editor-paste| <@PRIMARY@>v|paste
@sess|Main/AddTrackBus| <@PRIMARY@><@TERTIARY@>n|add track(s) or bus(ses)
@sess|Main/New| <@PRIMARY@>n|open a new session
;; arrow keys, navigation etc.
@vis|Editor/step-tracks-up| Up|scroll up (step)
@select|Editor/select-prev-route| <@SECONDARY@>Up|select previous track/bus
@select|Editor/select-prev-stripable| <@SECONDARY@><@TERTIARY@>Up|select previous strip
@vis|Editor/move-selected-tracks-up| <@PRIMARY@>Up|move selected tracks up
@vis|Editor/step-tracks-down| Down|scroll down (step)
@select|Editor/select-next-route| <@SECONDARY@>Down|select next track/bus
@select|Editor/select-next-stripable| <@SECONDARY@><@TERTIARY@>Down|select next strip
@vis|Editor/move-selected-tracks-down| <@PRIMARY@>Down|move selected tracks down
@movp|Common/playhead-backward-to-grid| Left|to previous grid point
@movp|Common/playhead-forward-to-grid| Right|to next grid point
@vis|Editor/scroll-tracks-down| Page_Down|scroll down (page)
@vis|Editor/scroll-tracks-up| Page_Up|scroll up (page)
@movp|Transport/GotoStart| Home|to start marker
@movp|Transport/GotoEnd| End|to end marker
@edit|Editor/editor-delete| Delete|delete
@edit|Editor/alternate-editor-delete| BackSpace|backspace (delete)
;; this one is super-global, so we put it in the session group but don't show
;; it on cheat sheets etc.
@gedt|Main/Escape|Escape|break drag or deselect all
;; keypad
@gmark|Common/alternate-jump-forward-to-mark| <@PRIMARY@>KP_Right|to next mark
@gmark|Common/alternate-jump-backward-to-mark| <@PRIMARY@>KP_Left|to previous mark
@gedt|Common/start-range| comma|some text
@gedt|Common/finish-range| period|some text
@gmark|Common/alternate-add-location-from-playhead| KP_Enter|add mark at playhead
@gmark|Common/alternate-remove-location-from-playhead|<@PRIMARY@>KP_Enter|add mark at playhead
@numpad|Transport/numpad-decimal| KP_Decimal|numpad decimal should initiate and finalize a locate-to-marker
@numpad|Transport/alternate-numpad-decimal| KP_Separator|(some keybd layouts have separator instead of decimal)
@numpad|Transport/numpad-0|KP_0|some text
@numpad|Transport/numpad-1|KP_1|some text
@numpad|Transport/numpad-2|KP_2|some text
@numpad|Transport/numpad-3|KP_3|some text
@numpad|Transport/numpad-4|KP_4|some text
@numpad|Transport/numpad-5|KP_5|some text
@numpad|Transport/numpad-6|KP_6|some text
@numpad|Transport/numpad-7|KP_7|some text
@numpad|Transport/numpad-8|KP_8|some text
@numpad|Transport/numpad-9|KP_9|some text
;; F-N keys
@vws|Editor/save-visual-state-1|<@PRIMARY@>F1|some text
@vws|Editor/save-visual-state-2|<@PRIMARY@>F2|some text
@vws|Editor/save-visual-state-3|<@PRIMARY@>F3|some text
@vws|Editor/save-visual-state-4|<@PRIMARY@>F4|some text
@vws|Editor/save-visual-state-5|<@PRIMARY@>F5|some text
@vws|Editor/save-visual-state-6|<@PRIMARY@>F6|some text
@vws|Editor/save-visual-state-7|<@PRIMARY@>F7|some text
@vws|Editor/save-visual-state-8|<@PRIMARY@>F8|some text
@vws|Editor/save-visual-state-9|<@PRIMARY@>F9|some text
@vws|Editor/save-visual-state-10|<@PRIMARY@>F10|some text
@vws|Editor/save-visual-state-11|<@PRIMARY@>F11|some text
@vws|Editor/save-visual-state-12|<@PRIMARY@>F12|some text
@vws|Editor/goto-visual-state-1|F1|some text
@vws|Editor/goto-visual-state-2|F2|some text
@vws|Editor/goto-visual-state-3|F3|some text
@vws|Editor/goto-visual-state-4|F4|some text
@vws|Editor/goto-visual-state-5|F5|some text
@vws|Editor/goto-visual-state-6|F6|some text
@vws|Editor/goto-visual-state-7|F7|some text
@vws|Editor/goto-visual-state-8|F8|some text
@vws|Editor/goto-visual-state-9|F9|some text
@vws|Editor/goto-visual-state-10|F10|some text
@vws|Editor/goto-visual-state-11|F11|some text
@vws|Editor/goto-visual-state-12|F12|some text
;; numbers
@trans|Transport/ToggleExternalSync| <@SECONDARY@>grave|toggle external sync
@gmode|Transport/ToggleAutoReturn| 7|toggle auto return
; mouse stuff
@+mobject|foo|left-click:on body|select
@+mobject|foo|<@TERTIARY@>left-click:on body|extend selection
@+mobject|foo|<@PRIMARY@>left-click:on body|add/remove selection
@+mobject|foo|left-drag:on body|move region(s)
@+mobject|foo|<@PRIMARY@>left-drag:on body|copy+move region(s)
@+mobject|foo|<@PRIMARY@>middle-drag:on body|fixed time copy+move
@+mobject|foo|middle-drag:on body|fixed time move
@+mobject|foo|<@SECONDARY@><@TERTIARY@>midde:on body|lower region
@+mobject|foo|<@TERTIARY@>middle:on body|raise region
@+mobject|foo|<@PRIMARY@>left-drag:in trim bar|slip audio in region
@+mobject|foo|left-click:in trim bar|set region start
@+mobject|foo|middle:in trim bar|set region end
@+mobject|foo|left-drag:near ends of trim bar|adjust region edges
@+mobject|foo|left-click:in auto track|add control point
@+mobject|foo|left-drag:on point|move control point
@+mobject|foo|middle-drag:on point|fixed time adjust
@+mobject|foo|<@PRIMARY@>left-drag:on point|move point+later points
@+mobject|foo|<@PRIMARY@>middle-drag:on point|fixed time move
@+mobject|foo|left-drag:on line|move line segment
@+mobject|foo|<@PRIMARY@><@SECONDARY@>left-drag:on regions|rubber-band select
@+mobject|foo|left-drag:in auto track|rubber-band select\linebreak control points
@+mobject|foo|left-drag:empty space|rubber-band select
; mouse zoom
@+mzoom|foo|<@PRIMARY@>middle|zoom to session
@+mzoom|foo|middle-click|zoom out
@+mzoom|foo|left-click|zoom in
@+mzoom|foo|left+drag |define the new visible area
; mouse solo etc.
@+mops|foo|<@PRIMARY@>middle-click|learn MIDI control
@+mops|foo|<@PRIMARY@><@TERTIARY@>left-click|apply to all tracks/busses
@+mops|foo|<@PRIMARY@>left-click|apply to group
@+mops|foo|middle-click|momentary switch
@+mops|foo|left-click|apply to track or active group
; mouse solo
@+mopsolo|foo|<@PRIMARY@><@SECONDARY@>left-click|exclusive solo
@+mopsolo|foo|<@TERTIARY@>left-click|temporary latched solo
; mouse fader etc.
@+mopsfader|foo|<@PRIMARY@>middle-click|learn MIDI control
@+mopsfader|foo|<@TERTIARY@>left-click|reset to default
@+mopsfader|foo|<@PRIMARY@><@SECONDARY@>left-drag|finest-drag control
@+mopsfader|foo|<@PRIMARY@>left-drag|fine-drag control
@+mopsfader|foo|left-drag|adjust
;; MIDI Editing

View File

@ -51,7 +51,11 @@ UI_CONFIG_VARIABLE (bool, new_automation_points_on_lane, "new-automation-points-
UI_CONFIG_VARIABLE (bool, automation_edit_cancels_auto_hide, "automation-edit-cancels-auto-hide", false)
UI_CONFIG_VARIABLE (std::string, keyboard_layout, "keyboard-layout", "ansi")
UI_CONFIG_VARIABLE (std::string, keyboard_layout_name, "keyboard-layout-name", "ansi")
#ifndef LIVETRAX
UI_CONFIG_VARIABLE (std::string, default_bindings, "default-bindings", "ardour")
#else
UI_CONFIG_VARIABLE (std::string, default_bindings, "default-bindings", "livetrax")
#endif
UI_CONFIG_VARIABLE (std::string, vkeybd_layout, "vkeybd-layout", "QWERTY Single")
UI_CONFIG_VARIABLE (bool, only_copy_imported_files, "only-copy-imported-files", true)
UI_CONFIG_VARIABLE (bool, autoplay_files, "autoplay-files", false)

View File

@ -925,7 +925,7 @@ def build(bld):
# explicitly state the use of perl here so that it works on windows too
#
a_rule = 'perl %s/tools/fmt-bindings --platform="%s" --winkey="%s" --accelmap 1 ${SRC[0].abspath()} >${TGT}' % (bld.top_dir, sys.platform, bld.env['WINDOWS_KEY'] )
for b in [ 'ardour' ] :
for b in [ 'ardour', 'livetrax' ] :
obj = bld(
target = b + '.keys',
source = [ b + '.keys.in', 'mixer.bindings' ],