mirror of
https://github.com/js0ny/dotfiles.git
synced 2025-12-21 08:43:00 +00:00
74 lines
1.9 KiB
Bash
74 lines
1.9 KiB
Bash
#!/bin/zsh
|
|
# duti.zsh
|
|
# Set default apps (duti)
|
|
# The id of the app can be found by running
|
|
# `osascript -e 'id of app "AppName"'`
|
|
brew install --formula duti
|
|
echo "[INFO] Setting Default Apps"
|
|
|
|
# Define an associative array with file extensions and corresponding app IDs
|
|
typeset -A app_defaults
|
|
app_defaults=(
|
|
# Markdown -> Typora
|
|
.md abnerworks.Typora
|
|
.markdown abnerworks.Typora
|
|
# PDF -> Sioyek
|
|
.pdf info.sioyek.sioyek
|
|
# Raw Text -> Neovide
|
|
.txt com.neovide.neovide
|
|
# Archive -> Keka
|
|
.zip com.aone.keka
|
|
.rar com.aone.keka
|
|
.7z com.aone.keka
|
|
.tar com.aone.keka
|
|
# Source Code Light -> Neovim
|
|
.gitignore com.neovide.neovide
|
|
.vimrc com.neovide.neovide
|
|
.vim com.neovide.neovide
|
|
.lua com.neovide.neovide
|
|
.py com.neovide.neovide
|
|
.jl com.neovide.neovide
|
|
.sh com.neovide.neovide
|
|
.c com.neovide.neovide
|
|
# Source Code DOTNET -> VSCode
|
|
.cs com.microsoft.VSCode
|
|
.fs com.microsoft.VSCode
|
|
.fsx com.microsoft.VSCode
|
|
.csx com.microsoft.VSCode
|
|
.ps1 com.microsoft.VSCode
|
|
# Source Code Web -> VSCode
|
|
.js com.microsoft.VSCode
|
|
.ts com.microsoft.VSCode
|
|
.jsx com.microsoft.VSCode
|
|
.tsx com.microsoft.VSCode
|
|
.css com.microsoft.VSCode
|
|
.scss com.microsoft.VSCode
|
|
.sass com.microsoft.VSCode
|
|
.vue com.microsoft.VSCode
|
|
# Source Code Config -> Neovim
|
|
.json com.neovide.neovide
|
|
.yaml com.neovide.neovide
|
|
.yml com.neovide.neovide
|
|
.toml com.neovide.neovide
|
|
.ini com.neovide.neovide
|
|
.cfg com.neovide.neovide
|
|
.conf com.neovide.neovide
|
|
.kdl com.neovide.neovide
|
|
.xml com.neovide.neovide
|
|
# Source Code Jupyter -> VSCode
|
|
.ipynb com.microsoft.VSCode
|
|
# Source Code DotNet Project -> Rider
|
|
.sln com.jetbrains.rider
|
|
.csproj com.jetbrains.rider
|
|
.fsproj com.jetbrains.rider
|
|
# Video -> IINA
|
|
.mp4 com.colliderli.iina
|
|
.mkv com.colliderli.iina
|
|
)
|
|
|
|
# Loop through the array and set the default apps
|
|
for ext app_id in ${(kv)app_defaults}; do
|
|
duti -s $app_id $ext all
|
|
done
|
|
|
|
unset app_defaults
|