# Seq66 0.94.1 (and above) user ('usr') configuration file
#
# C:\Users\chris\AppData\Local\seq66\qpseq66.usr
# Written 2021-06-19 07:58:39
#
# This is a Seq66 'usr' file. Edit it and place it in the
# $HOME/.config/seq66 directory. It allows one to apply an alias
# (alternate name) to each MIDI bus, MIDI channel, and MIDI control
# control code, per channel. It has additional options not present in
# in Seq24, and supports DOS INI-style variable setting.

[Seq66]

config-type = "usr"
version = 5

# The [comments] section lets one document this file.  Lines starting
# with '#' and '[', or that are empty end the comment.

[comments]

Comments added to this section are preserved.  Lines starting with
a '#' or '[', or that are blank, are ignored.  Start lines that must
look empty with a space.

# [user-midi-bus-definitions]
#
# 1. Define your instruments and their control-code names, if they
#    have them.
# 2. Define a MIDI bus, its name, and what instruments are on which
#    channel.
#
# In the following MIDI buss definitions, channels are counted from
# 0 to 15, not 1 to 16.  Instruments not set here are set to -1 and
# are GM (General MIDI). These replacement MIDI buss labels are shown
# in MIDI Clocks, MIDI Inputs, and in the Pattern Editor buss and
# channel drop-downs. To disable the entries, set the counts to 0.

[user-midi-bus-definitions]

0     # number of user-defined MIDI busses

# In the following MIDI instrument definitions, active controller
# numbers (i.e. supported by the instrument) are paired with
# the (optional) name of the controller supported.

[user-instrument-definitions]

0     # instrument list count

# [user-interface-settings]
#
# Specifies the configuration of some user-interface elements.  Many
# items were rendered obsolete and removed in version 5 of this file.
# The main grid-style is now Qt buttons. To use a flat style, use
# Qt themes/style-sheets.
#
# 'mainwnd-rows' and 'mainwnd-columns' (option '-o sets=RxC') specify
# rows/columns in the main grid. R ranges from 4 to 8, C from 8 to 12.
# Values other than 4x8 have not been tested, use at your own risk.
#
# 'mainwnd-spacing' specifies spacing in the main window. It ranges
# from 2 (default) to 16.
#
# 'default-zoom' specifies initial zoom for the piano rolls. Ranges
# from 1 to 512; defaults to 2. Larger PPQNs require larger zoom to
# look good in the editors.  Seq66 adapts the zoom to the PPQN
# if 'default-zoom' zoom is set to 0. The unit of zoon is ticks/pixel.
#
# 'global-seq-feature' specifies if the key, scale, and background
# pattern are to be applied globally to all patterns, or separately
# to each. These three values are stored in the MIDI file, either in
# the global SeqSpec section, or in each track.
#
#   false: Each pattern has its own key/scale/background.
#   true:  Apply these settings globally to all patterns.
#
# 'progress-bar-thick specifies a thicker progress bar.  Default is 1
# pixel; thick is 2 pixels. Set it to true to enable the feature
#
# 'inverse-colors' (option -K/--inverse) specifies use of an inverse
# color palette. Palettes are for Seq66 drawing areas, not for the
# Qt theme. Normal/inverse palettes are changed via a 'palette' file.
#
# 'window-redraw-rate' specifies the base window redraw rate for all
# windows. The default is 40 ms (25 ms for Windows).
#
# Window-scale (option '-o scale=m.n[xp.q]') specifies scaling the
# main window at startup. Defaults to 1.0 x 1.0. If between 0.8 and
# 3.0, it changes the size of the main window proportionately. If the
# y-value is 0, the first value applies to both dimensions.

[user-interface-settings]

mainwnd-rows = 4
mainwnd-columns = 8
mainwnd-spacing = 2
default-zoom = 2
global-seq-feature = true
progress-bar-thick = true
inverse-colors = false
window-redraw-rate = 20
window-scale = 1
window-scale-y = 1

# [user-midi-ppqn]
#
# Seq66 separates the file PPQN from the Seq66 PPQN the user wants
# to use.
#
# 'default-ppqn' specifies the PPQN to use by default. The classic
# default is 192, but can range from 32 to 19200.
#
# 'use-file-ppqn' indicates to use the file PPQN. This is the best
# setting, to avoid changing the file's PPQN.

[user-midi-ppqn]

default-ppqn = 192
use-file-ppqn = false

# [user-midi-settings]
#
# These settings specify MIDI-specific values better off as variables,
# rather than constants. Values of -1 mean the value won't be used.
#
# 'beats-per-bar':      default = 4      range = 1 to 32.
# 'beats-per-minute':   default = 120.0  range = 2.0 to 600.0.
# 'beat-width':         default = 4      range = 1 to 32.
# 'buss-override':      default = -1     range = 0 to 48.
# 'velocity-override':  default = -1     range = 0 to 127.
# 'bpm-precision':      default = 0      range = 0 to 2.
# 'bpm-step-increment': default = 1.0    range = 0.01 to 25.0.
# 'bpm-page-increment': default = 1.0    range = 0.01 to 25.0.
# 'bpm-minimum':        default = 0.0    range = 127.0
# 'bpm-maximum':        default = 0.0    range = 127.0
#
# A buss-override from 0 to 48 overrides the busses for all patterns,
# for testing or convenience.  Do not save the MIDI file afterwards
# unless you want to overwrite all the buss values!
#
# The velocity override when adding notes in the pattern editor is set
# via the 'Vol' button.  -1 ('Free'), preserves incoming velocity.
#
# Precision of the BPM spinner and MIDI control of BPM is 0, 1, or 2.
# The step increment affects the beats/minute spinner and MIDI control
# of BPM.  For 1 decimal point, 0.1 is good.  For 2 decimal points,
# 0.01 is good, but one might want something faster, like 0.05.
# Set the page increment to a larger value than the step increment;
# it is used when the Page-Up/Page-Down keys are pressed when the BPM
# spinner has keyboard focus.
# The BPM-minimum and maximum set the range BPM in tempo graphing.
# By default, the tempo graph ranges from 0.0 to 127.0. This range
# decreased to give a magnified view of tempo.

[user-midi-settings]

beats-per-bar = 4
beats-per-minute = 120
beat-width = 4
buss-override = -1
velocity-override = -1
bpm-precision = 0
bpm-step-increment = 1
bpm-page-increment = 10
bpm-minimum = 0
bpm-maximum = 127

# [user-options]
#
# These settings specify values set via the -o or --option switch,
# which helps expand the number of options supported.
# The 'daemonize' option is used in seq66cli to indicate that the
# application should be gracefully run as a service.
# The 'log' value specifies a log-file that replaces output to
# standard output/error.  For no log-file, use "".  This option
# also works from the command line: '-o log=filename.log'. The name
# here is used for the no-name '-o log' option.

[user-options]

daemonize = false
log = ""

# [user-ui-tweaks]
#
# The key-height value specifies the initial height (before vertical
# zoom) of the keys in the pattern editor.  Defaults to 10 pixels,
# ranges from 6 to 32.
#
# The note-resume option, if active, causes any notes in progress
# to be resumed when the pattern is toggled back on.
#
# If specified, a style-sheet (e.g. 'qseq66.qss') is applied at
# startup.  Normally just a base-name, it can contain a file-path
# to provide a style usable in many other applications.
#
# A fingerprint is a condensation of the note events in a long track,
# to reduce the amount of drawing in the grid buttons. Ranges from 32
# (the default) to 128. Set to 0 to not use a fingerprint.
#
# The progress-box width and height settings change the size of the
# progress box in the live-loop grid buttons.  Width ranges from 0.50
# to 1.0; the height from 0.10 to 0.50.  If either is 0, then the box
# isn't drawn.  If either is 'default', defaults are used.

[user-ui-tweaks]

key-height = 10
note-resume = false
style-sheet = ""
fingerprint-size = 32
progress-box-width = 0
progress-box-height = 0

# [user-session]
#
# This section specifies the session manager to use, if any. The
# 'session' variable can be set to 'none' (the default), 'nsm'
# (Non or New Session Manager), or 'lash' (LASH, not yet supported).
# 'url' can be set to the value of the NSM_URL environment variable
# set by nsmd when run outside of the Non Session Manager user-
# interface. Set the URL only if running nsmd standalone with a
# matching --osc-port number.

[user-session]

session = none
url = ""

# [pattern-editor]
#
# This section contains the setup values for recording when a new
# pattern is opened. For flexibility, a new pattern means only that
# the loop has the default name, 'Untitled'. These values save time
# during a live recording session. Note that the valid values for
# record-style are 'merge', 'overwrite', and 'expand'.

[pattern-editor]

armed = false
thru = false
record = false
qrecord = false
record-style = merge

# End of C:\Users\chris\AppData\Local\seq66\qpseq66.usr
#
# vim: sw=4 ts=4 wm=4 et ft=dosini
