Skip to content

Latest commit

History

86 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

My personal dotfiles

A plain zsh setup for macOS — no framework, no prompt engine — plus a short script that provisions a fresh Mac.

Installation

Clone the repository as .dotfiles in your home directory and run the bootstrap script:

git clone git@github.com:kylewalow/dotfiles.git ~/.dotfiles
cd~/.dotfiles
./bootstrap

bootstrap asks for confirmation, takes your sudo password upfront and then sources installscript. Running it again is safe: every step either skips or updates what is already there.

What it sets up

  • Homebrew — installed when missing, otherwise just put on PATH
  • zsh — made the login shell if it isn't already, and ~/.zshrc is symlinked to shell/.zshrc
  • Pluginszsh-autosuggestions from Homebrew, zsh-artisan cloned to ~/.zsh
  • CLI toolszoxide, fzf, ripgrep, wget
  • Databasesmysql and redis, both started as background services that come back after a reboot (brew services stop mysql to undo)
  • Nodenvm with the current LTS as default, plus pnpm
  • Git — global gitignore, code --wait as editor, and config/.gitconfig pulled in through include.path
  • Font — Fira Code

PHP is deliberately not managed here, PHP Monitor handles that.

Layout

PathPurpose
bootstrapprompts, then runs the installscript
installscriptprovisions the machine
shell/.zshrcthe only file symlinked into $HOME
shell/.exportsenvironment variables
shell/.aliasesaliases
shell/.functionsshell functions
shell/.global-gitignorereferenced by core.excludesfile
config/.gitconfiggit aliases and user, included from ~/.gitconfig

Machine local settings

shell/.zshrc also sources the following files when they exist. They are not part of this repository, so anything machine specific or secret belongs there:

~/.dotfiles-custom/shell/.exports
~/.dotfiles-custom/shell/.aliases
~/.dotfiles-custom/shell/.functions
~/.dotfiles-custom/shell/.zshrc

A few of the commands

CommandDoes
z <fragment>jump to a directory you have visited before
zipick one interactively through fzf
browseopen the current repository's remote in the browser
krakenopen the current directory in GitKraken
mkd <dir>create a directory and enter it
wholisten <port>show what is listening on a port
digga <host>readable dig output
set_vscode_colorstint VS Code by project type (Laravel, Nuxt, ProcessWire)

Feel free to create an issue on this repo if you have any questions about them.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
GitHub - kylewalow/dotfiles · GitHub
Skip to content

Latest commit

History

86 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

My personal dotfiles

A plain zsh setup for macOS — no framework, no prompt engine — plus a short script that provisions a fresh Mac.

Installation

Clone the repository as .dotfiles in your home directory and run the bootstrap script:

git clone git@github.com:kylewalow/dotfiles.git ~/.dotfiles
cd~/.dotfiles
./bootstrap

bootstrap asks for confirmation, takes your sudo password upfront and then sources installscript. Running it again is safe: every step either skips or updates what is already there.

What it sets up

  • Homebrew — installed when missing, otherwise just put on PATH
  • zsh — made the login shell if it isn't already, and ~/.zshrc is symlinked to shell/.zshrc
  • Pluginszsh-autosuggestions from Homebrew, zsh-artisan cloned to ~/.zsh
  • CLI toolszoxide, fzf, ripgrep, wget
  • Databasesmysql and redis, both started as background services that come back after a reboot (brew services stop mysql to undo)
  • Nodenvm with the current LTS as default, plus pnpm
  • Git — global gitignore, code --wait as editor, and config/.gitconfig pulled in through include.path
  • Font — Fira Code

PHP is deliberately not managed here, PHP Monitor handles that.

Layout

PathPurpose
bootstrapprompts, then runs the installscript
installscriptprovisions the machine
shell/.zshrcthe only file symlinked into $HOME
shell/.exportsenvironment variables
shell/.aliasesaliases
shell/.functionsshell functions
shell/.global-gitignorereferenced by core.excludesfile
config/.gitconfiggit aliases and user, included from ~/.gitconfig

Machine local settings

shell/.zshrc also sources the following files when they exist. They are not part of this repository, so anything machine specific or secret belongs there:

~/.dotfiles-custom/shell/.exports
~/.dotfiles-custom/shell/.aliases
~/.dotfiles-custom/shell/.functions
~/.dotfiles-custom/shell/.zshrc

A few of the commands

CommandDoes
z <fragment>jump to a directory you have visited before
zipick one interactively through fzf
browseopen the current repository's remote in the browser
krakenopen the current directory in GitKraken
mkd <dir>create a directory and enter it
wholisten <port>show what is listening on a port
digga <host>readable dig output
set_vscode_colorstint VS Code by project type (Laravel, Nuxt, ProcessWire)

Feel free to create an issue on this repo if you have any questions about them.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - kylewalow/dotfiles · GitHub
Skip to content

Latest commit

History

86 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

My personal dotfiles

A plain zsh setup for macOS — no framework, no prompt engine — plus a short script that provisions a fresh Mac.

Installation

Clone the repository as .dotfiles in your home directory and run the bootstrap script:

git clone git@github.com:kylewalow/dotfiles.git ~/.dotfiles
cd~/.dotfiles
./bootstrap

bootstrap asks for confirmation, takes your sudo password upfront and then sources installscript. Running it again is safe: every step either skips or updates what is already there.

What it sets up

  • Homebrew — installed when missing, otherwise just put on PATH
  • zsh — made the login shell if it isn't already, and ~/.zshrc is symlinked to shell/.zshrc
  • Pluginszsh-autosuggestions from Homebrew, zsh-artisan cloned to ~/.zsh
  • CLI toolszoxide, fzf, ripgrep, wget
  • Databasesmysql and redis, both started as background services that come back after a reboot (brew services stop mysql to undo)
  • Nodenvm with the current LTS as default, plus pnpm
  • Git — global gitignore, code --wait as editor, and config/.gitconfig pulled in through include.path
  • Font — Fira Code

PHP is deliberately not managed here, PHP Monitor handles that.

Layout

PathPurpose
bootstrapprompts, then runs the installscript
installscriptprovisions the machine
shell/.zshrcthe only file symlinked into $HOME
shell/.exportsenvironment variables
shell/.aliasesaliases
shell/.functionsshell functions
shell/.global-gitignorereferenced by core.excludesfile
config/.gitconfiggit aliases and user, included from ~/.gitconfig

Machine local settings

shell/.zshrc also sources the following files when they exist. They are not part of this repository, so anything machine specific or secret belongs there:

~/.dotfiles-custom/shell/.exports
~/.dotfiles-custom/shell/.aliases
~/.dotfiles-custom/shell/.functions
~/.dotfiles-custom/shell/.zshrc

A few of the commands

CommandDoes
z <fragment>jump to a directory you have visited before
zipick one interactively through fzf
browseopen the current repository's remote in the browser
krakenopen the current directory in GitKraken
mkd <dir>create a directory and enter it
wholisten <port>show what is listening on a port
digga <host>readable dig output
set_vscode_colorstint VS Code by project type (Laravel, Nuxt, ProcessWire)

Feel free to create an issue on this repo if you have any questions about them.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - kylewalow/dotfiles · GitHub
Skip to content

Latest commit

History

86 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

My personal dotfiles

A plain zsh setup for macOS — no framework, no prompt engine — plus a short script that provisions a fresh Mac.

Installation

Clone the repository as .dotfiles in your home directory and run the bootstrap script:

git clone git@github.com:kylewalow/dotfiles.git ~/.dotfiles
cd~/.dotfiles
./bootstrap

bootstrap asks for confirmation, takes your sudo password upfront and then sources installscript. Running it again is safe: every step either skips or updates what is already there.

What it sets up

  • Homebrew — installed when missing, otherwise just put on PATH
  • zsh — made the login shell if it isn't already, and ~/.zshrc is symlinked to shell/.zshrc
  • Pluginszsh-autosuggestions from Homebrew, zsh-artisan cloned to ~/.zsh
  • CLI toolszoxide, fzf, ripgrep, wget
  • Databasesmysql and redis, both started as background services that come back after a reboot (brew services stop mysql to undo)
  • Nodenvm with the current LTS as default, plus pnpm
  • Git — global gitignore, code --wait as editor, and config/.gitconfig pulled in through include.path
  • Font — Fira Code

PHP is deliberately not managed here, PHP Monitor handles that.

Layout

PathPurpose
bootstrapprompts, then runs the installscript
installscriptprovisions the machine
shell/.zshrcthe only file symlinked into $HOME
shell/.exportsenvironment variables
shell/.aliasesaliases
shell/.functionsshell functions
shell/.global-gitignorereferenced by core.excludesfile
config/.gitconfiggit aliases and user, included from ~/.gitconfig

Machine local settings

shell/.zshrc also sources the following files when they exist. They are not part of this repository, so anything machine specific or secret belongs there:

~/.dotfiles-custom/shell/.exports
~/.dotfiles-custom/shell/.aliases
~/.dotfiles-custom/shell/.functions
~/.dotfiles-custom/shell/.zshrc

A few of the commands

CommandDoes
z <fragment>jump to a directory you have visited before
zipick one interactively through fzf
browseopen the current repository's remote in the browser
krakenopen the current directory in GitKraken
mkd <dir>create a directory and enter it
wholisten <port>show what is listening on a port
digga <host>readable dig output
set_vscode_colorstint VS Code by project type (Laravel, Nuxt, ProcessWire)

Feel free to create an issue on this repo if you have any questions about them.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' GitHub - kylewalow/dotfiles · GitHub
Skip to content

Latest commit

History

86 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

My personal dotfiles

A plain zsh setup for macOS — no framework, no prompt engine — plus a short script that provisions a fresh Mac.

Installation

Clone the repository as .dotfiles in your home directory and run the bootstrap script:

git clone git@github.com:kylewalow/dotfiles.git ~/.dotfiles
cd~/.dotfiles
./bootstrap

bootstrap asks for confirmation, takes your sudo password upfront and then sources installscript. Running it again is safe: every step either skips or updates what is already there.

What it sets up

  • Homebrew — installed when missing, otherwise just put on PATH
  • zsh — made the login shell if it isn't already, and ~/.zshrc is symlinked to shell/.zshrc
  • Pluginszsh-autosuggestions from Homebrew, zsh-artisan cloned to ~/.zsh
  • CLI toolszoxide, fzf, ripgrep, wget
  • Databasesmysql and redis, both started as background services that come back after a reboot (brew services stop mysql to undo)
  • Nodenvm with the current LTS as default, plus pnpm
  • Git — global gitignore, code --wait as editor, and config/.gitconfig pulled in through include.path
  • Font — Fira Code

PHP is deliberately not managed here, PHP Monitor handles that.

Layout

PathPurpose
bootstrapprompts, then runs the installscript
installscriptprovisions the machine
shell/.zshrcthe only file symlinked into $HOME
shell/.exportsenvironment variables
shell/.aliasesaliases
shell/.functionsshell functions
shell/.global-gitignorereferenced by core.excludesfile
config/.gitconfiggit aliases and user, included from ~/.gitconfig

Machine local settings

shell/.zshrc also sources the following files when they exist. They are not part of this repository, so anything machine specific or secret belongs there:

~/.dotfiles-custom/shell/.exports
~/.dotfiles-custom/shell/.aliases
~/.dotfiles-custom/shell/.functions
~/.dotfiles-custom/shell/.zshrc

A few of the commands

CommandDoes
z <fragment>jump to a directory you have visited before
zipick one interactively through fzf
browseopen the current repository's remote in the browser
krakenopen the current directory in GitKraken
mkd <dir>create a directory and enter it
wholisten <port>show what is listening on a port
digga <host>readable dig output
set_vscode_colorstint VS Code by project type (Laravel, Nuxt, ProcessWire)

Feel free to create an issue on this repo if you have any questions about them.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - kylewalow/dotfiles · GitHub
Skip to content

Latest commit

History

86 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

My personal dotfiles

A plain zsh setup for macOS — no framework, no prompt engine — plus a short script that provisions a fresh Mac.

Installation

Clone the repository as .dotfiles in your home directory and run the bootstrap script:

git clone git@github.com:kylewalow/dotfiles.git ~/.dotfiles
cd~/.dotfiles
./bootstrap

bootstrap asks for confirmation, takes your sudo password upfront and then sources installscript. Running it again is safe: every step either skips or updates what is already there.

What it sets up

  • Homebrew — installed when missing, otherwise just put on PATH
  • zsh — made the login shell if it isn't already, and ~/.zshrc is symlinked to shell/.zshrc
  • Pluginszsh-autosuggestions from Homebrew, zsh-artisan cloned to ~/.zsh
  • CLI toolszoxide, fzf, ripgrep, wget
  • Databasesmysql and redis, both started as background services that come back after a reboot (brew services stop mysql to undo)
  • Nodenvm with the current LTS as default, plus pnpm
  • Git — global gitignore, code --wait as editor, and config/.gitconfig pulled in through include.path
  • Font — Fira Code

PHP is deliberately not managed here, PHP Monitor handles that.

Layout

PathPurpose
bootstrapprompts, then runs the installscript
installscriptprovisions the machine
shell/.zshrcthe only file symlinked into $HOME
shell/.exportsenvironment variables
shell/.aliasesaliases
shell/.functionsshell functions
shell/.global-gitignorereferenced by core.excludesfile
config/.gitconfiggit aliases and user, included from ~/.gitconfig

Machine local settings

shell/.zshrc also sources the following files when they exist. They are not part of this repository, so anything machine specific or secret belongs there:

~/.dotfiles-custom/shell/.exports
~/.dotfiles-custom/shell/.aliases
~/.dotfiles-custom/shell/.functions
~/.dotfiles-custom/shell/.zshrc

A few of the commands

CommandDoes
z <fragment>jump to a directory you have visited before
zipick one interactively through fzf
browseopen the current repository's remote in the browser
krakenopen the current directory in GitKraken
mkd <dir>create a directory and enter it
wholisten <port>show what is listening on a port
digga <host>readable dig output
set_vscode_colorstint VS Code by project type (Laravel, Nuxt, ProcessWire)

Feel free to create an issue on this repo if you have any questions about them.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - kylewalow/dotfiles · GitHub
Skip to content

Latest commit

History

86 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

My personal dotfiles

A plain zsh setup for macOS — no framework, no prompt engine — plus a short script that provisions a fresh Mac.

Installation

Clone the repository as .dotfiles in your home directory and run the bootstrap script:

git clone git@github.com:kylewalow/dotfiles.git ~/.dotfiles
cd~/.dotfiles
./bootstrap

bootstrap asks for confirmation, takes your sudo password upfront and then sources installscript. Running it again is safe: every step either skips or updates what is already there.

What it sets up

  • Homebrew — installed when missing, otherwise just put on PATH
  • zsh — made the login shell if it isn't already, and ~/.zshrc is symlinked to shell/.zshrc
  • Pluginszsh-autosuggestions from Homebrew, zsh-artisan cloned to ~/.zsh
  • CLI toolszoxide, fzf, ripgrep, wget
  • Databasesmysql and redis, both started as background services that come back after a reboot (brew services stop mysql to undo)
  • Nodenvm with the current LTS as default, plus pnpm
  • Git — global gitignore, code --wait as editor, and config/.gitconfig pulled in through include.path
  • Font — Fira Code

PHP is deliberately not managed here, PHP Monitor handles that.

Layout

PathPurpose
bootstrapprompts, then runs the installscript
installscriptprovisions the machine
shell/.zshrcthe only file symlinked into $HOME
shell/.exportsenvironment variables
shell/.aliasesaliases
shell/.functionsshell functions
shell/.global-gitignorereferenced by core.excludesfile
config/.gitconfiggit aliases and user, included from ~/.gitconfig

Machine local settings

shell/.zshrc also sources the following files when they exist. They are not part of this repository, so anything machine specific or secret belongs there:

~/.dotfiles-custom/shell/.exports
~/.dotfiles-custom/shell/.aliases
~/.dotfiles-custom/shell/.functions
~/.dotfiles-custom/shell/.zshrc

A few of the commands

CommandDoes
z <fragment>jump to a directory you have visited before
zipick one interactively through fzf
browseopen the current repository's remote in the browser
krakenopen the current directory in GitKraken
mkd <dir>create a directory and enter it
wholisten <port>show what is listening on a port
digga <host>readable dig output
set_vscode_colorstint VS Code by project type (Laravel, Nuxt, ProcessWire)

Feel free to create an issue on this repo if you have any questions about them.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); GitHub - kylewalow/dotfiles · GitHub
Skip to content

Latest commit

History

86 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

My personal dotfiles

A plain zsh setup for macOS — no framework, no prompt engine — plus a short script that provisions a fresh Mac.

Installation

Clone the repository as .dotfiles in your home directory and run the bootstrap script:

git clone git@github.com:kylewalow/dotfiles.git ~/.dotfiles
cd~/.dotfiles
./bootstrap

bootstrap asks for confirmation, takes your sudo password upfront and then sources installscript. Running it again is safe: every step either skips or updates what is already there.

What it sets up

  • Homebrew — installed when missing, otherwise just put on PATH
  • zsh — made the login shell if it isn't already, and ~/.zshrc is symlinked to shell/.zshrc
  • Pluginszsh-autosuggestions from Homebrew, zsh-artisan cloned to ~/.zsh
  • CLI toolszoxide, fzf, ripgrep, wget
  • Databasesmysql and redis, both started as background services that come back after a reboot (brew services stop mysql to undo)
  • Nodenvm with the current LTS as default, plus pnpm
  • Git — global gitignore, code --wait as editor, and config/.gitconfig pulled in through include.path
  • Font — Fira Code

PHP is deliberately not managed here, PHP Monitor handles that.

Layout

PathPurpose
bootstrapprompts, then runs the installscript
installscriptprovisions the machine
shell/.zshrcthe only file symlinked into $HOME
shell/.exportsenvironment variables
shell/.aliasesaliases
shell/.functionsshell functions
shell/.global-gitignorereferenced by core.excludesfile
config/.gitconfiggit aliases and user, included from ~/.gitconfig

Machine local settings

shell/.zshrc also sources the following files when they exist. They are not part of this repository, so anything machine specific or secret belongs there:

~/.dotfiles-custom/shell/.exports
~/.dotfiles-custom/shell/.aliases
~/.dotfiles-custom/shell/.functions
~/.dotfiles-custom/shell/.zshrc

A few of the commands

CommandDoes
z <fragment>jump to a directory you have visited before
zipick one interactively through fzf
browseopen the current repository's remote in the browser
krakenopen the current directory in GitKraken
mkd <dir>create a directory and enter it
wholisten <port>show what is listening on a port
digga <host>readable dig output
set_vscode_colorstint VS Code by project type (Laravel, Nuxt, ProcessWire)

Feel free to create an issue on this repo if you have any questions about them.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages