mirror of
https://github.com/cmderdev/cmder.git
synced 2025-11-30 02:29:48 +08:00
Compare commits
5 Commits
master
...
copilot/op
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b254bad5de | ||
|
|
49b7eee23a | ||
|
|
f90d276657 | ||
|
|
e99dc4d7e6 | ||
|
|
00636cf013 |
2
.github/workflows/branches.yml
vendored
2
.github/workflows/branches.yml
vendored
@@ -19,7 +19,7 @@ jobs:
|
||||
# Steps represent a sequence of tasks that will be executed as part of the job
|
||||
steps:
|
||||
# Checks-out the repository under $GITHUB_WORKSPACE, so the job can access it
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v5
|
||||
with:
|
||||
fetch-depth: 0 # fetch all history for all branches and tags
|
||||
|
||||
|
||||
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
@@ -35,7 +35,7 @@ jobs:
|
||||
discussions: write
|
||||
steps:
|
||||
- name: Check out repository code (Action from GitHub)
|
||||
uses: actions/checkout@v6
|
||||
uses: actions/checkout@v5
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
|
||||
2
.github/workflows/codeql.yml
vendored
2
.github/workflows/codeql.yml
vendored
@@ -45,7 +45,7 @@ jobs:
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v6
|
||||
uses: actions/checkout@v5
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
|
||||
2
.github/workflows/tests.yml
vendored
2
.github/workflows/tests.yml
vendored
@@ -38,7 +38,7 @@ jobs:
|
||||
continue-on-error: false
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v5
|
||||
- name: Initialize vendors
|
||||
shell: pwsh
|
||||
working-directory: scripts
|
||||
|
||||
2
.github/workflows/vendor.yml
vendored
2
.github/workflows/vendor.yml
vendored
@@ -24,7 +24,7 @@ jobs:
|
||||
pull-requests: write
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
- uses: actions/checkout@v5
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
|
||||
116
vendor/cmder.sh
vendored
116
vendor/cmder.sh
vendored
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
# DO NOT EDIT THIS FILE IT WILL BE OVERWRITTEN ON UPDATE
|
||||
#
|
||||
# Add portable user customizations ${CMDER_ROOT}/config/user_profile.sh,
|
||||
@@ -7,93 +8,130 @@
|
||||
# Add system specific users customizations to $HOME/.bashrc, these
|
||||
# customizations will not follow Cmder to another machine.
|
||||
|
||||
function runProfiled {
|
||||
unset profile_d_scripts
|
||||
pushd "${1}" >/dev/null
|
||||
# Source all .sh scripts in a given directory
|
||||
# Args: $1 - directory path containing .sh scripts to source
|
||||
run_profile_d() {
|
||||
local profile_d_scripts
|
||||
pushd "${1}" >/dev/null || return
|
||||
# shellcheck disable=SC2035
|
||||
profile_d_scripts=$(ls *.sh 2>/dev/null)
|
||||
|
||||
if [ ! "x${profile_d_scripts}" = "x" ] ; then
|
||||
for x in ${profile_d_scripts} ; do
|
||||
# echo Sourcing "${1}/${x}"...
|
||||
. "${1}/${x}"
|
||||
if [ -n "${profile_d_scripts}" ]; then
|
||||
for script in ${profile_d_scripts}; do
|
||||
# echo Sourcing "${1}/${script}"...
|
||||
# shellcheck disable=SC1090
|
||||
. "${1}/${script}"
|
||||
done
|
||||
fi
|
||||
popd >/dev/null
|
||||
popd >/dev/null || return
|
||||
}
|
||||
|
||||
# We do this for bash as admin sessions since $CMDER_ROOT is not being set
|
||||
if [ "$CMDER_ROOT" == "" ] ; then
|
||||
case "$ConEmuDir" in *\\*) CMDER_ROOT=$( cd "$(cygpath -u "$ConEmuDir")/../.." ; pwd );; esac
|
||||
# Detect and set CMDER_ROOT for bash admin sessions
|
||||
# Converts Windows paths to Unix paths if needed
|
||||
# ConEmuDir is set by ConEmu/Cmder environment
|
||||
if [ -z "$CMDER_ROOT" ]; then
|
||||
# Try to get CMDER_ROOT from ConEmuDir
|
||||
case "$ConEmuDir" in
|
||||
*\\*) CMDER_ROOT=$( cd "$(cygpath -u "$ConEmuDir")/../.." && pwd );;
|
||||
esac
|
||||
|
||||
# If still not set, derive from script location (vendor -> root)
|
||||
if [ -z "$CMDER_ROOT" ]; then
|
||||
CMDER_ROOT="$( cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd )"
|
||||
fi
|
||||
else
|
||||
case "$CMDER_ROOT" in *\\*) CMDER_ROOT="$(cygpath -u "$CMDER_ROOT")";; esac
|
||||
case "$CMDER_ROOT" in
|
||||
*\\*) CMDER_ROOT="$(cygpath -u "$CMDER_ROOT")";;
|
||||
esac
|
||||
fi
|
||||
|
||||
# Remove any trailing '/'
|
||||
CMDER_ROOT=$(echo $CMDER_ROOT | sed 's:/*$::')
|
||||
# Remove any trailing '/' from CMDER_ROOT
|
||||
CMDER_ROOT="${CMDER_ROOT%/}"
|
||||
|
||||
# Exit early if CMDER_ROOT is not set
|
||||
if [ -z "$CMDER_ROOT" ]; then
|
||||
echo "Warning: CMDER_ROOT is not set. Cmder integration skipped."
|
||||
# shellcheck disable=SC2317
|
||||
return 2>/dev/null || exit 0
|
||||
fi
|
||||
|
||||
export CMDER_ROOT
|
||||
|
||||
if [ -f "/c/Program Files/Git/cmd/git.exe" ] ; then
|
||||
# Detect Git installation location
|
||||
if [ -f "/c/Program Files/Git/cmd/git.exe" ]; then
|
||||
GIT_INSTALL_ROOT="/c/Program Files/Git"
|
||||
elif [ -f "/c/Program Files(x86)/Git/cmd/git.exe" ] ; then
|
||||
elif [ -f "/c/Program Files(x86)/Git/cmd/git.exe" ]; then
|
||||
GIT_INSTALL_ROOT="/c/Program Files(x86)/Git"
|
||||
elif [ -f "${CMDER_ROOT}/vendor/git-for-windows/cmd/git.exe" ] ; then
|
||||
GIT_INSTALL_ROOT=${CMDER_ROOT}/vendor/git-for-windows
|
||||
elif [ -f "${CMDER_ROOT}/vendor/git-for-windows/cmd/git.exe" ]; then
|
||||
GIT_INSTALL_ROOT="${CMDER_ROOT}/vendor/git-for-windows"
|
||||
fi
|
||||
|
||||
if [[ ! "$PATH" =~ "${GIT_INSTALL_ROOT}/bin:" ]] ; then
|
||||
# Add Git to PATH if not already present
|
||||
if [[ -n "${GIT_INSTALL_ROOT}" && ! "$PATH" =~ ${GIT_INSTALL_ROOT}/bin: ]]; then
|
||||
PATH="${GIT_INSTALL_ROOT}/bin:$PATH"
|
||||
fi
|
||||
|
||||
# Add Cmder directories to PATH
|
||||
PATH="${CMDER_ROOT}/bin:${CMDER_ROOT}/vendor/bin:$PATH:${CMDER_ROOT}"
|
||||
|
||||
export PATH
|
||||
|
||||
# Drop *.sh or *.zsh files into "${CMDER_ROOT}\config\profile.d"
|
||||
# to source them at startup.
|
||||
if [ ! -d "${CMDER_ROOT}/config/profile.d" ] ; then
|
||||
# Create profile.d directory if it doesn't exist
|
||||
if [ ! -d "${CMDER_ROOT}/config/profile.d" ]; then
|
||||
mkdir -p "${CMDER_ROOT}/config/profile.d"
|
||||
fi
|
||||
|
||||
if [ -d "${CMDER_ROOT}/config/profile.d" ] ; then
|
||||
runProfiled "${CMDER_ROOT}/config/profile.d"
|
||||
# Source all .sh scripts in profile.d directories
|
||||
if [ -d "${CMDER_ROOT}/config/profile.d" ]; then
|
||||
run_profile_d "${CMDER_ROOT}/config/profile.d"
|
||||
fi
|
||||
|
||||
if [ -d "${CMDER_USER_CONFIG}/profile.d" ] ; then
|
||||
runProfiled "${CMDER_USER_CONFIG}/profile.d"
|
||||
if [ -d "${CMDER_USER_CONFIG}/profile.d" ]; then
|
||||
run_profile_d "${CMDER_USER_CONFIG}/profile.d"
|
||||
fi
|
||||
|
||||
|
||||
# Renaming to "config\user_profile.sh" to "user_profile.sh" for consistency.
|
||||
if [ -f "$CMDER_ROOT/config/user-profile.sh" ] ; then
|
||||
# Rename legacy user-profile.sh to user_profile.sh for consistency
|
||||
if [ -f "$CMDER_ROOT/config/user-profile.sh" ]; then
|
||||
mv "$CMDER_ROOT/config/user-profile.sh" "$CMDER_ROOT/config/user_profile.sh"
|
||||
fi
|
||||
|
||||
CmderUserProfilePath="${CMDER_ROOT}/config/user_profile.sh"
|
||||
if [ -f "${CMDER_ROOT}/config/user_profile.sh" ] ; then
|
||||
# Source user profile from CMDER_ROOT config
|
||||
if [ -f "${CMDER_ROOT}/config/user_profile.sh" ]; then
|
||||
. "${CMDER_ROOT}/config/user_profile.sh"
|
||||
fi
|
||||
|
||||
if [ "${CMDER_USER_CONFIG}" != "" ] ; then
|
||||
# Renaming to "config\user_profile.sh" to "user_profile.sh" for consistency.
|
||||
if [ -f "$CMDER_USER_CONFIG/user-profile.sh" ] ; then
|
||||
# Handle CMDER_USER_CONFIG if set
|
||||
if [ -n "${CMDER_USER_CONFIG}" ]; then
|
||||
# Rename legacy user-profile.sh to user_profile.sh for consistency
|
||||
if [ -f "$CMDER_USER_CONFIG/user-profile.sh" ]; then
|
||||
mv "$CMDER_USER_CONFIG/user-profile.sh" "$CMDER_USER_CONFIG/user_profile.sh"
|
||||
fi
|
||||
|
||||
export PATH="${CMDER_USER_CONFIG}/bin:$PATH"
|
||||
|
||||
CmderUserProfilePath="${CMDER_USER_CONFIG}/user_profile.sh"
|
||||
if [ -f "${CMDER_USER_CONFIG}/user_profile.sh" ] ; then
|
||||
# Source user profile from CMDER_USER_CONFIG
|
||||
if [ -f "${CMDER_USER_CONFIG}/user_profile.sh" ]; then
|
||||
# shellcheck disable=SC1091
|
||||
. "${CMDER_USER_CONFIG}/user_profile.sh"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -f "${CmderUserProfilePath}" ] ; then
|
||||
echo Creating user startup file: "${CmderUserProfilePath}"
|
||||
cp "${CMDER_ROOT}/vendor/user_profile.sh.default" "${CmderUserProfilePath}"
|
||||
# Determine the user profile path for creation if needed
|
||||
if [ -n "${CMDER_USER_CONFIG}" ]; then
|
||||
cmder_user_profile_path="${CMDER_USER_CONFIG}/user_profile.sh"
|
||||
else
|
||||
cmder_user_profile_path="${CMDER_ROOT}/config/user_profile.sh"
|
||||
fi
|
||||
|
||||
# Create user profile from default template if it doesn't exist
|
||||
if [ ! -f "${cmder_user_profile_path}" ] && [ -f "${CMDER_ROOT}/vendor/user_profile.sh.default" ]; then
|
||||
echo "Creating user startup file: ${cmder_user_profile_path}"
|
||||
cp "${CMDER_ROOT}/vendor/user_profile.sh.default" "${cmder_user_profile_path}"
|
||||
fi
|
||||
|
||||
# Source the users .bashrc file if it exists
|
||||
if [ -f "${HOME}/.bashrc" ] ; then
|
||||
if [ -f "${HOME}/.bashrc" ]; then
|
||||
# shellcheck disable=SC1091
|
||||
. "${HOME}/.bashrc"
|
||||
fi
|
||||
|
||||
123
vendor/cmder_exinit
vendored
123
vendor/cmder_exinit
vendored
@@ -1,3 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
# Copy this file to your non integrated *nix-like environment,
|
||||
# Cygwin/MSys2/Git for Windows SDK, installs '/etc/profile.d/'
|
||||
# folder to integrate the externally installed Unix like environment
|
||||
@@ -22,92 +23,130 @@
|
||||
# # from outside Cmder.
|
||||
# CMDER_ROOT=${USERPROFILE}/cmder # This is not required if launched from Cmder.
|
||||
|
||||
function runProfiled {
|
||||
unset profile_d_scripts
|
||||
pushd "${1}" >/dev/null
|
||||
# Source all .sh or .zsh scripts in a given directory based on shell type
|
||||
# Args: $1 - directory path containing shell scripts to source
|
||||
run_profile_d() {
|
||||
local profile_d_scripts
|
||||
pushd "${1}" >/dev/null || return
|
||||
|
||||
if [ ! "x${ZSH_VERSION}" = "x" ]; then
|
||||
if [ -n "${ZSH_VERSION}" ]; then
|
||||
# shellcheck disable=SC2035
|
||||
profile_d_scripts=$(ls *.zsh 2>/dev/null)
|
||||
elif [ ! "x${BASH_VERSION}" = "x" ]; then
|
||||
elif [ -n "${BASH_VERSION}" ]; then
|
||||
# shellcheck disable=SC2035
|
||||
profile_d_scripts=$(ls *.sh 2>/dev/null)
|
||||
fi
|
||||
|
||||
if [ ! "x${profile_d_scripts}" = "x" ] ; then
|
||||
for x in ${profile_d_scripts} ; do
|
||||
echo Sourcing "${1}/${x}"...
|
||||
. "${1}/${x}"
|
||||
if [ -n "${profile_d_scripts}" ]; then
|
||||
for script in ${profile_d_scripts}; do
|
||||
echo "Sourcing ${1}/${script}..."
|
||||
# shellcheck disable=SC1090
|
||||
. "${1}/${script}"
|
||||
done
|
||||
fi
|
||||
popd >/dev/null
|
||||
popd >/dev/null || return
|
||||
}
|
||||
|
||||
# Check that we haven't already been sourced.
|
||||
# Check that we haven't already been sourced
|
||||
[[ -z ${CMDER_EXINIT} ]] && CMDER_EXINIT="1" || return
|
||||
|
||||
# We do this for bash as admin sessions since $CMDER_ROOT is not being set
|
||||
if [ "$CMDER_ROOT" = "" -a "$ConEmuDir" != "" ] ; then
|
||||
if [ -d "${ConEmuDir}../../vendor" ] ; then
|
||||
case "$ConEmuDir" in *\\*) CMDER_ROOT=$( cd "$(cygpath -u "$ConEmuDir")/../.." ; pwd );; esac
|
||||
# Detect and set CMDER_ROOT for bash admin sessions
|
||||
# Converts Windows paths to Unix paths if needed
|
||||
# ConEmuDir is set by ConEmu/Cmder environment
|
||||
if [ -z "$CMDER_ROOT" ] && [ -n "$ConEmuDir" ]; then
|
||||
if [ -d "${ConEmuDir}../../vendor" ]; then
|
||||
case "$ConEmuDir" in
|
||||
*\\*) CMDER_ROOT=$( cd "$(cygpath -u "$ConEmuDir")/../.." && pwd );;
|
||||
esac
|
||||
else
|
||||
echo "Running in ConEmu without Cmder, skipping Cmder integration."
|
||||
fi
|
||||
elif [ "$CMDER_ROOT" != "" ] ; then
|
||||
case "$CMDER_ROOT" in *\\*) CMDER_ROOT="$(cygpath -u "$CMDER_ROOT")";; esac
|
||||
elif [ -n "$CMDER_ROOT" ]; then
|
||||
case "$CMDER_ROOT" in
|
||||
*\\*) CMDER_ROOT="$(cygpath -u "$CMDER_ROOT")";;
|
||||
esac
|
||||
fi
|
||||
|
||||
if [ ! "$CMDER_ROOT" = "" ] ; then
|
||||
# Remove any trailing '/'
|
||||
CMDER_ROOT=$(echo $CMDER_ROOT | sed 's:/*$::')
|
||||
# If CMDER_ROOT is still not set, try to derive from script location
|
||||
# Note: This only works if cmder_exinit is in its original location (vendor/)
|
||||
if [ -z "$CMDER_ROOT" ] && [ -f "${BASH_SOURCE[0]}" ]; then
|
||||
# Check if we're in the vendor directory
|
||||
script_dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
if [[ "$script_dir" == */vendor ]] || [[ "$script_dir" == */vendor/* ]]; then
|
||||
# Extract the Cmder root (parent of vendor)
|
||||
CMDER_ROOT="$( cd "$script_dir/.." && pwd )"
|
||||
# Verify this looks like a Cmder installation
|
||||
if [ ! -d "${CMDER_ROOT}/vendor" ]; then
|
||||
unset CMDER_ROOT
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
echo "Using \"CMDER_ROOT\" at \"${CMDER_ROOT}\"."
|
||||
if [ -n "$CMDER_ROOT" ]; then
|
||||
# Remove any trailing '/' from CMDER_ROOT
|
||||
CMDER_ROOT="${CMDER_ROOT%/}"
|
||||
|
||||
echo "Using CMDER_ROOT at \"${CMDER_ROOT}\"."
|
||||
|
||||
export CMDER_ROOT
|
||||
|
||||
PATH=${CMDER_ROOT}/bin:${CMDER_ROOT}/vendor/bin:$PATH:${CMDER_ROOT}
|
||||
# Add Cmder directories to PATH
|
||||
PATH="${CMDER_ROOT}/bin:${CMDER_ROOT}/vendor/bin:$PATH:${CMDER_ROOT}"
|
||||
|
||||
export PATH
|
||||
|
||||
# Drop *.sh or *.zsh files into "${CMDER_ROOT}\config\profile.d"
|
||||
# to source them at startup.
|
||||
if [ ! -d "${CMDER_ROOT}/config/profile.d" ] ; then
|
||||
# Create profile.d directory if it doesn't exist
|
||||
if [ ! -d "${CMDER_ROOT}/config/profile.d" ]; then
|
||||
mkdir -p "${CMDER_ROOT}/config/profile.d"
|
||||
fi
|
||||
|
||||
if [ -d "${CMDER_ROOT}/config/profile.d" ] ; then
|
||||
runProfiled "${CMDER_ROOT}/config/profile.d"
|
||||
# Source all shell scripts in profile.d directories
|
||||
if [ -d "${CMDER_ROOT}/config/profile.d" ]; then
|
||||
run_profile_d "${CMDER_ROOT}/config/profile.d"
|
||||
fi
|
||||
|
||||
if [ -d "${CMDER_USER_CONFIG}/profile.d" ] ; then
|
||||
runProfiled "${CMDER_USER_CONFIG}/profile.d"
|
||||
if [ -d "${CMDER_USER_CONFIG}/profile.d" ]; then
|
||||
run_profile_d "${CMDER_USER_CONFIG}/profile.d"
|
||||
fi
|
||||
|
||||
|
||||
# Renaming to "config\user_profile.sh" to "user_profile.sh" for consistency.
|
||||
if [ -f "$CMDER_ROOT/config/user-profile.sh" ] ; then
|
||||
# Rename legacy user-profile.sh to user_profile.sh for consistency
|
||||
if [ -f "$CMDER_ROOT/config/user-profile.sh" ]; then
|
||||
mv "$CMDER_ROOT/config/user-profile.sh" "$CMDER_ROOT/config/user_profile.sh"
|
||||
fi
|
||||
|
||||
CmderUserProfilePath="${CMDER_ROOT}/config/user_profile.sh"
|
||||
if [ -f "${CMDER_ROOT}/config/user_profile.sh" ] ; then
|
||||
# Source user profile from CMDER_ROOT config
|
||||
if [ -f "${CMDER_ROOT}/config/user_profile.sh" ]; then
|
||||
# shellcheck disable=SC1091
|
||||
. "${CMDER_ROOT}/config/user_profile.sh"
|
||||
fi
|
||||
|
||||
if [ "${CMDER_USER_CONFIG}" != "" ] ; then
|
||||
# Renaming to "config\user_profile.sh" to "user_profile.sh" for consistency.
|
||||
if [ -f "$CMDER_USER_CONFIG/user-profile.sh" ] ; then
|
||||
# Handle CMDER_USER_CONFIG if set
|
||||
if [ -n "${CMDER_USER_CONFIG}" ]; then
|
||||
# Rename legacy user-profile.sh to user_profile.sh for consistency
|
||||
if [ -f "$CMDER_USER_CONFIG/user-profile.sh" ]; then
|
||||
mv "$CMDER_USER_CONFIG/user-profile.sh" "$CMDER_USER_CONFIG/user_profile.sh"
|
||||
fi
|
||||
|
||||
export PATH=${CMDER_USER_CONFIG}/bin:$PATH
|
||||
export PATH="${CMDER_USER_CONFIG}/bin:$PATH"
|
||||
|
||||
CmderUserProfilePath="${CMDER_USER_CONFIG}/user_profile.sh"
|
||||
if [ -f "${CMDER_USER_CONFIG}/user_profile.sh" ] ; then
|
||||
# Source user profile from CMDER_USER_CONFIG
|
||||
if [ -f "${CMDER_USER_CONFIG}/user_profile.sh" ]; then
|
||||
# shellcheck disable=SC1091
|
||||
. "${CMDER_USER_CONFIG}/user_profile.sh"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -f "${CmderUserProfilePath}" ] ; then
|
||||
echo Creating user startup file: "${CmderUserProfilePath}"
|
||||
cp "${CMDER_ROOT}/vendor/user_profile.sh.default" "${CmderUserProfilePath}"
|
||||
# Determine the user profile path for creation if needed
|
||||
if [ -n "${CMDER_USER_CONFIG}" ]; then
|
||||
cmder_user_profile_path="${CMDER_USER_CONFIG}/user_profile.sh"
|
||||
else
|
||||
cmder_user_profile_path="${CMDER_ROOT}/config/user_profile.sh"
|
||||
fi
|
||||
|
||||
# Create user profile from default template if it doesn't exist
|
||||
if [ ! -f "${cmder_user_profile_path}" ] && [ -f "${CMDER_ROOT}/vendor/user_profile.sh.default" ]; then
|
||||
echo "Creating user startup file: ${cmder_user_profile_path}"
|
||||
cp "${CMDER_ROOT}/vendor/user_profile.sh.default" "${cmder_user_profile_path}"
|
||||
fi
|
||||
fi
|
||||
|
||||
12
vendor/sources.json
vendored
12
vendor/sources.json
vendored
@@ -1,13 +1,13 @@
|
||||
[
|
||||
{
|
||||
"name": "git-for-windows",
|
||||
"version": "2.52.0.windows.1",
|
||||
"url": "https://github.com/git-for-windows/git/releases/download/v2.52.0.windows.1/PortableGit-2.52.0-64-bit.7z.exe"
|
||||
"version": "2.51.2.windows.1",
|
||||
"url": "https://github.com/git-for-windows/git/releases/download/v2.51.2.windows.1/PortableGit-2.51.2-64-bit.7z.exe"
|
||||
},
|
||||
{
|
||||
"name": "clink",
|
||||
"version": "1.9.2",
|
||||
"url": "https://github.com/chrisant996/clink/releases/download/v1.9.2/clink.1.9.2.6aa2e0.zip"
|
||||
"version": "1.8.8",
|
||||
"url": "https://github.com/chrisant996/clink/releases/download/v1.8.8/clink.1.8.8.a63364.zip"
|
||||
},
|
||||
{
|
||||
"name": "conemu-maximus5",
|
||||
@@ -21,7 +21,7 @@
|
||||
},
|
||||
{
|
||||
"name": "clink-completions",
|
||||
"version": "0.6.7",
|
||||
"url": "https://github.com/vladimir-kotikov/clink-completions/archive/v0.6.7.zip"
|
||||
"version": "0.6.6",
|
||||
"url": "https://github.com/vladimir-kotikov/clink-completions/archive/v0.6.6.zip"
|
||||
}
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user