Link Search Menu Expand Document

My Goku file as of Dec 9th.

{:default
 :alone 500
 :delay 200
 :held 500
 :sim 200
 :simlayer-threshold 222

 :modifiers {;
             :super-hyper [:command :shift :control :option :fn]
             :hyper [:command :shift :control :option]
             :cos [:command :shift :option]
             :cst [:command :shift :control]
             :co [:command :option]
             :cs [:command :shift]
             :ct [:command :control]
             :to [:control :option]
             :ts [:control :shift]
             :os [:option :shift]
             ;
 }

 :layers {
   :launch-mode {:key :f24 :alone {:key :spacebar :modi :left_option}}
 }
 :simlayers {
    :snippet-mode {:key :quote}
    :tab-mode {:key :tab}
    :hyphen-mode {:key :hyphen :alone {:key :hyphen}}
    :alt-mode {:key :a}
    :alt-shift-mode {:key :s}
    :d-mode {:key :d}
    :movement-mode {:key :f}
    :cursor-mode {:key :g}
    :delete-mode {:key :j}

    :equals-mode {:key :equal_sign}
    :slash-mode {:key :slash}

    :semicolon-mode {:key :semicolon}
    :backslash-mode {:key :backslash}

    :launch-mode {:key :spacebar}
    :emoji-mode {:key :z}
    :open-mode {:key :o};
 }

 :froms {
   :-a {:key :a}
   :-b {:key :b}
   :-c {:key :c}
   :-d {:key :d}
   :-e {:key :e}
   :-f {:key :f}
   :-g {:key :g}
   :-h {:key :h}
   :-i {:key :i}
   :-j {:key :j}
   :-k {:key :k}
   :-l {:key :l}
   :-m {:key :m}
   :-n {:key :n}
   :-o {:key :o}
   :-p {:key :p}
   :-q {:key :q}
   :-r {:key :r}
   :-s {:key :s}
   :-t {:key :t}
   :-u {:key :u}
   :-v {:key :v}
   :-w {:key :w}
   :-x {:key :x}
   :-y {:key :y}
   :-z {:key :z}
   :open_paren {:key :9 :modi :shift}
   :close_paren {:key :0 :modi :shift}
 }

 :tos {
       :return {:key :return_or_enter}
       :tilde {:key :grave_accent_and_tilde}

       ;shortcuts
       :autocomplete {:key :spacebar :modi :control} ;!Tspacebar
       :command_palette {:key :t :modi :command}

       :cursor_find_match {:key :d :modi :command}
       :cursor_above {:key :up_arrow :modi :co}
       :cursor_below {:key :down_arrow :modi :co}
       :acejump {:key :j :modi :cos}
       :acejump_line {:key :l :modi :cos}
       :acejump_selection {:key :s :modi :cos}
       :acejump_multi {:key :m :modi :cos}


       :delete_line {:key :k :modi :cs} ;!CSk

       :find_in_project {:key :f :modi :cs} ;!CSf

       :focus_git {:key :g :modi :ts} ;!TSg
       :focus_editor {:key :e :modi :control}
       :focus_explorer {:key :e :modi :cos} ;:!CSOe
       :focus_terminal {:key :j :modi :command}
       :new_terminal {:key :grave_accent_and_tilde :modi :ts}; !TS`

       :open_next_editor {:key :right_arrow :modi :co}
       :open_prev_editor {:key :left_arrow :modi :co}
       :go_back {:key :hyphen :modi :control}
       :go_forward {:key :hyphen :modi :ts}

       :replace {:key :f :mode :co}

       :split_window {:key :backslash :modi :command}; !Cbackslash

       :toggle_sidebar {:key :b :modi :command} ;!Cb

       :expand_selection {:key :right_arrow :modi :cst}
       :shrink_selection {:key :left_arrow :modi :cst}

       :go_to_file {:key :p :modi :command}
       :insert_line_below {:key :return_or_enter :modi :command} ;!Creturn_or_enter
       :insert_line_above {:key :return_or_enter :modi :cs} ;!Creturn_or_enter
       :wrap_emmet {:key :p :modi :hyper}

       ;named symbols
       :open_brace {:key :open_bracket :modi :shift}
       :close_brace {:key :close_bracket :modi :shift}

       :open_paren {:key :9 :modi :shift}
       :close_paren {:key :0 :modi :shift}

       :less_than {:key :comma :modi :shift}
       :greater_than {:key :period :modi :shift}

       :emoji_picker {:key :spacebar :modi :ct} ;!CTspacebar
       :open_1password {:key :p :modi :hyper} ;!OCbackslash
       :take_screenshot {:key :6 :modi :cs} ;!CS6
       :take_screenvideo {:key :5 :modi :cs}
 }

  :applications {
                :code ["com.microsoft.VSCode"]
                :screenflow ["net.telestream.screenflow9"]
                :slack ["com.tinyspeck.slackmacgap"]
  }

 :templates {
        :alfred "osascript -e 'tell application \"Alfred 4\" to run trigger \"%s\" in workflow \"%s\" with argument \"%s\"'"
        :code-project "osascript -e 'tell application \"Visual Studio Code\" to activate' &&
                        open -a 'Visual Studio Code' %s -g %s
                        "
        :launch "osascript -e 'tell application \"%s\" to activate'"
        :open "open \"%s\""
        :paste "osascript -e '
                set the clipboard to \"%s\"
                tell application \"System Events\"
                        keystroke \"v\" using command down
                end tell
                '"
        :open-brave "osascript -e '
        set address to \"%s\"

        tell application \"Brave\"
                activate
                if not (exists window 1) then reopen
                repeat with w in windows
                        set i to 1
                        repeat with t in tabs of w
                        if URL of t contains address then
                                set active tab index of w to i
                                set index of w to 1
                                return
                        end if
                        set i to i + 1
                        end repeat
                end repeat
                open location \"http://\" & address
        end tell
                '"
        :type "osascript -e 'tell application \"System Events\" to keystroke \"%s\"'"
}

 :main [{:des "taps"
        :rules [[:##left_shift :left_shift nil {:alone :delete_or_backspace}]
                [:right_shift :right_shift nil {:alone :delete_forward}]
                [:caps_lock :left_control nil {:alone :escape}]
        ]}

        {:des "delete"
         :rules [:delete-mode
                 [:hyphen :delete_line :code]
                 [:hyphen :!Cdelete_or_backspace]
                 [:a :!Odelete_or_backspace]
                 [:s :delete_or_backspace]
                 [:d :delete_forward]
                 [:f :!Odelete_forward]
                 [:g :!Cdelete_forward]
        ]}

        {:des "emoji"
         :rules [:emoji-mode
                 [:-a [:paste "✨"]] ;spArkle
                 [:-b [:paste "😊"]] ;blush
                 [:-c [:paste "👏"]] ;clap
                 [:-d [:paste "🧐"]] ;dignified
                 [:-f [:paste "🔥"]] ;fire
                 [:-g [:paste "😬"]] ;grimace
                 [:-h [:paste "😍"]] ;heart-eyes
                 [:-i [:paste "👀"]] ;I
                 [:-j [:paste "😂"]] ;joking
                 [:-k [:paste "🤞🏻"]] ; krossed
                 [:-l [:paste "❤️"]] ;love
                 [:-m [:paste "🤯"]] ;mind blown
                 [:-o [:paste "💩"]] ;pOop
                 [:-p [:paste "🎉"]] ;party
                 [:-q [:paste "🤫"]] ;quiet
                 [:-r [:paste "🏎"]] ;racecar
                 [:-s [:paste "😢"]] ;sad
                 [:-t [:paste "🤔"]] ;thinking
                 [:-u [:paste "🤷‍♂️"]] ;shrUg
                 [:-v [:paste "👋🏻"]] ;waVe
                 [:-w [:paste "😉"]] ;wink:
                 [:-x [:paste "😵"]] ;x-eyes
                 [:-y [:paste "😅"]] ;sweatY
                 [:left_command [:paste "👍"]]
                 [:left_option [:paste "👎"]]
        ]}

        {:des "launch"
         :rules [:launch-mode
            [:-b [:launch "Brave"]]
            [:-d [:launch "Discord"]]
            [:-e [:launch "Spark"]]
            [:-i [:launch "iTerm"]]
            [:-k "goku && launchctl kickstart -k org.pqrs.karabiner.karabiner_console_user_server"]
            [:-l [:launch "Local"]]
            [:-m [:launch "Insomnia"]] ;insoMnia
            [:-n [:launch "Notion"]]
            [:-o [:code-project "/Users/kevin/Dropbox/dendron/dendron.code-workspace"]]
            [:-s [:launch "Slack"]]
            [:-v [:launch "VLC"]]
            [:-z [:launch "Visual Studio Code"]];viZ
         ]}

        {:des "open files"
         :rules [:open-mode
                 [:-b [:open "~/.Trash"]]
                 [:-c [:code-project "~/.config"]]
                 [:-k [:code-project "~/.config/karabiner.edn"]]
                 ;
        ]}

        {:des "homerow movement"
         :rules [:movement-mode
                 [:##y :!Cleft_arrow]
                 [:##o :!Cright_arrow]

                 [:##h :left_arrow]
                 [:##j :down_arrow]
                 [:##k :up_arrow]
                 [:##l :right_arrow]

                 [:semicolon :autocomplete]
                 [:return_or_enter :insert_line_below]
                 [:left_shift :expand_selection]
                 ]}

        {:des "homerow shift"
         :rules [:d-mode
                 [:##y :!Shome]
                 [:##o :!Send]

                 [:##h :!Sleft_arrow]
                 [:##j :!Sdown_arrow]
                 [:##k :!Sup_arrow]
                 [:##l :!Sright_arrow]

                 [:##u {:key :left-arrow :modi :os}]
                 [:##i {:key :right-arrow :modi :os}]


                 [:left_shift :shrink_selection]
                 [:return_or_enter :insert_line_above]

                 [:semicolon :expand_selection]
                 [:quote :shrink_selection]

                 ;
                 ]}
        {:des "snippets"
         :rules [:snippet-mode
                 [:-c [:type "console.log()"]]  ;console.log()
                ; [:-n [:c :l :a :s :s :!Sn :a :m :e :equal_sign :!Squote :!Squote :left_arrow]] ;className=""
                 [:-e [:type "kevin@kevincunningham.co.uk"]]
         ]}

        {:des "tab-mode"
         :rules [:tab-mode
                 ;open urls
                 [:-b [:open-brave "bbc.co.uk/news"]]
                 [:-e [:open-brave "egghead.io"]]
                 [:-f [:open-brave "feeder.co"]]
                 [:-g [:open-brave "localhost:8000"]]
                 [:-j [:open-brave "js.new"]]
                 [:-k [:open-brave "github.com/search?q=extension%3A.edn+filename%3Akarabiner.edn&type=Code&ref=advsearch&l=&l="]]
                 [:-l [:open-brave "localhost:3000"]]
                 [:-m [:open-brave "myanonamouse.net"]]
                 [:-n [:open-brave "localhost:3000"]]
                 [:-r [:open-brave "app.restream.io/titles"]]
                 [:-s [:open-brave "sega.local/wp-admin"]]
                 [:-t [:open-brave "twitter.com"]]
                 [:-u [:open-brave "egghead.io/lessons/new"]]
                 [:-x [:open-brave "next.egghead.io"]]
                 [:-y [:open-brave "youtube.com"]]
        ]}

        {:des "semi-colon-mode"
        :rules [:semicolon-mode
                [:-n {:key :f11 :modi :co}]
                [:-r {:key :f12 :modi :co}]
                [:-s [:take_screenshot]]
                [:-v [:take_screenvideo]]
        ]}

        {:des "screenflow"
         :rules [:screenflow
                 ; mouse
   [{:pkey :button2}
                  [{:pkey :button1 :modi :left_shift} :!Cdelete_or_backspace]]

        ]}


     ]}




;; rule [:period ["media-mode" 1] nil {:afterup ["media-mode" 0] :alone :period}]
;;       |_____| |ti| |_| tinhhhiihhiihh|_________________________________________|
;;        <from>    <to>      <conditions>         <other options>

    ;; !  | means mandatory
    ;; #  | means optional
    ;; C  | left_command
    ;; T  | left_control
    ;; O  | left_option
    ;; S  | left_shift
    ;; F  | fn
    ;; Q  | right_command
    ;; W  | right_control
    ;; E  | right_option
    ;; R  | right_shift
    ;;
    ;; !! | mandatory command + control + optional + shift (hyper)
    ;; ## | optional any
;;