diff --git a/Configs/fish/.config/fish/completions/mise.fish b/Configs/fish/.config/fish/completions/mise.fish new file mode 100644 index 0000000..9b7072e --- /dev/null +++ b/Configs/fish/.config/fish/completions/mise.fish @@ -0,0 +1,17 @@ +# if "usage" is not installed show an error +if ! command -v usage &> /dev/null + echo >&2 + echo "Error: usage CLI not found. This is required for completions to work in mise." >&2 + echo "See https://usage.jdx.dev for more information." >&2 + return 1 +end + +if ! set -q _usage_spec_mise_2025_7_29 + set -g _usage_spec_mise_2025_7_29 (mise usage | string collect) +end +set -l tokens +if commandline -x >/dev/null 2>&1 + complete -xc mise -a '(usage complete-word --shell fish -s "$_usage_spec_mise_2025_7_29" -- (commandline -xpc) (commandline -t))' +else + complete -xc mise -a '(usage complete-word --shell fish -s "$_usage_spec_mise_2025_7_29" -- (commandline -opc) (commandline -t))' +end diff --git a/Configs/fish/.config/fish/config.fish b/Configs/fish/.config/fish/config.fish index 2627b13..b6bd022 100644 --- a/Configs/fish/.config/fish/config.fish +++ b/Configs/fish/.config/fish/config.fish @@ -4,4 +4,7 @@ if status is-interactive # Commands to run in interactive sessions can go here zoxide init --cmd cd fish | source atuin init fish | source + + mise activate fish | source end + diff --git a/Configs/lazygit/.config/lazygit/config.yml b/Configs/lazygit/.config/lazygit/config.yml index 04dc579..d596e42 100644 --- a/Configs/lazygit/.config/lazygit/config.yml +++ b/Configs/lazygit/.config/lazygit/config.yml @@ -1,304 +1,303 @@ # Config relating to the Lazygit UI gui: - # The number of lines you scroll by when scrolling the main window - scrollHeight: 2 - # If true, allow scrolling past the bottom of the content in the main window - scrollPastBottom: true - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#scroll-off-margin - scrollOffMargin: 2 - # One of: 'margin' (default) | 'jump' - scrollOffBehavior: margin - # If true, capture mouse events. - # When mouse events are captured, it's a little harder to select text: e.g. requiring you to hold the option key when on macOS. - mouseEvents: true - # If true, do not show a warning when discarding changes in the staging view. - skipDiscardChangeWarning: false - # If true, do not show warning when applying/popping the stash - skipStashWarning: false - # If true, do not show a warning when attempting to commit without any staged files; instead stage all unstaged files. - skipNoStagedFilesWarning: false - # If true, do not show a warning when rewording a commit via an external editor - skipRewordInEditorWarning: false - # Fraction of the total screen width to use for the left side section. You may want to pick a small number (e.g. 0.2) if you're using a narrow screen, so that you can see more of the main section. - # Number from 0 to 1.0. - sidePanelWidth: 0.3333 - # If true, increase the height of the focused side window; creating an accordion effect. - expandFocusedSidePanel: false - # The weight of the expanded side panel, relative to the other panels. 2 means - # twice as tall as the other panels. Only relevant if `expandFocusedSidePanel` is true. - expandedSidePanelWeight: 2 - # Sometimes the main window is split in two (e.g. when the selected file has both staged and unstaged changes). This setting controls how the two sections are split. - # Options are: - # - 'horizontal': split the window horizontally - # - 'vertical': split the window vertically - # - 'flexible': (default) split the window horizontally if the window is wide enough, otherwise split vertically - mainPanelSplitMode: flexible - # How the window is split when in half screen mode (i.e. after hitting '+' once). - # Possible values: - # - 'left': split the window horizontally (side panel on the left, main view on the right) - # - 'top': split the window vertically (side panel on top, main view below) - enlargedSideViewLocation: left - # One of 'auto' (default) | 'en' | 'zh-CN' | 'zh-TW' | 'pl' | 'nl' | 'ja' | 'ko' | 'ru' - language: auto - # Format used when displaying time e.g. commit time. - # Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format - timeFormat: 02 Jan 06 - # Format used when displaying time if the time is less than 24 hours ago. - # Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format - shortTimeFormat: 3:04PM - # Config relating to colors and styles. - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#color-attributes - theme: - activeBorderColor: - - '#8bd5ca' - - bold - inactiveBorderColor: - - '#a5adcb' - optionsTextColor: - - '#8aadf4' - selectedLineBgColor: - - '#363a4f' - cherryPickedCommitBgColor: - - '#494d64' - cherryPickedCommitFgColor: - - '#8bd5ca' - unstagedChangesColor: - - '#ed8796' - defaultFgColor: - - '#cad3f5' - searchingActiveBorderColor: - - '#eed49f' - # Background color of selected line when view doesn't have focus. - inactiveViewSelectedLineBgColor: - - bold - # Foreground color of marked base commit (for rebase) - markedBaseCommitFgColor: - - blue - # Background color of marked base commit (for rebase) - markedBaseCommitBgColor: - - yellow - authorColors: - '*': '#b7bdf8' - # Config relating to the commit length indicator - commitLength: - # If true, show an indicator of commit message length - show: true - # If true, show the '5 of 20' footer at the bottom of list views - showListFooter: true - # If true, display the files in the file views as a tree. If false, display the files as a flat list. - # This can be toggled from within Lazygit with the '~' key, but that will not change the default. - showFileTree: true - # If true, show a random tip in the command log when Lazygit starts - showRandomTip: true - # If true, show the command log - showCommandLog: true - # If true, show the bottom line that contains keybinding info and useful buttons. If false, this line will be hidden except to display a loader for an in-progress action. - showBottomLine: true - # If true, show jump-to-window keybindings in window titles. - showPanelJumps: true - # Deprecated: use nerdFontsVersion instead - showIcons: false - # Nerd fonts version to use. - # One of: '2' | '3' | empty string (default) - # If empty, do not show icons. - nerdFontsVersion: "3" - # If true (default), file icons are shown in the file views. Only relevant if NerdFontsVersion is not empty. - showFileIcons: true - # Length of author name in (non-expanded) commits view. 2 means show initials only. - commitAuthorShortLength: 2 - # Length of author name in expanded commits view. 2 means show initials only. - commitAuthorLongLength: 17 - # Length of commit hash in commits view. 0 shows '*' if NF icons aren't on. - commitHashLength: 8 - # If true, show commit hashes alongside branch names in the branches view. - showBranchCommitHash: false - # Whether to show the divergence from the base branch in the branches view. - # One of: 'none' | 'onlyArrow' | 'arrowAndNumber' - showDivergenceFromBaseBranch: none - # Height of the command log view - commandLogSize: 8 - # Whether to split the main window when viewing file changes. - # One of: 'auto' | 'always' - # If 'auto', only split the main window when a file has both staged and unstaged changes - splitDiff: auto - # Default size for focused window. Window size can be changed from within Lazygit with '+' and '_' (but this won't change the default). - # One of: 'normal' (default) | 'half' | 'full' - screenMode: normal - # Window border style. - # One of 'rounded' (default) | 'single' | 'double' | 'hidden' - border: rounded - # If true, show a seriously epic explosion animation when nuking the working tree. - animateExplosion: true - # Whether to stack UI components on top of each other. - # One of 'auto' (default) | 'always' | 'never' - portraitMode: auto - # How things are filtered when typing '/'. - # One of 'substring' (default) | 'fuzzy' - filterMode: fuzzy - # Config relating to the spinner. - spinner: - # The frames of the spinner animation. - frames: - - '|' - - / - - '-' - - \ - # The "speed" of the spinner in milliseconds. - rate: 50 - # Status panel view. - # One of 'dashboard' (default) | 'allBranchesLog' - statusPanelView: dashboard - # If true, jump to the Files panel after popping a stash - switchToFilesAfterStashPop: true - # If true, jump to the Files panel after applying a stash - switchToFilesAfterStashApply: true + # The number of lines you scroll by when scrolling the main window + scrollHeight: 2 + # If true, allow scrolling past the bottom of the content in the main window + scrollPastBottom: true + # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#scroll-off-margin + scrollOffMargin: 2 + # One of: 'margin' (default) | 'jump' + scrollOffBehavior: margin + # If true, capture mouse events. + # When mouse events are captured, it's a little harder to select text: e.g. requiring you to hold the option key when on macOS. + mouseEvents: true + # If true, do not show a warning when discarding changes in the staging view. + skipDiscardChangeWarning: false + # If true, do not show warning when applying/popping the stash + skipStashWarning: false + # If true, do not show a warning when attempting to commit without any staged files; instead stage all unstaged files. + skipNoStagedFilesWarning: false + # If true, do not show a warning when rewording a commit via an external editor + skipRewordInEditorWarning: false + # Fraction of the total screen width to use for the left side section. You may want to pick a small number (e.g. 0.2) if you're using a narrow screen, so that you can see more of the main section. + # Number from 0 to 1.0. + sidePanelWidth: 0.3333 + # If true, increase the height of the focused side window; creating an accordion effect. + expandFocusedSidePanel: false + # The weight of the expanded side panel, relative to the other panels. 2 means + # twice as tall as the other panels. Only relevant if `expandFocusedSidePanel` is true. + expandedSidePanelWeight: 2 + # Sometimes the main window is split in two (e.g. when the selected file has both staged and unstaged changes). This setting controls how the two sections are split. + # Options are: + # - 'horizontal': split the window horizontally + # - 'vertical': split the window vertically + # - 'flexible': (default) split the window horizontally if the window is wide enough, otherwise split vertically + mainPanelSplitMode: flexible + # How the window is split when in half screen mode (i.e. after hitting '+' once). + # Possible values: + # - 'left': split the window horizontally (side panel on the left, main view on the right) + # - 'top': split the window vertically (side panel on top, main view below) + enlargedSideViewLocation: left + # One of 'auto' (default) | 'en' | 'zh-CN' | 'zh-TW' | 'pl' | 'nl' | 'ja' | 'ko' | 'ru' + language: auto + # Format used when displaying time e.g. commit time. + # Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format + timeFormat: 02 Jan 06 + # Format used when displaying time if the time is less than 24 hours ago. + # Uses Go's time format syntax: https://pkg.go.dev/time#Time.Format + shortTimeFormat: 3:04PM + # Config relating to colors and styles. + # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#color-attributes + theme: + activeBorderColor: + - '#8bd5ca' + - bold + inactiveBorderColor: + - '#a5adcb' + optionsTextColor: + - '#8aadf4' + selectedLineBgColor: + - '#363a4f' + cherryPickedCommitBgColor: + - '#494d64' + cherryPickedCommitFgColor: + - '#8bd5ca' + unstagedChangesColor: + - '#ed8796' + defaultFgColor: + - '#cad3f5' + searchingActiveBorderColor: + - '#eed49f' + # Background color of selected line when view doesn't have focus. + inactiveViewSelectedLineBgColor: + - bold + # Foreground color of marked base commit (for rebase) + markedBaseCommitFgColor: + - blue + # Background color of marked base commit (for rebase) + markedBaseCommitBgColor: + - yellow + authorColors: + '*': '#b7bdf8' + # Config relating to the commit length indicator + commitLength: + # If true, show an indicator of commit message length + show: true + # If true, show the '5 of 20' footer at the bottom of list views + showListFooter: true + # If true, display the files in the file views as a tree. If false, display the files as a flat list. + # This can be toggled from within Lazygit with the '~' key, but that will not change the default. + showFileTree: true + # If true, show a random tip in the command log when Lazygit starts + showRandomTip: true + # If true, show the command log + showCommandLog: true + # If true, show the bottom line that contains keybinding info and useful buttons. If false, this line will be hidden except to display a loader for an in-progress action. + showBottomLine: true + # If true, show jump-to-window keybindings in window titles. + showPanelJumps: true + # Deprecated: use nerdFontsVersion instead + showIcons: false + # Nerd fonts version to use. + # One of: '2' | '3' | empty string (default) + # If empty, do not show icons. + nerdFontsVersion: "3" + # If true (default), file icons are shown in the file views. Only relevant if NerdFontsVersion is not empty. + showFileIcons: true + # Length of author name in (non-expanded) commits view. 2 means show initials only. + commitAuthorShortLength: 2 + # Length of author name in expanded commits view. 2 means show initials only. + commitAuthorLongLength: 17 + # Length of commit hash in commits view. 0 shows '*' if NF icons aren't on. + commitHashLength: 8 + # If true, show commit hashes alongside branch names in the branches view. + showBranchCommitHash: false + # Whether to show the divergence from the base branch in the branches view. + # One of: 'none' | 'onlyArrow' | 'arrowAndNumber' + showDivergenceFromBaseBranch: none + # Height of the command log view + commandLogSize: 8 + # Whether to split the main window when viewing file changes. + # One of: 'auto' | 'always' + # If 'auto', only split the main window when a file has both staged and unstaged changes + splitDiff: auto + # Default size for focused window. Window size can be changed from within Lazygit with '+' and '_' (but this won't change the default). + # One of: 'normal' (default) | 'half' | 'full' + screenMode: normal + # Window border style. + # One of 'rounded' (default) | 'single' | 'double' | 'hidden' + border: rounded + # If true, show a seriously epic explosion animation when nuking the working tree. + animateExplosion: true + # Whether to stack UI components on top of each other. + # One of 'auto' (default) | 'always' | 'never' + portraitMode: auto + # How things are filtered when typing '/'. + # One of 'substring' (default) | 'fuzzy' + filterMode: fuzzy + # Config relating to the spinner. + spinner: + # The frames of the spinner animation. + frames: + - '|' + - / + - '-' + - \ + # The "speed" of the spinner in milliseconds. + rate: 50 + # Status panel view. + # One of 'dashboard' (default) | 'allBranchesLog' + statusPanelView: dashboard + # If true, jump to the Files panel after popping a stash + switchToFilesAfterStashPop: true + # If true, jump to the Files panel after applying a stash + switchToFilesAfterStashApply: true # Config relating to git git: - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Custom_Pagers.md - paging: - # Value of the --color arg in the git diff command. Some pagers want this to be set to 'always' and some want it set to 'never' - colorArg: always - # e.g. - # diff-so-fancy - # delta --dark --paging=never - # ydiff -p cat -s --wrap --width={{columnWidth}} - pager: "" - # If true, Lazygit will use whatever pager is specified in `$GIT_PAGER`, `$PAGER`, or your *git config*. If the pager ends with something like ` | less` we will strip that part out, because less doesn't play nice with our rendering approach. If the custom pager uses less under the hood, that will also break rendering (hence the `--paging=never` flag for the `delta` pager). - useConfig: true - # e.g. 'difft --color=always' - externalDiffCommand: "" - # Config relating to committing - commit: - # If true, pass '--signoff' flag when committing - signOff: false - # Automatic WYSIWYG wrapping of the commit message as you type - autoWrapCommitMessage: true - # If autoWrapCommitMessage is true, the width to wrap to - autoWrapWidth: 72 - # Config relating to merging - merging: - # If true, run merges in a subprocess so that if a commit message is required, Lazygit will not hang - # Only applicable to unix users. - manualCommit: false - # Extra args passed to `git merge`, e.g. --no-ff - args: "" - # The commit message to use for a squash merge commit. Can contain "{{selectedRef}}" and "{{currentBranch}}" placeholders. - squashMergeMessage: Squash merge {{selectedRef}} into {{currentBranch}} - # list of branches that are considered 'main' branches, used when displaying commits - mainBranches: - - master - - main - # Prefix to use when skipping hooks. E.g. if set to 'WIP', then pre-commit hooks will be skipped when the commit message starts with 'WIP' - skipHookPrefix: WIP - # If true, periodically fetch from remote - autoFetch: true - # If true, periodically refresh files and submodules - autoRefresh: true - # If true, pass the --all arg to git fetch - fetchAll: true - # If true, lazygit will automatically stage files that used to have merge - # conflicts but no longer do; and it will also ask you if you want to - # continue a merge or rebase if you've resolved all conflicts. If false, it - # won't do either of these things. - autoStageResolvedConflicts: true - # Command used when displaying the current branch git log in the main window - branchLogCmd: git log --graph --color=always --abbrev-commit --decorate --date=relative --pretty=medium {{branchName}} -- - # Command used to display git log of all branches in the main window. - # Deprecated: User `allBranchesLogCmds` instead. - allBranchesLogCmd: git log --graph --all --color=always --abbrev-commit --decorate --date=relative --pretty=medium - # If true, do not spawn a separate process when using GPG - overrideGpg: false - # If true, do not allow force pushes - disableForcePushing: false - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-commit-message-prefix - # commitPrefix: - # pattern to match on. E.g. for 'feature/AB-123' to match on the AB-123 use "^\\w+\\/(\\w+-\\w+).*" - # pattern: "" + # See https://github.com/jesseduffield/lazygit/blob/master/docs/Custom_Pagers.md + paging: + # Value of the --color arg in the git diff command. Some pagers want this to be set to 'always' and some want it set to 'never' + colorArg: always + # e.g. + # diff-so-fancy + # delta --dark --paging=never + # ydiff -p cat -s --wrap --width={{columnWidth}} + pager: "" + # If true, Lazygit will use whatever pager is specified in `$GIT_PAGER`, `$PAGER`, or your *git config*. If the pager ends with something like ` | less` we will strip that part out, because less doesn't play nice with our rendering approach. If the custom pager uses less under the hood, that will also break rendering (hence the `--paging=never` flag for the `delta` pager). + useConfig: true + # e.g. 'difft --color=always' + externalDiffCommand: "" + # Config relating to committing + commit: + # If true, pass '--signoff' flag when committing + signOff: false + # Automatic WYSIWYG wrapping of the commit message as you type + autoWrapCommitMessage: true + # If autoWrapCommitMessage is true, the width to wrap to + autoWrapWidth: 72 + # Config relating to merging + merging: + # If true, run merges in a subprocess so that if a commit message is required, Lazygit will not hang + # Only applicable to unix users. + manualCommit: false + # Extra args passed to `git merge`, e.g. --no-ff + args: "" + # The commit message to use for a squash merge commit. Can contain "{{selectedRef}}" and "{{currentBranch}}" placeholders. + squashMergeMessage: Squash merge {{selectedRef}} into {{currentBranch}} + # list of branches that are considered 'main' branches, used when displaying commits + mainBranches: + - master + - main + # Prefix to use when skipping hooks. E.g. if set to 'WIP', then pre-commit hooks will be skipped when the commit message starts with 'WIP' + skipHookPrefix: WIP + # If true, periodically fetch from remote + autoFetch: true + # If true, periodically refresh files and submodules + autoRefresh: true + # If true, pass the --all arg to git fetch + fetchAll: true + # If true, lazygit will automatically stage files that used to have merge + # conflicts but no longer do; and it will also ask you if you want to + # continue a merge or rebase if you've resolved all conflicts. If false, it + # won't do either of these things. + autoStageResolvedConflicts: true + # Command used when displaying the current branch git log in the main window + branchLogCmd: git log --graph --color=always --abbrev-commit --decorate --date=relative --pretty=medium {{branchName}} -- + # If true, do not spawn a separate process when using GPG + overrideGpg: false + # If true, do not allow force pushes + disableForcePushing: false + # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-commit-message-prefix + # commitPrefix: + # pattern to match on. E.g. for 'feature/AB-123' to match on the AB-123 use "^\\w+\\/(\\w+-\\w+).*" + # pattern: "" - # Replace directive. E.g. for 'feature/AB-123' to start the commit message with 'AB-123 ' use "[$1] " - # replace: "" + # Replace directive. E.g. for 'feature/AB-123' to start the commit message with 'AB-123 ' use "[$1] " + # replace: "" - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-branch-name-prefix - branchPrefix: "" - # If true, parse emoji strings in commit messages e.g. render :rocket: as 🚀 - # (This should really be under 'gui', not 'git') - parseEmoji: true - # Config for showing the log in the commits view - log: - # One of: 'date-order' | 'author-date-order' | 'topo-order' | 'default' - # 'topo-order' makes it easier to read the git log graph, but commits may not - # appear chronologically. See https://git-scm.com/docs/ - # - # Deprecated: Configure this with `Log menu -> Commit sort order` ( in the commits window by default). - order: topo-order - # This determines whether the git graph is rendered in the commits panel - # One of 'always' | 'never' | 'when-maximised' - # - # Deprecated: Configure this with `Log menu -> Show git graph` ( in the commits window by default). - showGraph: always - # displays the whole git graph by default in the commits view (equivalent to passing the `--all` argument to `git log`) - showWholeGraph: false - # When copying commit hashes to the clipboard, truncate them to this - # length. Set to 40 to disable truncation. - truncateCopiedCommitHashesTo: 12 + # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#predefined-branch-name-prefix + branchPrefix: "" + # If true, parse emoji strings in commit messages e.g. render :rocket: as 🚀 + # (This should really be under 'gui', not 'git') + parseEmoji: true + # Config for showing the log in the commits view + log: + # One of: 'date-order' | 'author-date-order' | 'topo-order' | 'default' + # 'topo-order' makes it easier to read the git log graph, but commits may not + # appear chronologically. See https://git-scm.com/docs/ + # + # Deprecated: Configure this with `Log menu -> Commit sort order` ( in the commits window by default). + order: topo-order + # This determines whether the git graph is rendered in the commits panel + # One of 'always' | 'never' | 'when-maximised' + # + # Deprecated: Configure this with `Log menu -> Show git graph` ( in the commits window by default). + showGraph: always + # displays the whole git graph by default in the commits view (equivalent to passing the `--all` argument to `git log`) + showWholeGraph: false + # When copying commit hashes to the clipboard, truncate them to this + # length. Set to 40 to disable truncation. + truncateCopiedCommitHashesTo: 12 + allBranchesLogCmds: + - git log --graph --all --color=always --abbrev-commit --decorate --date=relative --pretty=medium # Periodic update checks update: - # One of: 'prompt' (default) | 'background' | 'never' - method: prompt - # Period in days between update checks - days: 14 + # One of: 'prompt' (default) | 'background' | 'never' + method: prompt + # Period in days between update checks + days: 14 # Background refreshes refresher: - # File/submodule refresh interval in seconds. - # Auto-refresh can be disabled via option 'git.autoRefresh'. - refreshInterval: 10 - # Re-fetch interval in seconds. - # Auto-fetch can be disabled via option 'git.autoFetch'. - fetchInterval: 60 + # File/submodule refresh interval in seconds. + # Auto-refresh can be disabled via option 'git.autoRefresh'. + refreshInterval: 10 + # Re-fetch interval in seconds. + # Auto-fetch can be disabled via option 'git.autoFetch'. + fetchInterval: 60 # If true, show a confirmation popup before quitting Lazygit confirmOnQuit: false # If true, exit Lazygit when the user presses escape in a context where there is nothing to cancel/close quitOnTopLevelReturn: true # Config relating to things outside of Lazygit like how files are opened, copying to clipboard, etc os: - # Command for editing a file. Should contain "{{filename}}". - edit: "nvim -- {{filename}} && kitten @ close-window -m var:lazy_float=true --ignore-no-match" - # Command for editing a file at a given line number. Should contain - # "{{filename}}", and may optionally contain "{{line}}". - editAtLine: "nvim +{{line}} -- {{filename}} && kitten @ close-window -m var:lazy_float=true --ignore-no-match" - # Same as EditAtLine, except that the command needs to wait until the - # window is closed. - editAtLineAndWait: "" - # For opening a directory in an editor - openDirInEditor: "" - # A built-in preset that sets all of the above settings. Supported presets - # are defined in the getPreset function in editor_presets.go. - editPreset: "nvim" - # Command for opening a file, as if the file is double-clicked. Should - # contain "{{filename}}", but doesn't support "{{line}}". - open: "xdg-open {{filename}} >/dev/null" - # Command for opening a link. Should contain "{{link}}". - openLink: "" - # EditCommand is the command for editing a file. - # Deprecated: use Edit instead. Note that semantics are different: - # EditCommand is just the command itself, whereas Edit contains a - # "{{filename}}" variable. - editCommand: "" - # EditCommandTemplate is the command template for editing a file - # Deprecated: use EditAtLine instead. - editCommandTemplate: "" - # OpenCommand is the command for opening a file - # Deprecated: use Open instead. - openCommand: "" - # OpenLinkCommand is the command for opening a link - # Deprecated: use OpenLink instead. - openLinkCommand: "" - # CopyToClipboardCmd is the command for copying to clipboard. - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard - copyToClipboardCmd: "" - # ReadFromClipboardCmd is the command for reading the clipboard. - # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard - readFromClipboardCmd: "" + # Command for editing a file. Should contain "{{filename}}". + edit: "nvim -- {{filename}} && kitten @ close-window -m var:lazy_float=true --ignore-no-match" + # Command for editing a file at a given line number. Should contain + # "{{filename}}", and may optionally contain "{{line}}". + editAtLine: "nvim +{{line}} -- {{filename}} && kitten @ close-window -m var:lazy_float=true --ignore-no-match" + # Same as EditAtLine, except that the command needs to wait until the + # window is closed. + editAtLineAndWait: "" + # For opening a directory in an editor + openDirInEditor: "" + # A built-in preset that sets all of the above settings. Supported presets + # are defined in the getPreset function in editor_presets.go. + editPreset: "nvim" + # Command for opening a file, as if the file is double-clicked. Should + # contain "{{filename}}", but doesn't support "{{line}}". + open: "xdg-open {{filename}} >/dev/null" + # Command for opening a link. Should contain "{{link}}". + openLink: "" + # EditCommand is the command for editing a file. + # Deprecated: use Edit instead. Note that semantics are different: + # EditCommand is just the command itself, whereas Edit contains a + # "{{filename}}" variable. + editCommand: "" + # EditCommandTemplate is the command template for editing a file + # Deprecated: use EditAtLine instead. + editCommandTemplate: "" + # OpenCommand is the command for opening a file + # Deprecated: use Open instead. + openCommand: "" + # OpenLinkCommand is the command for opening a link + # Deprecated: use OpenLink instead. + openLinkCommand: "" + # CopyToClipboardCmd is the command for copying to clipboard. + # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard + copyToClipboardCmd: "" + # ReadFromClipboardCmd is the command for reading the clipboard. + # See https://github.com/jesseduffield/lazygit/blob/master/docs/Config.md#custom-command-for-copying-to-and-pasting-from-clipboard + readFromClipboardCmd: "" # If true, don't display introductory popups upon opening Lazygit. disableStartupPopups: false # What to do when opening Lazygit outside of a git repo. @@ -311,185 +310,185 @@ notARepository: quit promptToReturnFromSubprocess: false # Keybindings keybinding: - universal: - quit: q - quit-alt1: - return: - quitWithoutChangingDirectory: Q - togglePanel: - prevItem: - nextItem: - prevItem-alt: k - nextItem-alt: j - prevPage: ',' - nextPage: . - scrollLeft: H - scrollRight: L - gotoTop: < - gotoBottom: '>' - toggleRangeSelect: v - rangeSelectDown: - rangeSelectUp: - prevBlock: - nextBlock: - prevBlock-alt: h - nextBlock-alt: l - nextBlock-alt2: - prevBlock-alt2: - jumpToBlock: - - "1" - - "2" - - "3" - - "4" - - "5" - nextMatch: "n" - prevMatch: "N" - startSearch: / - optionMenu: - optionMenu-alt1: '?' - select: - goInto: - confirm: - confirmInEditor: - remove: d - new: "n" - edit: e - openFile: o - scrollUpMain: - scrollDownMain: - scrollUpMain-alt1: K - scrollDownMain-alt1: J - scrollUpMain-alt2: - scrollDownMain-alt2: - executeShellCommand: ':' - createRebaseOptionsMenu: m - # 'Files' appended for legacy reasons - pushFiles: P - # 'Files' appended for legacy reasons - pullFiles: p - refresh: R - createPatchOptionsMenu: - nextTab: ']' - prevTab: '[' - nextScreenMode: + - prevScreenMode: _ - undo: z - redo: - filteringMenu: - diffingMenu: W - diffingMenu-alt: - copyToClipboard: - openRecentRepos: - submitEditorText: - extrasMenu: '@' - toggleWhitespaceInDiffView: - increaseContextInDiffView: '}' - decreaseContextInDiffView: '{' - increaseRenameSimilarityThreshold: ) - decreaseRenameSimilarityThreshold: ( - openDiffTool: - status: - checkForUpdate: u - recentRepos: - allBranchesLogGraph: a - files: - commitChanges: c - commitChangesWithoutHook: w - amendLastCommit: A - commitChangesWithEditor: C - findBaseCommitForFixup: - confirmDiscard: x - ignoreFile: i - refreshFiles: r - stashAllChanges: s - viewStashOptions: S - toggleStagedAll: a - viewResetOptions: D - fetch: f - toggleTreeView: '`' - openMergeTool: M - openStatusFilter: - copyFileInfoToClipboard: "y" - branches: - createPullRequest: o - viewPullRequestOptions: O - copyPullRequestURL: - checkoutBranchByName: c - forceCheckoutBranch: F - rebaseBranch: r - renameBranch: R - mergeIntoCurrentBranch: M - viewGitFlowOptions: i - fastForward: f - createTag: T - pushTag: P - setUpstream: u - fetchRemote: f - sortOrder: s - worktrees: - viewWorktreeOptions: w - commits: - squashDown: s - renameCommit: r - renameCommitWithEditor: R - viewResetOptions: g - markCommitAsFixup: f - createFixupCommit: F - squashAboveCommits: S - moveDownCommit: - moveUpCommit: - amendToCommit: A - resetCommitAuthor: a - pickCommit: p - revertCommit: t - cherryPickCopy: C - pasteCommits: V - markCommitAsBaseForRebase: B - tagCommit: T - checkoutCommit: - resetCherryPick: - copyCommitAttributeToClipboard: "y" - openLogMenu: - openInBrowser: o - viewBisectOptions: b - startInteractiveRebase: i - amendAttribute: - resetAuthor: a - setAuthor: A - addCoAuthor: c - stash: - popStash: g - renameStash: r - commitFiles: - checkoutCommitFile: c - main: - toggleSelectHunk: a - pickBothHunks: b - editSelectHunk: E - submodules: - init: i - update: u - bulkMenu: b - commitMessage: - commitMenu: + universal: + quit: q + quit-alt1: + return: + quitWithoutChangingDirectory: Q + togglePanel: + prevItem: + nextItem: + prevItem-alt: k + nextItem-alt: j + prevPage: ',' + nextPage: . + scrollLeft: H + scrollRight: L + gotoTop: < + gotoBottom: '>' + toggleRangeSelect: v + rangeSelectDown: + rangeSelectUp: + prevBlock: + nextBlock: + prevBlock-alt: h + nextBlock-alt: l + nextBlock-alt2: + prevBlock-alt2: + jumpToBlock: + - "1" + - "2" + - "3" + - "4" + - "5" + nextMatch: "n" + prevMatch: "N" + startSearch: / + optionMenu: + optionMenu-alt1: '?' + select: + goInto: + confirm: + confirmInEditor: + remove: d + new: "n" + edit: e + openFile: o + scrollUpMain: + scrollDownMain: + scrollUpMain-alt1: K + scrollDownMain-alt1: J + scrollUpMain-alt2: + scrollDownMain-alt2: + executeShellCommand: ':' + createRebaseOptionsMenu: m + # 'Files' appended for legacy reasons + pushFiles: P + # 'Files' appended for legacy reasons + pullFiles: p + refresh: R + createPatchOptionsMenu: + nextTab: ']' + prevTab: '[' + nextScreenMode: + + prevScreenMode: _ + undo: z + redo: + filteringMenu: + diffingMenu: W + diffingMenu-alt: + copyToClipboard: + openRecentRepos: + submitEditorText: + extrasMenu: '@' + toggleWhitespaceInDiffView: + increaseContextInDiffView: '}' + decreaseContextInDiffView: '{' + increaseRenameSimilarityThreshold: ) + decreaseRenameSimilarityThreshold: ( + openDiffTool: + status: + checkForUpdate: u + recentRepos: + allBranchesLogGraph: a + files: + commitChanges: c + commitChangesWithoutHook: w + amendLastCommit: A + commitChangesWithEditor: C + findBaseCommitForFixup: + confirmDiscard: x + ignoreFile: i + refreshFiles: r + stashAllChanges: s + viewStashOptions: S + toggleStagedAll: a + viewResetOptions: D + fetch: f + toggleTreeView: '`' + openMergeTool: M + openStatusFilter: + copyFileInfoToClipboard: "y" + branches: + createPullRequest: o + viewPullRequestOptions: O + copyPullRequestURL: + checkoutBranchByName: c + forceCheckoutBranch: F + rebaseBranch: r + renameBranch: R + mergeIntoCurrentBranch: M + viewGitFlowOptions: i + fastForward: f + createTag: T + pushTag: P + setUpstream: u + fetchRemote: f + sortOrder: s + worktrees: + viewWorktreeOptions: w + commits: + squashDown: s + renameCommit: r + renameCommitWithEditor: R + viewResetOptions: g + markCommitAsFixup: f + createFixupCommit: F + squashAboveCommits: S + moveDownCommit: + moveUpCommit: + amendToCommit: A + resetCommitAuthor: a + pickCommit: p + revertCommit: t + cherryPickCopy: C + pasteCommits: V + markCommitAsBaseForRebase: B + tagCommit: T + checkoutCommit: + resetCherryPick: + copyCommitAttributeToClipboard: "y" + openLogMenu: + openInBrowser: o + viewBisectOptions: b + startInteractiveRebase: i + amendAttribute: + resetAuthor: a + setAuthor: A + addCoAuthor: c + stash: + popStash: g + renameStash: r + commitFiles: + checkoutCommitFile: c + main: + toggleSelectHunk: a + pickBothHunks: b + editSelectHunk: E + submodules: + init: i + update: u + bulkMenu: b + commitMessage: + commitMenu: customCommands: - - key: "C" - command: 'cog commit "{{ .Form.Type }} {{ .Form.Description }}" {{if .Form.Scopes}}({{ .Form.Scopes }}){{end}}' - description: "Commit with cocogitto" - context: "files" - prompts: - - type: "menuFromCommand" - title: "Select the commit type" - key: "Type" - command: > - bash -c "cog commit --help | sed -n 's/.*\\[possible values: \\(.*\\)\\].*/\\1/p' | tr ', ' '\\n' | sed '/^$/d' | sort" + - key: "C" + command: 'cog commit "{{ .Form.Type }} {{ .Form.Description }}" {{if .Form.Scopes}}({{ .Form.Scopes }}){{end}}' + description: "Commit with cocogitto" + context: "files" + prompts: + - type: "menuFromCommand" + title: "Select the commit type" + key: "Type" + command: > + bash -c "cog commit --help | sed -n 's/.*\\[possible values: \\(.*\\)\\].*/\\1/p' | tr ', ' '\\n' | sed '/^$/d' | sort" - - type: "input" - title: "Enter the scope(s) of this change" - key: "Scopes" - - type: "input" - title: "Enter a short description of the change" - key: "Description" - - type: "confirm" - title: "Is the commit message correct?" - body: "{{ .Form.Type }}{{if .Form.Scopes}}({{ .Form.Scopes }}){{end}}: {{ .Form.Description }}" + - type: "input" + title: "Enter the scope(s) of this change" + key: "Scopes" + - type: "input" + title: "Enter a short description of the change" + key: "Description" + - type: "confirm" + title: "Is the commit message correct?" + body: "{{ .Form.Type }}{{if .Form.Scopes}}({{ .Form.Scopes }}){{end}}: {{ .Form.Description }}" diff --git a/Configs/mise/.config/mise/config.toml b/Configs/mise/.config/mise/config.toml index 33a93e4..72c5554 100644 --- a/Configs/mise/.config/mise/config.toml +++ b/Configs/mise/.config/mise/config.toml @@ -1,11 +1,54 @@ [tools] + +# ── Languages ───────────────────────────────────────────────────────── + node = 'lts' # python = {version='3', virtualenv='.venv'} -python = {version='3'} # setting virtualenv adds a virtualenv in every directory +python = { version = '3' } # setting virtualenv adds a virtualenv in every directory # php = "8.2" go = "latest" +tree-sitter = "latest" +uv = "latest" + +# cargo-binstall = "latest" + +# ── Formatters and linters ──────────────────────────────────────────── + +# Biome = "latest" +# gitleaks = "latest" +# ruff = "latest" +# shellcheck = "latest" +# markdownlint-cli2 = "latest" +# stylua = "latest" +# pint = "latest" +# shfmt = "latest" +# taplo = "latest" + +# ── CLI Tools ───────────────────────────────────────────────────────── + +age = "latest" +agebox = "latest" + +bat = "latest" +duf = "latest" +dust = "latest" +eza = "latest" +fd = "latest" +fzf = "latest" +jq = "latest" +lazygit = "latest" +lazyjournal = "latest" +sops = "latest" +usage = "latest" +yazi = "latest" +zoxide = "latest" + [settings] -[alias.node] -my_custom_node = '20' # makes `rtx install node@my_custom_node` install node-20.x - # this can also be specified in a plugin (see below in "Aliases") +lockfile = true +experimental = true +idiomatic_version_file_enable_tools = ["python"] + +[settings.python] +uv_venv_auto = true +uv_venv_create_args = ['--seed'] diff --git a/Configs/mise/.config/mise/mise.lock b/Configs/mise/.config/mise/mise.lock new file mode 100644 index 0000000..e69de29