Skip to content

Instantly share code, notes, and snippets.

@demarchenac
Last active December 16, 2024 19:28
Show Gist options
  • Save demarchenac/cac203dd51b5041f7b108c0e9a330237 to your computer and use it in GitHub Desktop.
Save demarchenac/cac203dd51b5041f7b108c0e9a330237 to your computer and use it in GitHub Desktop.
Environment settings
export ZSH="$HOME/.oh-my-zsh"
ZSH_THEME="spaceship"
plugins=(
git
npm
ssh
ssh-agent
)
source $ZSH/oh-my-zsh.sh
# Theme config for oh-my-zsh
SPACESHIP_PROMPT_ORDER=(
sudo
user
dir
git
package
line_sep
exit_code
char
)
SPACESHIP_RPROMPT_ORDER=(
node
exec_time
time
)
SPACESHIP_TIME_SHOW=true
SPACESHIP_USER_SHOW=always
SPACESHIP_NODE_SHOW=true
SPACESHIP_NODE_ASYNC=false
## Make sure spaceship is cloned: https://spaceship-prompt.sh/getting-started/#Example
source "$HOME/.zsh/themes/spaceship/spaceship.zsh"
# FNM
## Make sure fnm is installed:
### `curl -fsSL "https://fnm.vercel.app/install" | bash -s -- --install-dir "./.fnm" --skip-shell`
export PATH="$HOME/.fnm:$PATH"
eval "$(fnm env --use-on-cd --version-file-strategy=recursive)"
### Add custom completions
#### Completions folder:
#### `mkdir $HOME/.completions`
#### Add completions with:
#### `fnm completions --shell zsh > $HOME/.completions/_fnm`
fpath=($HOME/.completions $fpath)
# Start ssh-agent
if ps -p $SSH_AGENT_PID > /dev/null
then
echo "ssh-agent is already running"
else
echo "ssh-agent not running"
eval `ssh-agent -s`
fi
## Add any ssh keys that are needed
### ...
### ssh-add path/to/ssh/key
# SSH Config
Host github.com
User git
Hostname github.com
IdentityFile path/to/shh/key
# Don't forget to install packages
## oh-my-posh
### `winget install JanDeDobbeleer.OhMyPosh -s winget`
## posh-git, Terminal-Icons
### `PowerShellGet\Install-Module posh-git -Scope CurrentUser -Force`
### `PowerShellGet\Install-Module Terminal-Icons -Scope CurrentUser -Force`
Import-Module posh-git
$omp_theme = 'https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/spaceship.omp.json'
oh-my-posh init pwsh --config $omp_theme | Invoke-Expression
Import-Module -Name Terminal-Icons
# PSReadLine
Set-PSReadLineOption -EditMode Emacs
Set-PSReadLineOption -BellStyle None
Set-PSReadLineKeyHandler -Chord 'Ctrl+d' -Function DeleteChar
Set-PSReadLineOption -PredictionSource History
# fnm
fnm env --use-on-cd --version-file-strategy=recursive | Out-String | Invoke-Expression
{
// Security
"security.workspace.trust.untrustedFiles": "open",
// Window
"window.zoomLevel": 0,
// Workbench
"workbench.colorTheme": "Night Owl",
"workbench.iconTheme": "material-icon-theme",
"workbench.sideBar.location": "right",
// Editor
"editor.fontFamily": "FiraCode Nerd Font",
"editor.fontLigatures": true,
"editor.tabSize": 2,
"editor.rulers": [100],
"editor.minimap.enabled": true,
"editor.inlineSuggest.enabled": true,
"editor.accessibilitySupport": "off",
"editor.formatOnSave": true,
"editor.bracketPairColorization.enabled": true,
"editor.guides.bracketPairs": "active",
// Files
"files.eol": "\n",
// Terminal
"terminal.integrated.defaultProfile.windows": "PowerShell",
"terminal.integrated.profiles.windows": {
"PowerShell": {
"source": "PowerShell",
"icon": "terminal-powershell"
},
"Command Prompt": {
"path": ["${env:windir}\\Sysnative\\cmd.exe", "${env:windir}\\System32\\cmd.exe"],
"args": [],
"icon": "terminal-cmd"
},
"Git Bash": {
"source": "Git Bash"
}
},
// Search
"search.exclude": {
"**/node_modules": true,
"**/bower_components": true,
"**/*.code-search": true
},
// Emmet
"tailwindCSS.emmetCompletions": true,
"emmet.includeLanguages": {
"javascript": "javascriptreact",
"typescript": "typescriptreact",
"html": "html",
"css": "css"
},
// Eslint
"eslint.validate": ["javascript", "javascriptreact", "typescript", "typescriptreact"],
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
},
// Prettier
"prettier.enableDebugLogs": true,
"prettier.printWidth": 100,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"[markdown]": {
"editor.formatOnSave": false
},
// Gitlens
"gitlens.rebaseEditor.ordering": "asc",
// cSpell
"cSpell.language": "en"
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment