config

package
v0.0.0-...-f954743 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 8, 2024 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const ComplexModRuleManipulatorTypeBasic = "basic"
View Source
const Default = `` /* 17723-byte string literal not displayed */

Config location is ${HOME}/.config/karabiner/karabiner.json

View Source
const (
	File = "karabiner.json"
)

Variables

View Source
var (
	CapsLockModifierKeys = []string{"left_shift", "left_control", "left_option", "left_command"}
)

Functions

func Setup

func Setup() error

Types

type ComplexMod

type ComplexMod struct {
	Parameters *ComplexModParameters `json:"parameters,omitempty"`
	Rules      []*ComplexModRule     `json:"rules,omitempty"`
}

type ComplexModParameters

type ComplexModParameters struct {
	BasicSimultaneousThresholdMilliseconds int `json:"basic.simultaneous_threshold_milliseconds,omitempty"`
	BasicToDelayedActionDelayMilliseconds  int `json:"basic.to_delayed_action_delay_milliseconds,omitempty"`
	BasicToIfAloneTimeoutMilliseconds      int `json:"basic.to_if_alone_timeout_milliseconds,omitempty"`
	BasicToIfHeldDownThresholdMilliseconds int `json:"basic.to_if_held_down_threshold_milliseconds,omitempty"`
	MouseMotionToScrollSpeed               int `json:"mouse_motion_to_scroll.speed,omitempty"`
}

type ComplexModRule

type ComplexModRule struct {
	Description  string                       `json:"description,omitempty"`
	Manipulators []*ComplexModRuleManipulator `json:"manipulators,omitempty"`
}

type ComplexModRuleManipulator

type ComplexModRuleManipulator struct {
	Description string                         `json:"description,omitempty"`
	From        *ComplexModRuleManipulatorFrom `json:"from,omitempty"`
	To          []*ComplexModRuleManipulatorTo `json:"to,omitempty"`
	Type        string                         `json:"type,omitempty"`
}

type ComplexModRuleManipulatorFrom

type ComplexModRuleManipulatorFrom struct {
	KeyCode   string                                  `json:"key_code,omitempty"`
	Modifiers *ComplexModRuleManipulatorFromModifiers `json:"modifiers,omitempty"`
}

type ComplexModRuleManipulatorFromModifiers

type ComplexModRuleManipulatorFromModifiers struct {
	Mandatory []string `json:"mandatory,omitempty"`
	Optional  []string `json:"optional,omitempty"`
}

type ComplexModRuleManipulatorTo

type ComplexModRuleManipulatorTo struct {
	ShellCommand string   `json:"shell_command,omitempty"`
	KeyCode      string   `json:"key_code,omitempty"`
	Modifiers    []string `json:"modifiers,omitempty"`
}

type Config

type Config struct {
	Global   *Global    `json:"global"`
	Profiles []*Profile `json:"profiles"`
}

func GetDefault

func GetDefault() (*Config, error)

func (*Config) GetDefaultProfile

func (c *Config) GetDefaultProfile() (*Profile, error)

func (*Config) Save

func (c *Config) Save() error

type FnFunctionKeyFrom

type FnFunctionKeyFrom struct {
	KeyCode string `json:"key_code,omitempty"`
}

type FnFunctionKeyTo

type FnFunctionKeyTo struct {
	KeyCode                    string `json:"key_code,omitempty"`
	ConsumerKeyCode            string `json:"consumer_key_code,omitempty"`
	AppleVendorKeyboardKeyCode string `json:"apple_vendor_keyboard_key_code,omitempty"`
}

type FnFunctionKeys

type FnFunctionKeys struct {
	From *FnFunctionKeyFrom `json:"from,omitempty"`
	To   []*FnFunctionKeyTo `json:"to,omitempty"`
}

type Global

type Global struct {
	CheckForUpdatesOnStartup bool `json:"check_for_updates_on_startup"`
	ShowInMenuBar            bool `json:"show_in_menu_bar"`
	ShowProfileNameInMenuBar bool `json:"show_profile_name_in_menu_bar"`
}

type Profile

type Profile struct {
	Name               string              `json:"name,omitempty"`
	Selected           bool                `json:"selected,omitempty"`
	Parameters         *ProfileParameters  `json:"parameters,omitempty"`
	ComplexMod         *ComplexMod         `json:"complex_modifications,omitempty"`
	SimpleMod          []interface{}       `json:"simple_modifications"`
	FnFunctionKeys     []*FnFunctionKeys   `json:"fn_function_keys,omitempty"`
	VirtualHidKeyboard *VirtualHidKeyboard `json:"virtual_hid_keyboard,omitempty"`
}

type ProfileParameters

type ProfileParameters struct {
	DelayMillisecondsBeforeOpenDevice int `json:"delay_milliseconds_before_open_device"`
}

type VirtualHidKeyboard

type VirtualHidKeyboard struct {
	CountryCode                     int  `json:"country_code,omitempty"`
	IndicateStickyModifierKeysState bool `json:"indicate_sticky_modifier_keys_state,omitempty"`
	MouseKeyXyScale                 int  `json:"mouse_key_xy_scale,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL