first commit

This commit is contained in:
Jeremie Fraeys 2023-11-22 14:43:31 -05:00
commit 99121fba59
66 changed files with 3571 additions and 0 deletions

6
.gitmodules vendored Normal file
View file

@ -0,0 +1,6 @@
[submodule "nvim/.config/nvim"]
path = nvim/.config/nvim
url = https://github.com/jfraeys/kickstart.nvim.git
[submodule "oh-my-zsh/.oh-my-zsh"]
path = oh-my-zsh/.oh-my-zsh
url = https://github.com/jfraeys/oh-my-zsh.git

1
bash/.bash_profile Normal file
View file

@ -0,0 +1 @@

1
bash/.bashrc Normal file
View file

@ -0,0 +1 @@
[ -f ~/.fzf.bash ] && source ~/.fzf.bash

View file

@ -0,0 +1 @@
test -x ~/.local/bin/fig; and eval (~/.local/bin/fig init fish pre --rcfile 00_fig_pre | string split0)

View file

@ -0,0 +1 @@
test -x ~/.local/bin/fig; and eval (~/.local/bin/fig init fish post --rcfile 99_fig_post | string split0)

13
fzf/.fzf.bash Normal file
View file

@ -0,0 +1,13 @@
# Setup fzf
# ---------
if [[ ! "$PATH" == */usr/local/opt/fzf/bin* ]]; then
PATH="${PATH:+${PATH}:}/usr/local/opt/fzf/bin"
fi
# Auto-completion
# ---------------
source "/usr/local/opt/fzf/shell/completion.bash"
# Key bindings
# ------------
source "/usr/local/opt/fzf/shell/key-bindings.bash"

13
fzf/.fzf.zsh Normal file
View file

@ -0,0 +1,13 @@
# Setup fzf
# ---------
if [[ ! "$PATH" == */usr/local/opt/fzf/bin* ]]; then
PATH="${PATH:+${PATH}:}/usr/local/opt/fzf/bin"
fi
# Auto-completion
# ---------------
[[ $- == *i* ]] && source "/usr/local/opt/fzf/shell/completion.zsh" 2> /dev/null
# Key bindings
# ------------
source "/usr/local/opt/fzf/shell/key-bindings.zsh"

9
git/.gitconfig Normal file
View file

@ -0,0 +1,9 @@
# This is Git's per-user configuration file.
[user]
# Please adapt and uncomment the following lines:
name = Jeremie Fraeys
email = jfraeys@jeremie-MacBook-Pro.local
[credential]
helper = store
[credentials]
helper = osxkeychain

View file

@ -0,0 +1 @@
/Users/jeremiefraeys/Library/Application Support/iTerm2

Binary file not shown.

Binary file not shown.

View file

@ -0,0 +1,11 @@
This is the IPython startup directory
.py and .ipy files in this directory will be run *prior* to any code or files specified
via the exec_lines or exec_files configurables whenever you load this profile.
Files will be run in lexicographical order, so you can control the execution order of files
with a prefix, e.g.::
00-first.py
50-middle.py
99-last.ipy

BIN
jupyter/.jupyter/.DS_Store vendored Normal file

Binary file not shown.

View file

@ -0,0 +1,9 @@
{
"NotebookApp": {
"nbserver_extensions": {
"jupyter_nbextensions_configurator": true,
"jupyter_tabnine": true
},
"password": "sha1:f08d55af498a:cbb25beed3173aac1f32ad52ad1ee9c85383b2fc"
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,11 @@
{
"toolbar": [
{
"name": "spacer",
"command": "",
"disabled": false,
"type": "spacer",
"rank": 50
}
]
}

View file

@ -0,0 +1,10 @@
{
// Notifications
// @jupyterlab/apputils-extension:notification
// Notifications settings.
// *******************************************
// Fetch official Jupyter news
// Whether to fetch news from Jupyter news feed. If `true`, it will make a request to a website.
"fetchNews": "false"
}

View file

@ -0,0 +1,10 @@
{
// Theme
// @jupyterlab/apputils-extension:themes
// Theme manager settings.
// *************************************
// Selected Theme
// Application-level visual styling theme
"theme": "JupyterLab Dark"
}

View file

@ -0,0 +1,41 @@
{
"toolbar": [
{
"name": "duplicate-cell",
"command": "notebook:duplicate-below",
"disabled": false,
"rank": 50
},
{
"name": "move-cell-up",
"command": "notebook:move-cell-up",
"disabled": false,
"rank": 50
},
{
"name": "move-cell-down",
"command": "notebook:move-cell-down",
"disabled": false,
"rank": 50
},
{
"name": "insert-cell-above",
"command": "notebook:insert-cell-above",
"disabled": false,
"rank": 50
},
{
"name": "insert-cell-below",
"command": "notebook:insert-cell-below",
"disabled": false,
"rank": 50
},
{
"name": "delete-cell",
"command": "notebook:delete-cell",
"disabled": false,
"icon": "ui-components:delete",
"rank": 50
}
]
}

View file

@ -0,0 +1,9 @@
{
"providerTimeout": 1000,
"showDocumentationPanel": false,
"autoCompletion": false,
"availableProviders": {
"CompletionProvider:context": 500,
"CompletionProvider:kernel": 550
}
}

View file

@ -0,0 +1,14 @@
{
// Code Console
// @jupyterlab/console-extension:tracker
// Code Console settings.
// *************************************
// Prompt Cell Configuration
// The configuration for all prompt cells; it will override the CodeMirror default configuration.
"promptCellConfig": {
"codeFolding": false,
"lineNumbers": false,
"autoClosingBrackets": false
}
}

View file

@ -0,0 +1,10 @@
{
"toolbar": [
{
"name": "delimiter",
"command": "",
"disabled": false,
"rank": 10
}
]
}

View file

@ -0,0 +1,10 @@
{
"toolbar": [
{
"name": "delimiter",
"command": "",
"disabled": false,
"rank": 10
}
]
}

View file

@ -0,0 +1,10 @@
{
// Extension Manager
// @jupyterlab/extensionmanager-extension:plugin
// Extension manager settings.
// *********************************************
// Disclaimed Status
// Whether the user agrees the access to external web services and understands extensions may introduce security risks or contain malicious code that runs on his machine.
"disclaimed": true
}

View file

@ -0,0 +1,34 @@
{
"toolbar": [
{
"name": "new-launcher",
"command": "launcher:create",
"disabled": false,
"rank": 1
},
{
"name": "new-directory",
"command": "filebrowser:create-new-directory",
"disabled": false,
"rank": 10
},
{
"name": "uploader",
"command": "",
"disabled": false,
"rank": 20
},
{
"name": "refresh",
"command": "filebrowser:refresh",
"disabled": false,
"rank": 30
},
{
"name": "fileNameSearcher",
"command": "",
"disabled": false,
"rank": 40
}
]
}

View file

@ -0,0 +1,16 @@
{
// Text Editor
// @jupyterlab/fileeditor-extension:plugin
// Text editor settings.
// ***************************************
// Editor Configuration
// The configuration for all text editors; it will override the CodeMirror default configuration.
// If `fontFamily`, `fontSize` or `lineHeight` are `null`,
// values from current theme are used.
"editorConfig": {
"lineNumbers": true,
"autoClosingBrackets": false,
"theme": "jupyter"
}
}

View file

@ -0,0 +1,17 @@
{
"toolbar": [
{
"name": "refresh",
"command": "",
"disabled": false,
"rank": 10
},
{
"name": "trust",
"command": "",
"disabled": false,
"rank": 20
}
],
"trustByDefault": false
}

View file

@ -0,0 +1,90 @@
{
"toolbar": [
{
"name": "save",
"command": "",
"disabled": false,
"rank": 10
},
{
"name": "insert",
"command": "notebook:insert-cell-below",
"disabled": false,
"icon": "ui-components:add",
"rank": 20
},
{
"name": "cut",
"command": "notebook:cut-cell",
"disabled": false,
"rank": 21
},
{
"name": "copy",
"command": "notebook:copy-cell",
"disabled": false,
"rank": 22
},
{
"name": "paste",
"command": "notebook:paste-cell-below",
"disabled": false,
"rank": 23
},
{
"name": "run",
"command": "notebook:run-cell-and-select-next",
"disabled": false,
"rank": 30
},
{
"name": "interrupt",
"command": "notebook:interrupt-kernel",
"disabled": false,
"rank": 31
},
{
"name": "restart",
"command": "notebook:restart-kernel",
"disabled": false,
"rank": 32
},
{
"name": "restart-and-run",
"command": "notebook:restart-run-all",
"disabled": false,
"rank": 33
},
{
"name": "cellType",
"command": "",
"disabled": false,
"rank": 40
},
{
"name": "spacer",
"command": "",
"disabled": false,
"type": "spacer",
"rank": 100
},
{
"name": "interfaceSwitcher",
"command": "",
"disabled": false,
"rank": 990
},
{
"name": "kernelName",
"command": "",
"disabled": false,
"rank": 1000
},
{
"name": "executionProgress",
"command": "",
"disabled": false,
"rank": 1002
}
]
}

View file

@ -0,0 +1,100 @@
{
// Notebook
// @jupyterlab/notebook-extension:tracker
// Notebook settings.
// **************************************
// Automatically Start Preferred Kernel
// Whether to automatically start the preferred kernel.
"autoStartDefaultKernel": true,
// Code Cell Configuration
// The configuration for all code cells; it will override the CodeMirror default configuration.
"codeCellConfig": {
"lineNumbers": false,
"lineWrap": false
},
// Default cell type
// The default type (markdown, code, or raw) for new cells
"defaultCell": "code",
// Enable undo/redo actions at the notebook document level.
// Enables the undo/redo actions at the notebook document level; aka undoing within a cell may undo the latest notebook change that happen in another cell. This is deprecated and will be removed in 5.0.0.
"documentWideUndoRedo": false,
// Input History Scope
// Whether the line history for standard input (e.g. the ipdb prompt) should kept separately for different kernel sessions (`session`) or combined (`global`).
"inputHistoryScope": "global",
// Shut down kernel
// Whether to shut down or not the kernel when closing a notebook.
"kernelShutdown": false,
// Kernel status icon configuration
// Defines the position and components of execution progress indicator.
"kernelStatus": {
"showOnStatusBar": false,
"showProgress": true
},
// Markdown Cell Configuration
// The configuration for all markdown cells; it will override the CodeMirror default configuration.
"markdownCellConfig": {
"lineNumbers": false,
"matchBrackets": false,
"autoClosingBrackets": false
},
// The maximum number of output cells to be rendered in the output area.
// Defines the maximum number of output cells to be rendered in the output area for cells with many outputs. The output area will have a head and the remaining outputs will be trimmed and not displayed unless the user clicks on the information message. Set to 0 to have the complete display.
"maxNumberOutputs": 50,
// Number of cells to render outside de the viewport
// In 'full' windowing mode, this is the number of cells above and below the viewport.
"overscanCount": 1,
// Raw Cell Configuration
// The configuration for all raw cells; it will override the CodeMirror default configuration.
"rawCellConfig": {
"lineNumbers": false,
"matchBrackets": false,
"autoClosingBrackets": false
},
// Recording timing
// Should timing data be recorded in cell metadata
"recordTiming": false,
// Rendering Layout
// Global setting to define the rendering layout in notebooks. 'default' or 'side-by-side' are supported.
"renderingLayout": "default",
// Scroll past last cell
// Whether to be able to scroll so the last cell is at the top of the panel
"scrollPastEnd": true,
// Show editor for read-only Markdown cells
// Should an editor be shown for read-only markdown
"showEditorForReadOnlyMarkdown": true,
// Show hidden cells button if collapsed
// If set to true, a button is shown below collapsed headings, indicating how many cells are hidden beneath the collapsed heading.
"showHiddenCellsButton": true,
// Side-by-side left margin override
// Side-by-side left margin override.
"sideBySideLeftMarginOverride": "10px",
// Side-by-side output ratio
// For the side-by-side rendering, the side-by-side output ratio defines the width of the output vs the input. Set 1 for same size, > 1 for larger output, < 1 for smaller output.
"sideBySideOutputRatio": 1,
// Side-by-side right margin override
// Side-by-side right margin override.
"sideBySideRightMarginOverride": "10px",
// Windowing mode
// 'defer': Improve loading time - Wait for idle CPU cycles to attach out of viewport cells - 'full': Best performance with side effects - Attach to the DOM only cells in viewport - 'none': Worst performance without side effects - Attach all cells to the viewport
"windowingMode": "defer"
}

View file

@ -0,0 +1,983 @@
{
"shortcuts": [
{
"command": "application:activate-next-tab",
"keys": [
"Ctrl Shift ]"
],
"selector": "body",
"args": {}
},
{
"command": "application:activate-next-tab-bar",
"keys": [
"Ctrl Shift ."
],
"selector": "body",
"args": {}
},
{
"command": "application:activate-previous-tab",
"keys": [
"Ctrl Shift ["
],
"selector": "body",
"args": {}
},
{
"command": "application:activate-previous-tab-bar",
"keys": [
"Ctrl Shift ,"
],
"selector": "body",
"args": {}
},
{
"command": "application:close",
"keys": [
"Alt W"
],
"selector": ".jp-Activity",
"args": {}
},
{
"command": "application:toggle-left-area",
"keys": [
"Accel B"
],
"selector": "body",
"args": {}
},
{
"command": "application:toggle-mode",
"keys": [
"Accel Shift D"
],
"selector": "body",
"args": {}
},
{
"command": "apputils:activate-command-palette",
"keys": [
"Accel Shift C"
],
"selector": "body",
"args": {}
},
{
"command": "apputils:display-shortcuts",
"keys": [
"Accel Shift H"
],
"selector": "body",
"args": {}
},
{
"command": "apputils:print",
"keys": [
"Accel P"
],
"selector": "body",
"args": {}
},
{
"command": "completer:invoke-console",
"keys": [
"Tab"
],
"selector": ".jp-CodeConsole-promptCell .jp-mod-completer-enabled",
"args": {}
},
{
"command": "completer:invoke-file",
"keys": [
"Tab"
],
"selector": ".jp-FileEditor .jp-mod-completer-enabled",
"args": {}
},
{
"command": "completer:invoke-notebook",
"keys": [
"Tab"
],
"selector": ".jp-Notebook.jp-mod-editMode .jp-mod-completer-enabled",
"args": {}
},
{
"command": "console:linebreak",
"keys": [
"Enter"
],
"selector": ".jp-CodeConsole[data-jp-interaction-mode='notebook'] .jp-CodeConsole-promptCell",
"args": {}
},
{
"command": "console:linebreak",
"keys": [
"Accel Enter"
],
"selector": ".jp-CodeConsole[data-jp-interaction-mode='terminal'] .jp-CodeConsole-promptCell",
"args": {}
},
{
"command": "console:run-forced",
"keys": [
"Shift Enter"
],
"selector": ".jp-CodeConsole[data-jp-interaction-mode='notebook'] .jp-CodeConsole-promptCell",
"args": {}
},
{
"command": "console:run-forced",
"keys": [
"Shift Enter"
],
"selector": ".jp-CodeConsole[data-jp-interaction-mode='terminal'] .jp-CodeConsole-promptCell",
"args": {}
},
{
"command": "console:run-unforced",
"keys": [
"Enter"
],
"selector": ".jp-CodeConsole[data-jp-interaction-mode='terminal'] .jp-CodeConsole-promptCell",
"args": {}
},
{
"command": "debugger:continue",
"keys": [
"F9"
],
"selector": "body",
"args": {}
},
{
"command": "debugger:next",
"keys": [
"F10"
],
"selector": "body",
"args": {}
},
{
"command": "debugger:show-panel",
"keys": [
"Accel Shift E"
],
"selector": "body",
"args": {}
},
{
"command": "debugger:stepIn",
"keys": [
"F11"
],
"selector": "body",
"args": {}
},
{
"command": "debugger:stepOut",
"keys": [
"Shift F11"
],
"selector": "body",
"args": {}
},
{
"command": "debugger:terminate",
"keys": [
"Shift F9"
],
"selector": "body",
"args": {}
},
{
"command": "docmanager:save",
"keys": [
"Accel S"
],
"selector": "body",
"args": {}
},
{
"command": "docmanager:save-as",
"keys": [
"Accel Shift S"
],
"selector": "body",
"args": {}
},
{
"command": "documentsearch:end",
"keys": [
"Escape"
],
"selector": ".jp-mod-searchable",
"args": {}
},
{
"command": "documentsearch:highlightNext",
"keys": [
"Accel G"
],
"selector": ".jp-mod-searchable",
"args": {}
},
{
"command": "documentsearch:highlightPrevious",
"keys": [
"Accel Shift G"
],
"selector": ".jp-mod-searchable",
"args": {}
},
{
"command": "documentsearch:start",
"keys": [
"Accel F"
],
"selector": ".jp-mod-searchable",
"args": {}
},
{
"command": "editmenu:redo",
"keys": [
"Accel Shift Z"
],
"selector": "[data-jp-undoer]",
"args": {}
},
{
"command": "editmenu:undo",
"keys": [
"Accel Z"
],
"selector": "[data-jp-undoer]",
"args": {}
},
{
"command": "extensionmanager:show-panel",
"keys": [
"Accel Shift X"
],
"selector": "body",
"args": {}
},
{
"command": "filebrowser:copy",
"keys": [
"Accel C"
],
"selector": ".jp-DirListing-content .jp-DirListing-itemText",
"args": {}
},
{
"command": "filebrowser:cut",
"keys": [
"Accel X"
],
"selector": ".jp-DirListing-content .jp-DirListing-itemText",
"args": {}
},
{
"command": "filebrowser:delete",
"keys": [
"Delete"
],
"selector": ".jp-DirListing-content .jp-DirListing-itemText",
"args": {}
},
{
"command": "filebrowser:duplicate",
"keys": [
"Accel D"
],
"selector": ".jp-DirListing-content .jp-DirListing-itemText",
"args": {}
},
{
"command": "filebrowser:go-up",
"keys": [
"Backspace"
],
"selector": ".jp-DirListing:focus",
"args": {}
},
{
"command": "filebrowser:go-up",
"keys": [
"Backspace"
],
"selector": ".jp-DirListing-content .jp-DirListing-itemText",
"args": {}
},
{
"command": "filebrowser:paste",
"keys": [
"Accel V"
],
"selector": ".jp-DirListing-content .jp-DirListing-itemText",
"args": {}
},
{
"command": "filebrowser:rename",
"keys": [
"F2"
],
"selector": ".jp-DirListing-content .jp-DirListing-itemText",
"args": {}
},
{
"command": "filebrowser:toggle-main",
"keys": [
"Accel Shift F"
],
"selector": "body",
"args": {}
},
{
"command": "filemenu:close-and-cleanup",
"keys": [
"Ctrl Shift Q"
],
"selector": ".jp-Activity",
"args": {}
},
{
"command": "imageviewer:flip-horizontal",
"keys": [
"H"
],
"selector": ".jp-ImageViewer",
"args": {}
},
{
"command": "imageviewer:flip-vertical",
"keys": [
"V"
],
"selector": ".jp-ImageViewer",
"args": {}
},
{
"command": "imageviewer:invert-colors",
"keys": [
"I"
],
"selector": ".jp-ImageViewer",
"args": {}
},
{
"command": "imageviewer:reset-image",
"keys": [
"0"
],
"selector": ".jp-ImageViewer",
"args": {}
},
{
"command": "imageviewer:rotate-clockwise",
"keys": [
"]"
],
"selector": ".jp-ImageViewer",
"args": {}
},
{
"command": "imageviewer:rotate-counterclockwise",
"keys": [
"["
],
"selector": ".jp-ImageViewer",
"args": {}
},
{
"command": "imageviewer:zoom-in",
"keys": [
"="
],
"selector": ".jp-ImageViewer",
"args": {}
},
{
"command": "imageviewer:zoom-out",
"keys": [
"-"
],
"selector": ".jp-ImageViewer",
"args": {}
},
{
"command": "inspector:close",
"keys": [
"Accel I"
],
"selector": "body[data-jp-inspector='open']",
"args": {}
},
{
"command": "inspector:open",
"keys": [
"Accel I"
],
"selector": "body",
"args": {}
},
{
"command": "kernelmenu:interrupt",
"keys": [
"I",
"I"
],
"selector": "[data-jp-kernel-user]:focus",
"args": {}
},
{
"command": "kernelmenu:restart",
"keys": [
"0",
"0"
],
"selector": "[data-jp-kernel-user]:focus",
"args": {}
},
{
"command": "launcher:create",
"keys": [
"Accel Shift L"
],
"selector": "body",
"args": {}
},
{
"command": "notebook:change-cell-to-code",
"keys": [
"Y"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:change-cell-to-heading-1",
"keys": [
"1"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:change-cell-to-heading-2",
"keys": [
"2"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:change-cell-to-heading-3",
"keys": [
"3"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:change-cell-to-heading-4",
"keys": [
"4"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:change-cell-to-heading-5",
"keys": [
"5"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:change-cell-to-heading-6",
"keys": [
"6"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:change-cell-to-markdown",
"keys": [
"M"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:change-cell-to-raw",
"keys": [
"R"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:collapse-all-headings",
"keys": [
"Ctrl Shift ArrowLeft"
],
"selector": ".jp-Notebook.jp-mod-commandMode",
"args": {}
},
{
"command": "notebook:copy-cell",
"keys": [
"C"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:cut-cell",
"keys": [
"X"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:delete-cell",
"keys": [
"D",
"D"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:enter-command-mode",
"keys": [
"Escape"
],
"selector": ".jp-Notebook.jp-mod-editMode",
"args": {}
},
{
"command": "notebook:enter-command-mode",
"keys": [
"Ctrl M"
],
"selector": ".jp-Notebook.jp-mod-editMode",
"args": {}
},
{
"command": "notebook:enter-edit-mode",
"keys": [
"Enter"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:expand-all-headings",
"keys": [
"Ctrl Shift ArrowRight"
],
"selector": ".jp-Notebook.jp-mod-commandMode",
"args": {}
},
{
"command": "notebook:extend-marked-cells-above",
"keys": [
"Shift ArrowUp"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:extend-marked-cells-above",
"keys": [
"Shift K"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:extend-marked-cells-below",
"keys": [
"Shift ArrowDown"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:extend-marked-cells-below",
"keys": [
"Shift J"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:extend-marked-cells-bottom",
"keys": [
"Shift End"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:extend-marked-cells-top",
"keys": [
"Shift Home"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:insert-cell-above",
"keys": [
"A"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:insert-cell-below",
"keys": [
"B"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:insert-heading-above",
"keys": [
"Shift A"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:insert-heading-below",
"keys": [
"Shift B"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:merge-cell-above",
"keys": [
"Ctrl Backspace"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:merge-cell-below",
"keys": [
"Ctrl Shift M"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:merge-cells",
"keys": [
"Shift M"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:move-cell-down",
"keys": [
"Ctrl Shift ArrowDown"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:move-cell-up",
"keys": [
"Ctrl Shift ArrowUp"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:move-cursor-down",
"keys": [
"ArrowDown"
],
"selector": "[data-jp-traversable]:focus",
"args": {}
},
{
"command": "notebook:move-cursor-down",
"keys": [
"J"
],
"selector": "[data-jp-traversable]:focus",
"args": {}
},
{
"command": "notebook:move-cursor-heading-above-or-collapse",
"keys": [
"ArrowLeft"
],
"selector": ".jp-Notebook:focus.jp-mod-commandMode",
"args": {}
},
{
"command": "notebook:move-cursor-heading-below-or-expand",
"keys": [
"ArrowRight"
],
"selector": ".jp-Notebook:focus.jp-mod-commandMode",
"args": {}
},
{
"command": "notebook:move-cursor-up",
"keys": [
"ArrowUp"
],
"selector": "[data-jp-traversable]:focus",
"args": {}
},
{
"command": "notebook:move-cursor-up",
"keys": [
"K"
],
"selector": "[data-jp-traversable]:focus",
"args": {}
},
{
"command": "notebook:paste-cell-below",
"keys": [
"V"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:redo-cell-action",
"keys": [
"Shift Z"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:run-cell",
"keys": [],
"macKeys": [
"Ctrl Enter"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:run-cell",
"keys": [],
"macKeys": [
"Ctrl Enter"
],
"selector": ".jp-Notebook.jp-mod-editMode",
"args": {}
},
{
"command": "notebook:run-cell",
"keys": [
"Accel Enter"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:run-cell",
"keys": [
"Accel Enter"
],
"selector": ".jp-Notebook.jp-mod-editMode",
"args": {}
},
{
"command": "notebook:run-cell-and-insert-below",
"keys": [
"Alt Enter"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:run-cell-and-insert-below",
"keys": [
"Alt Enter"
],
"selector": ".jp-Notebook.jp-mod-editMode",
"args": {}
},
{
"command": "notebook:run-cell-and-select-next",
"keys": [
"Shift Enter"
],
"selector": ".jp-Notebook.jp-mod-editMode",
"args": {}
},
{
"command": "notebook:select-all",
"keys": [
"Accel A"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:toggle-render-side-by-side-current",
"keys": [
"Shift R"
],
"macKeys": [
"Ctrl Enter"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "notebook:undo-cell-action",
"keys": [
"Z"
],
"macKeys": [
"Ctrl Enter"
],
"selector": ".jp-Notebook:focus",
"args": {}
},
{
"command": "property-inspector:show-panel",
"keys": [
"Accel Shift U"
],
"selector": "body",
"args": {}
},
{
"command": "runmenu:run",
"keys": [
"Shift Enter"
],
"selector": "[data-jp-code-runner]",
"args": {}
},
{
"command": "running:show-panel",
"keys": [
"Accel Shift B"
],
"selector": "body",
"args": {}
},
{
"command": "settingeditor:open",
"keys": [
"Accel ,"
],
"selector": "body",
"args": {}
},
{
"command": "settingeditor:save",
"keys": [
"Accel S"
],
"selector": ".jp-SettingEditor",
"args": {}
},
{
"command": "tabsmenu:activate-previously-used-tab",
"keys": [
"Accel Shift '"
],
"selector": "body",
"args": {}
},
{
"command": "toc:show-panel",
"keys": [
"Accel Shift K"
],
"selector": "body",
"args": {}
},
{
"command": "tooltip:dismiss",
"keys": [
"Escape"
],
"selector": "body.jp-mod-tooltip .jp-Notebook",
"args": {}
},
{
"command": "tooltip:dismiss",
"keys": [
"Escape"
],
"selector": "body.jp-mod-tooltip .jp-CodeConsole-promptCell",
"args": {}
},
{
"command": "tooltip:launch-console",
"keys": [
"Shift Tab"
],
"selector": ".jp-CodeConsole-promptCell .jp-InputArea-editor:not(.jp-mod-has-primary-selection):not(.jp-mod-in-leading-whitespace)",
"args": {}
},
{
"command": "tooltip:launch-file",
"keys": [
"Shift Tab"
],
"selector": ".jp-FileEditor .jp-CodeMirrorEditor:not(.jp-mod-has-primary-selection):not(.jp-mod-in-leading-whitespace)",
"args": {}
},
{
"command": "tooltip:launch-notebook",
"keys": [
"Shift Tab"
],
"selector": ".jp-Notebook.jp-mod-editMode .jp-InputArea-editor:not(.jp-mod-has-primary-selection):not(.jp-mod-in-leading-whitespace):not(.jp-mod-completer-active)",
"args": {}
},
{
"command": "viewmenu:line-numbering",
"keys": [
"Shift L"
],
"selector": ".jp-Notebook.jp-mod-commandMode",
"args": {}
},
{
"command": "notebook:split-cell-at-cursor",
"keys": [
"Ctrl Shift -"
],
"selector": ".jp-Notebook.jp-mod-editMode",
"args": {}
},
{
"command": "notebook:toggle-all-cell-line-numbers",
"keys": [
"Shift L"
],
"selector": ".jp-Notebook:focus",
"args": {}
}
]
}

View file

@ -0,0 +1,8 @@
{
// Terminal
// @jupyterlab/terminal-extension:plugin
// Terminal settings.
// *************************************
}

View file

@ -0,0 +1 @@
{"data":{"layout-restorer:data":{"main":{"dock":{"type":"tab-area","currentIndex":3,"widgets":["notebook:notebooks/figures_tf_idf_years.ipynb","notebook:notebooks/tf_idf_programs.ipynb","notebook:notebooks/tf_idf_timeline.ipynb"]},"current":"notebook:notebooks/tf_idf_timeline.ipynb"},"down":{"size":0,"widgets":[]},"left":{"collapsed":false,"visible":true,"current":"filebrowser","widgets":["filebrowser","running-sessions","@jupyterlab/toc:plugin","extensionmanager.main-view"]},"right":{"collapsed":true,"visible":true,"widgets":["jp-property-inspector","debugger-sidebar"]},"relativeSizes":[0.07622228970543578,0.9237777102945642,0],"top":{"simpleVisibility":true}},"file-browser-filebrowser:cwd":{"path":"notebooks"},"notebook:notebooks/figures_tf_idf_years.ipynb":{"data":{"path":"notebooks/figures_tf_idf_years.ipynb","factory":"Notebook"}},"notebook:notebooks/tf_idf_programs.ipynb":{"data":{"path":"notebooks/tf_idf_programs.ipynb","factory":"Notebook"}},"notebook:notebooks/tf_idf_timeline.ipynb":{"data":{"path":"notebooks/tf_idf_timeline.ipynb","factory":"Notebook"}}},"metadata":{"id":"auto-9"}}

View file

@ -0,0 +1 @@
{"data":{"layout-restorer:data":{"main":{"dock":{"type":"tab-area","currentIndex":1,"widgets":["notebook:notebooks/tf_idf_programs.ipynb"]},"current":"notebook:notebooks/tf_idf_programs.ipynb"},"down":{"size":0,"widgets":[]},"left":{"collapsed":false,"visible":true,"current":"extensionmanager.main-view","widgets":["filebrowser","running-sessions","@jupyterlab/toc:plugin","extensionmanager.main-view"]},"right":{"collapsed":true,"visible":true,"widgets":["jp-property-inspector","debugger-sidebar"]},"relativeSizes":[0.07622228970543578,0.9237777102945642,0],"top":{"simpleVisibility":true}},"file-browser-filebrowser:cwd":{"path":"notebooks"},"notebook:notebooks/tf_idf_programs.ipynb":{"data":{"path":"notebooks/tf_idf_programs.ipynb","factory":"Notebook"}}},"metadata":{"id":"auto-q"}}

View file

@ -0,0 +1 @@
{"data":{"layout-restorer:data":{"main":{"dock":{"type":"tab-area","currentIndex":0,"widgets":["notebook:notebooks/figures_tf_idf_years.ipynb"]},"current":"notebook:notebooks/figures_tf_idf_years.ipynb"},"down":{"size":0,"widgets":[]},"left":{"collapsed":false,"visible":true,"current":"filebrowser","widgets":["filebrowser","running-sessions","@jupyterlab/toc:plugin","extensionmanager.main-view"]},"right":{"collapsed":true,"visible":true,"widgets":["jp-property-inspector","debugger-sidebar"]},"relativeSizes":[0.15561066336019838,0.8443893366398016,0],"top":{"simpleVisibility":true}},"file-browser-filebrowser:cwd":{"path":"notebooks"},"notebook:notebooks/figures_tf_idf_years.ipynb":{"data":{"path":"notebooks/figures_tf_idf_years.ipynb","factory":"Notebook"}}},"metadata":{"id":"auto-V"}}

View file

@ -0,0 +1 @@
{"data":{"layout-restorer:data":{"main":{"dock":{"type":"tab-area","currentIndex":0,"widgets":["notebook:notebooks/figures_tf_idf_years.ipynb"]},"current":"notebook:notebooks/figures_tf_idf_years.ipynb"},"down":{"size":0,"widgets":[]},"left":{"collapsed":false,"visible":true,"current":"filebrowser","widgets":["filebrowser","running-sessions","@jupyterlab/toc:plugin","extensionmanager.main-view"]},"right":{"collapsed":false,"visible":true,"current":"debugger-sidebar","widgets":["jp-property-inspector","debugger-sidebar"]},"relativeSizes":[0.07624544349939247,0.8475091130012151,0.07624544349939247],"top":{"simpleVisibility":true}},"file-browser-filebrowser:cwd":{"path":"notebooks"},"notebook:notebooks/figures_tf_idf_years.ipynb":{"data":{"path":"notebooks/figures_tf_idf_years.ipynb","factory":"Notebook"}}},"metadata":{"id":"auto-W"}}

View file

@ -0,0 +1 @@
{"data":{"layout-restorer:data":{"main":{"dock":{"type":"tab-area","currentIndex":1,"widgets":["notebook:notebooks/exploration_coop_postings.ipynb","notebook:notebooks/figures_tf_idf_years.ipynb"]},"current":"notebook:notebooks/figures_tf_idf_years.ipynb"},"down":{"size":0,"widgets":[]},"left":{"collapsed":false,"visible":true,"current":"extensionmanager.main-view","widgets":["filebrowser","running-sessions","@jupyterlab/toc:plugin","extensionmanager.main-view"]},"right":{"collapsed":true,"visible":true,"widgets":["jp-property-inspector","debugger-sidebar"]},"relativeSizes":[0.15561066336019838,0.8443893366398016,0],"top":{"simpleVisibility":true}},"file-browser-filebrowser:cwd":{"path":"notebooks"},"notebook:notebooks/exploration_coop_postings.ipynb":{"data":{"path":"notebooks/exploration_coop_postings.ipynb","factory":"Notebook"}},"notebook:notebooks/figures_tf_idf_years.ipynb":{"data":{"path":"notebooks/figures_tf_idf_years.ipynb","factory":"Notebook"}}},"metadata":{"id":"default"}}

View file

@ -0,0 +1 @@
{"data":{"layout-restorer:data":{"main":{"dock":{"type":"tab-area","currentIndex":0,"widgets":["notebook:Untitled.ipynb"]},"mode":"multiple-document","current":"notebook:Untitled.ipynb"},"left":{"collapsed":false,"current":"running-sessions","widgets":["filebrowser","running-sessions","command-palette","tab-manager"]},"right":{"collapsed":true,"widgets":[]}},"notebook:Untitled.ipynb":{"data":{"path":"Untitled.ipynb","factory":"Notebook"}}},"metadata":{"id":"/lab"}}

View file

@ -0,0 +1 @@
2019-06-19T05:20:03.181486

View file

@ -0,0 +1,8 @@
{
"load_extensions": {
"nbextensions_configurator/config_menu/main": true,
"hinterland/hinterland": true,
"jupyter_tabnine/main": true,
"jupyter-js-widgets/extension": true
}
}

View file

@ -0,0 +1,5 @@
{
"load_extensions": {
"nbextensions_configurator/tree_tab/main": true
}
}

View file

@ -0,0 +1,5 @@
{
"0fb1f2828eeeae418602193a4d04d5ccd121dc74": {
"seen": true
}
}

1
nvim/.config/nvim Submodule

@ -0,0 +1 @@
Subproject commit 6b3424c590adf65db5ac8138a073394cf3c66fa9

View file

@ -0,0 +1 @@
4

View file

@ -0,0 +1 @@
1045224

View file

@ -0,0 +1 @@
*open3_setpgrp = \&open3_setpgrp_external

View file

82
skhd/.config/skhd/skhdrc Normal file
View file

@ -0,0 +1,82 @@
# change window focus within space
shift + cmd - j : yabai -m window --focus south
shift + cmd - k : yabai -m window --focus north
shift + cmd - h : yabai -m window --focus west
shift + cmd - l : yabai -m window --focus east
# change space #
shift + cmd - 1 : yabai -m space --display 1
shift + cmd - 2 : yabai -m space --display 2
shift + cmd - 3 : yabai -m space --display 3
shift + cmd - 4 : yabai -m space --display 4
shift + cmd - 5 : yabai -m space --display 5
shift + cmd - 6 : yabai -m space --display 6
shift + cmd - 7 : yabai -m space --display 7
#change focus between external displays (left and right)
cmd - s: yabai -m display --focus west
cmd - g: yabai -m display --focus east
# rotate layout clockwise
shift + alt - r : yabai -m space --rotate 270
# flip along y-axis
shift + alt - y : yabai -m space --mirror y-axis
# flip along x-axis
shift + alt - x : yabai -m space --mirror x-axis
# toggle window float
shift + alt - t : yabai -m window --toggle float --grid 4:4:1:1:2:2
# maximize a window
shift + alt - m : yabai -m window --toggle zoom-fullscreeni
# toggle whether the focused window should be shown on all spaces
shift + alt - a : yabai -m window --toggle sticky
# balance out tree of windows (resize to occupy same area)
shift + alt - e : yabai -m space --balance
# swap windows
shift + alt - j : yabai -m window --swap south
shift + alt - k : yabai -m window --swap north
shift + alt - h : yabai -m window --swap west
shift + alt - l : yabai -m window --swap east
# move window and split
ctrl + alt - j : yabai -m window --warp south
ctrl + alt - k : yabai -m window --warp north
ctrl + alt - h : yabai -m window --warp west
ctrl + alt - l : yabai -m window --warp east
# move window to display left and right
shift + alt - s : yabai -m window --display west; yabai -m display --focus west;
shift + alt - g : yabai -m window --display east; yabai -m display --focus east;
#move window to prev and next space
shift + alt - p : yabai -m window --space prev;
shift + alt - n : yabai -m window --space next;
# move window to space #
shift + alt - 1 : yabai -m window --space 1;
shift + alt - 2 : yabai -m window --space 2;
shift + alt - 3 : yabai -m window --space 3;
shift + alt - 4 : yabai -m window --space 4;
shift + alt - 5 : yabai -m window --space 5;
shift + alt - 6 : yabai -m window --space 6;
shift + alt - 7 : yabai -m window --space 7;
# open apps
ctrl + cmd - 1 : open -a VSCodium.app
ctrl + cmd - 2 : open -a Brave\ Browser.app
ctrl + cmd - 3 : open -n /Applications/Brave\ Browser.app
ctrl + cmd - 4 : open -a Mail.app
ctrl + cmd - 5 : open -a Authy\ Desktop.app
ctrl + cmd - 6 : open -a Bitwarden.app
ctrl + cmd - 0 : open -a iTerm.app
# stop/start/restart yabai
ctrl + alt - q : brew services stop yabai
ctrl + alt - s : brew services start yabai
ctrl + alt - r : brew services restart yabai

Binary file not shown.

View file

@ -0,0 +1,10 @@
e2e405bd-eb7e-d5ce-adef-456d673463a5
This signature is a randomly generated UUID used to de-duplicate
alerts and version information. This signature is random, it is
not based on any personally identifiable information. To create
a new signature, you can simply delete this file at any time.
See the documentation for the software using Checkpoint for more
information on how to disable it.

204
tmux/.tmux.conf Normal file
View file

@ -0,0 +1,204 @@
# Default shell
set -g default-shell /bin/zsh
set-option -g prefix C-a
# Reload config
bind r source-file ~/.tmux.conf; display-message "Config Reloaded."
# unbind-key “x” from its current job of “ask and then close”
unbind-key x
# rebind-key it to just “close”
bind-key x kill-pane
# unbind-key “x” from its current job of “ask and then close”
bind-key X kill-session
set-option -g detach-on-destroy off
# Session management
bind S command-prompt -p "New Session:" "new-session -A -s '%%' -c ~"
# List sessions
bind s switch-client -nn
# Popup session selector
bind C-j display-popup -E "tmux list-sessions | sed -E 's/:.*$//' | grep -v \"^$(tmux display-message -p '#S')\$\" | fzf --reverse | xargs tmux switch-client -t"
# Popup window selector with previous window first
bind w display-popup -E "tmux list-windows -F '#{window_index} #{window_name} (#{session_name})' | grep -v \"^$(tmux display-message -p '#I')\" | fzf --reverse | cut -d' ' -f1 | xargs -I{} tmux select-window -t {}"
# Use choose-tree for interactive session and window navigation
bind-key W choose-tree -Zw
# Bind a key to run the switch_or_create_session function
bind-key -r f run-shell "tmux neww -n tmux_sessonizer ~/.bin/tmux_sessionizer"
# Reduce delay
set -s escape-time 1
# Start windows and panes at 1, not 0
set -g base-index 1
# Split panes using h and v
bind b split-pane -h -c "#{pane_current_path}"
bind v split-pane -v -c "#{pane_current_path}"
# Switch panes using Alt-arrow without prefix
bind h select-pane -L
bind l select-pane -R
bind k select-pane -U
bind j select-pane -D
# List windows
bind p previous-window
bind n next-window
# Quick renaming
bind C switch-client -n -t "#{session_name}"
bind C-n command-prompt -p "Rename Window: " "rename-window '%%'"
bind C-r command-prompt -p "Rename Pane: " "rename-pane '%%'"
# Automatic renaming panes
setw -g automatic-rename on
set -g automatic-rename-format "#{b:pane_current_path}"
# Resizing panes with Prefix H, J, K, L
bind -r H resize-pane -U 5
bind -r L resize-pane -R 5
bind -r K resize-pane -U 5
bind -r J resize-pane -D 5
# Alternate clear screen prefix + ctrl l
bind C-l send-keys 'C-l'
# Enable activity alerts
setw -g monitor-activity on
set -g visual-activity on
# Remove switching delay
set-option -s escape-time 0
# Increase scrollback buffer size
set-option -g history-limit 50000
# Increase message display timeout
set-option -g display-time 1500
# Enable aggressive resize
set-window-option -g aggressive-resize off
# Seamless navigation with neovim panes
is_vim="ps -o state= -o comm= -t '#{pane_tty}' | grep -iqE '^[^TXZ ]+ +(\\S+\\/)?g?(view|n?vim?x?)(diff)?$'"
# Navigate panes
bind-key -n C-h if-shell "$is_vim" 'send-keys C-h' 'select-pane -L'
bind-key -n C-j if-shell "$is_vim" 'send-keys C-j' 'select-pane -D'
bind-key -n C-k if-shell "$is_vim" 'send-keys C-k' 'select-pane -U'
bind-key -n C-l if-shell "$is_vim" 'send-keys C-l' 'select-pane -R'
# List of plugins
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @plugin 'tmux-plugins/tmux-prefix-highlight'
set -g @plugin 'dracula/tmux'
# # Set status line
# set -g status-right '#[fg=blue]#(date "+%%H:%%M %%d-%%b-%%yi")'
# set -g status-left 'Session: #S | Host: #{hostname} | '
# set -g status-right '#{?window_bigger,[#[fg=green]\u25B2#[fg=default]],}' # Display arrow if the window has more lines
# set -g status-right '#{?window_smaller,[#[fg=red]\u25BC#[fg=default]],}' # Display arrow if the window has fewer lines
# set -g status-right '#{?client_prefix,#[reverse]<Prefix>#[noreverse] ,}' # Display prefix indicator
# set -g status-right '#{?pane_in_mode,[#[fg=yellow]Copy Mode#[fg=default]],}' # Display copy mode indicator
# set -g status-right ' #{=21:pane_title}' # Display pane title
# Dracula status line
set -g @dracula-plugins "network weather battery time"
set -g @dracula-battery-colors "pink dark_gray"
set -g @dracula-show-powerline true
set -g @dracula-show-left-icon session
set -g @dracula-time-format "%F %R"
set -g @dracula-battery-label "Battery"
set -g @dracula-show-fahrenheit false
set -g @dracula-show-flags true
set -g @dracula-show-empty-plugins false
# Status bar style
set -g status-style fg=default,bg=default
# Set the status-right option with a prefix indicator
set-option -g status-right "[#{?client_prefix, Prefix, Space}]"
# Renaming Session the current dir's name
set-option -g status-interval 5
set-option -g automatic-rename on
set-option -g automatic-rename-format '#{b:pane_current_path}'
# Default TMUX keybindings
bind c new-window
bind '"' split-window -h
bind % split-window -v
bind h select-pane -L
bind l select-pane -R
bind Left select-pane -L
bind Right select-pane -R
bind Up select-pane -U
bind Down select-pane -D
bind C-s setw synchronize-panes
bind Space select-layout next
bind Tab select-pane -t:.+
bind q display-panes
bind -n C-b select-pane -T:.+
bind z resize-pane -Z
bind ! break-pane
bind -r H resize-pane -U 5
bind -r L resize-pane -R 5
bind x kill-pane
# Copy mode key mappings
setw -g mode-keys vi
# Specify a custom key combination to exit copy mode
bind-key -T copy-mode-vi Escape send-keys -X cancel
# Navigation
bind-key -T copy-mode-vi 'h' send-keys -X cursor-left
bind-key -T copy-mode-vi 'j' send-keys -X cursor-down
bind-key -T copy-mode-vi 'k' send-keys -X cursor-up
bind-key -T copy-mode-vi 'l' send-keys -X cursor-right
bind-key -T copy-mode-vi 'w' send-keys -X next-word
bind-key -T copy-mode-vi 'b' send-keys -X previous-word
# Search
bind-key -T copy-mode-vi '/' send-keys -X search-forward
bind-key -T copy-mode-vi '?' send-keys -X search-backward
bind-key -T copy-mode-vi 'n' send-keys -X search-again
bind-key -T copy-mode-vi 'N' send-keys -X search-again-backward
# Scrolling
bind-key -T copy-mode-vi 'C-u' send-keys -X halfpage-up
bind-key -T copy-mode-vi 'C-d' send-keys -X halfpage-down
# Selection
bind-key -T copy-mode-vi 'v' send-keys -X begin-selection
bind-key -T copy-mode-vi 'y' send-keys -X copy-pipe "xclip -selection clipboard"
# Movement
bind-key -T copy-mode-vi 'g' send-keys -X start-of-line
bind-key -T copy-mode-vi 'G' send-keys -X end-of-line
# Copying and Pasting
bind-key -T copy-mode-vi 'space' send-keys -X set-mark
bind-key -T copy-mode-vi 'y' send-keys -X copy-pipe "xclip -selection clipboard"
# Miscellaneous
bind-key -T copy-mode-vi '?' send-keys -X list-keys
bind-key -T copy-mode-vi ':' command-prompt
bind-key -T copy-mode-vi '~' send-keys -X show-buffer
bind-key ? list-keys
bind-key : command-prompt
bind-key -n "^" show-buffer
run '$HOME/.tmux/plugins/tpm/tpm'

View file

@ -0,0 +1,198 @@
# Default shell
set -g default-shell /bin/zsh
# Reload config
bind r source-file ~/.tmux.conf \; display-message "Config Reloaded."
# Create/destroy sessions
bind S command-prompt -p "New Session:" "new-session -A -s '%%' -c ~"
bind K confirm kill-session
# List sessions
bind s switch-client -nn
# List windows
bind w list-windows
# List sessions and windows
bind W command-prompt -p "List Windows:" "tmux list-windows"
# List all sessions
bind L command-prompt "tmux list-sessions"
# List all windows in the current session
bind l command-prompt "tmux list-windows"
# Reduce delay
set -s escape-time 1
# Start windows and panes at 1, not 0
set -g base-index 1
setw -g pane-base-index 1
# Split panes using h and v
bind b split-pane -h -c "#{pane_current_path}"
bind v split-pane -v -c "#{pane_current_path}"
unbind %
unbind '"'
# Switch panes using Alt-arrow without prefix
bind h select-pane -L
bind l select-pane -R
bind k select-pane -U
bind j select-pane -D
# List windows
bind p previous-window
bind n next-window
# Quick renaming
bind C switch-client -n -t "#{session_name}"
bind C-n command-prompt -p "Rename Window: " "rename-window '%%'"
bind C-r command-prompt -p "Rename Pane: " "rename-pane '%%'"
# Automatic renaming panes
setw -g automatic-rename on
set -g automatic-rename-format "#{b:pane_current_path}"
# Resizing panes with Prefix H, J, K, L
bind -r H resize-pane -U 5
bind -r L resize-pane -R 5
bind -r K resize-pane -U 5
bind -r J resize-pane -D 5
# Toggle synchronize-panes
bind S setw synchronize-panes
# Alternate clear screen prefix + ctrl l
bind C-l send-keys 'C-l'
# Popup session selector
bind C-j display-popup -E "tmux list-sessions | sed -E 's/:.*$//' | grep -v \"^$(tmux display-message -p '#S')\$\" | fzf --reverse | xargs tmux switch-client -t"
# Fuzzy search files and dir
bind C-f display-popup -E "fd -t f -t d . | fzf --preview 'if [ -d {} ]; then tree {}; else bat --color=always {}; fi' --preview-window down:50%:wrap --height=100% --border --prompt='Search: ' --no-reverse --ansi | while read -r selection; do \
if [ -d \"$selection\" ]; then \
tmux send-keys -t \"\$(tmux display-message -p \#{pane_id})\" \"cd '$selection' && clear\" Enter > /dev/null 2>&1; \
else \
tmux send-keys -t \"\$(tmux display-message -p \#{pane_id})\" \"cd '\$(dirname \"$selection\")' && \$EDITOR \\\"$selection\\\" && clear\" Enter > /dev/null 2>&1; \
fi; \
done"
# Enable activity alerts
setw -g monitor-activity on
set -g visual-activity on
# Remove switching delay
set-option -s escape-time 0
# Increase scrollback buffer size
set-option -g history-limit 50000
# Increase message display timeout
set-option -g display-time 1500
# Enable focus events
set-option -g focus-events
# Disable detach-on-destroy
set-option -g detach-on-destroy off
# Enable aggressive resize
set-window-option -g aggressive-resize on
# Seamless navigation with neovim panes
is_vim="ps -o state= -o comm= -t '#{pane_tty}' | grep -iqE '^[^TXZ ]+ +(\\S+\\/)?g?(view|n?vim?x?)(diff)?$'"
bind-key -n C-h if-shell "$is_vim" 'send-keys C-h' 'select-pane -L'
bind-key -n C-j if-shell "$is_vim" 'send-keys C-j' 'select-pane -D'
bind-key -n C-k if-shell "$is_vim" 'send-keys C-k' 'select-pane -U'
bind-key -n C-l if-shell "$is_vim" 'send-keys C-l' 'select-pane -R'
bind-key -T copy-mode-vi 'C-h' select-pane -L
bind-key -T copy-mode-vi 'C-j' select-pane -D
bind-key -T copy-mode-vi 'C-k' select-pane -U
bind-key -T copy-mode-vi 'C-l' select-pane -R
# List of plugins
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-continuum'
set -g @plugin 'tmux-plugins/tmux-prefix-highlight'
set -g @resurrect-strategy-nvim 'session'
set -g status-left "Host: #{hostname} | "
set -g status-right '#{prefix_highlight} | %a %Y-%m-%d %H:%M'
set -g status-style fg=default,bg=default
# Renaming Session the current dir's name
set-option -g status-interval 5
set-option -g automatic-rename on
set-option -g automatic-rename-format '#{b:pane_current_path}'
set -g @prefix_highlight_bg 'blue' # default is 'colour04'
# Default TMUX keybindings
bind c new-window
bind '"' split-window -h
bind % split-window -v
bind h select-pane -L
bind l select-pane -R
bind Left select-pane -L
bind Right select-pane -R
bind Up select-pane -U
bind Down select-pane -D
bind S setw synchronize-panes
bind Space select-layout next
bind Tab select-pane -t:.+
bind q display-panes
bind -n C-b select-pane -T:.+
bind z resize-pane -Z
bind ! break-pane
bind -r H resize-pane -U 5
bind -r L resize-pane -R 5
bind x kill-pane
# Copy mode key mappings
setw -g mode-keys vi
# Navigation
bind-key -T copy-mode-vi 'h' send-keys -X cursor-left
bind-key -T copy-mode-vi 'j' send-keys -X cursor-down
bind-key -T copy-mode-vi 'k' send-keys -X cursor-up
bind-key -T copy-mode-vi 'l' send-keys -X cursor-right
bind-key -T copy-mode-vi 'w' send-keys -X next-word
bind-key -T copy-mode-vi 'b' send-keys -X previous-word
# Search
bind-key -T copy-mode-vi '/' send-keys -X search-forward
bind-key -T copy-mode-vi '?' send-keys -X search-backward
bind-key -T copy-mode-vi 'n' send-keys -X search-again
bind-key -T copy-mode-vi 'N' send-keys -X search-again-backward
# Scrolling
bind-key -T copy-mode-vi 'C-u' send-keys -X halfpage-up
bind-key -T copy-mode-vi 'C-d' send-keys -X halfpage-down
# Selection
bind-key -T copy-mode-vi 'v' send-keys -X begin-selection
bind-key -T copy-mode-vi 'y' send-keys -X copy-pipe "xclip -selection clipboard"
# Movement
bind-key -T copy-mode-vi 'g' send-keys -X start-of-line
bind-key -T copy-mode-vi 'G' send-keys -X end-of-line
# Copying and Pasting
bind-key -T copy-mode-vi 'space' send-keys -X set-mark
bind-key -T copy-mode-vi 'y' send-keys -X copy-pipe "xclip -selection clipboard"
# Miscellaneous
bind-key -T copy-mode-vi '?' send-keys -X list-keys
bind-key -T copy-mode-vi ':' command-prompt
bind-key -T copy-mode-vi '~' send-keys -X show-buffer
bind-key ? list-keys
bind-key : command-prompt
bind-key -n "^" show-buffer

BIN
tmux/.tmux/plugins/.DS_Store vendored Normal file

Binary file not shown.

@ -0,0 +1 @@
Subproject commit 77bad738813c5d58e570c1beecfd7cd840a83f8b

@ -0,0 +1 @@
Subproject commit 3e4bc35da41f956c873aea716c97555bf1afce5d

@ -0,0 +1 @@
Subproject commit 2397bd699e9eca8cb62e67c9f79257e9bc4d7556

@ -0,0 +1 @@
Subproject commit 039adc2fbec3ea1f2afc66b6b05a54b076846baa

@ -0,0 +1 @@
Subproject commit ee018a57c99aaa63e42028a4bbf5ffc187521456

@ -0,0 +1 @@
Subproject commit 13a16701207f3aac846cf7daed3f45ed3e7ea756

@ -0,0 +1 @@
Subproject commit cff343cf9e81983d3da0c8562b01616f12e8d548

@ -0,0 +1 @@
Subproject commit 25cb91f42d020f675bb0a2ce3fbd3a5d96119efa

@ -0,0 +1 @@
Subproject commit 99469c4a9b1ccf77fade25842dc7bafbc8ce9946

View file

@ -0,0 +1,13 @@
#!/bin/bash
echo "Script is running" >> /tmp/tmux_search_debug.log
selection=$(fd -t f -t d . | fzf --preview "if [ -d {} ]; then tree {}; else bat --color=always {}; fi" --preview-window down:50%:wrap --height=80% --border --prompt="Search: " --no-reverse --ansi --bind="q:execute(bash -c \"exit\")")
if [ -n "$selection" ]; then
if [ -d "$selection" ]; then
tmux send-keys -t "#{pane_id}" "cd '$selection' && clear" Enter
else
tmux send-keys -t "#{pane_id}" "cd '\$(dirname \"$selection\")' && \$EDITOR \"$selection\" && clear" Enter
fi
fi

Binary file not shown.

31
yabai/.config/yabai/yabairc Executable file
View file

@ -0,0 +1,31 @@
#!/usr/bin/env sh
# global settings
yabai -m config mouse_follows_focus off
yabai -m config focus_follows_mouse off
yabai -m config window_placement second_child
yabai -m config window_topmost off
yabai -m config window_opacity off
yabai -m config window_opacity_duration 0.0
yabai -m config window_shadow off
yabai -m config window_border off
yabai -m config window_border_width 4
yabai -m config active_window_opacity 1.0
yabai -m config normal_window_opacity 0.90
yabai -m config split_ratio 0.50
yabai -m config auto_balance off
yabai -m config mouse_modifier fn
yabai -m config mouse_action1 move
yabai -m config mouse_action2 resize
# general space settings
yabai -m config layout bsp
yabai -m config top_padding 20
yabai -m config bottom_padding 20
yabai -m config left_padding 20
yabai -m config right_padding 20
yabai -m config window_gap 10
yabai -m config --sapce 2 window_gap 0
echo "yabai configuration loaded.."

27
zsh/.zprofile Normal file
View file

@ -0,0 +1,27 @@
if [[ -n $SSH_CONNECTION ]]; then
export EDITOR='vim'
else
export EDITOR='nvim'
fi
export PYENV_ROOT="$HOME/.pyenv"
[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
export PATH=$PATH:/usr/local/bin/python3
export FZF_DEFAULT_OPTS='--height 40% --layout=reverse --border'
alias python="python3"
alias vim="nvim"
alias tn="tmux new -s (pwd | sed 's/.*\///g')"
alias cat="bat --paging=never"
# set bat to highlight --help messages
alias bathelp='bat --plain --language=help'
help() {
"$@" --help 2>&1 | bathelp
}
# overwriting -h and --help with bat highlights
alias -g -- -h='-h 2>&1 | bat --language=help --style=plain'
alias -g -- --help='--help 2>&1 | bat --language=help --style=plain'

148
zsh/.zshrc Normal file
View file

@ -0,0 +1,148 @@
if [[ -r "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh" ]]; then
source "${XDG_CACHE_HOME:-$HOME/.cache}/p10k-instant-prompt-${(%):-%n}.zsh"
fi
# If you come from bash you might have to change your $PATH.
# export PATH=$HOME/bin:/usr/local/bin:$PATH
# Path to your oh-my-zsh installation.
export ZSH="$HOME/.oh-my-zsh"
# Set name of the theme to load --- if set to "random", it will
# load a random theme each time oh-my-zsh is loaded, in which case,
# to know which specific one was loaded, run: echo $RANDOM_THEME
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
ZSH_THEME="powerlevel10k/powerlevel10k"
# Set list of themes to pick from when loading at random
# Setting this variable when ZSH_THEME=random will cause zsh to load
# a theme from this variable instead of looking in $ZSH/themes/
# If set to an empty array, this variable will have no effect.
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
# Uncomment the following line to use case-sensitive completion.
# CASE_SENSITIVE="true"
# Uncomment the following line to use hyphen-insensitive completion.
# Case-sensitive completion must be off. _ and - will be interchangeable.
# HYPHEN_INSENSITIVE="true"
# Uncomment one of the following lines to change the auto-update behavior
# zstyle ':omz:update' mode disabled # disable automatic updates
# zstyle ':omz:update' mode auto # update automatically without asking
# zstyle ':omz:update' mode reminder # just remind me to update when it's time
# Uncomment the following line to change how often to auto-update (in days).
# zstyle ':omz:update' frequency 13
# Uncomment the following line if pasting URLs and other text is messed up.
# DISABLE_MAGIC_FUNCTIONS="true"
# Uncomment the following line to disable colors in ls.
# DISABLE_LS_COLORS="true"
# Uncomment the following line to disable auto-setting terminal title.
# DISABLE_AUTO_TITLE="true"
# Uncomment the following line to enable command auto-correction.
# ENABLE_CORRECTION="true"
# Uncomment the following line to display red dots whilst waiting for completion.
# You can also set it to another string to have that shown instead of the default red dots.
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
# COMPLETION_WAITING_DOTS="true"
# Uncomment the following line if you want to disable marking untracked files
# under VCS as dirty. This makes repository status check for large repositories
# much, much faster.
# DISABLE_UNTRACKED_FILES_DIRTY="true"
# Uncomment the following line if you want to change the command execution time
# stamp shown in the history command output.
# You can set one of the optional three formats:
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
# or set a custom format using the strftime function format specifications,
# see 'man strftime' for details.
# HIST_STAMPS="mm/dd/yyyy"
# Would you like to use another custom folder than $ZSH/custom?
ZSH_CUSTOM=$HOME/.oh-my-zsh/custom
# Which plugins would you like to load?
# Standard plugins can be found in $ZSH/plugins/
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
# Example format: plugins=(rails git textmate ruby lighthouse)
# Add wisely, as too many plugins slow down shell startup.
plugins=(
git
zsh-syntax-highlighting
zsh-autosuggestions
wd
tmux
poetry
macos
)
source $ZSH/oh-my-zsh.sh
# User configuration
source ~/.zprofile
# export MANPATH="/usr/local/man:$MANPATH"
# You may need to manually set your language environment
# export LANG=en_US.UTF-8
# Preferred editor for local and remote sessions
# if [[ -n $SSH_CONNECTION ]]; then
# export EDITOR='vim'
# else
# export EDITOR='nvim'
# fi
# activate aactivator on login
if pip3 list | grep -F aactivator >/dev/null; then
eval "$(aactivator init)"
fi
# Compilation flags
# export ARCHFLAGS="-arch x86_64"
# Set personal aliases, overriding those provided by oh-my-zsh libs,
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
# For a full list of active aliases, run `alias`.
#
# Example aliases
# alias zshconfig="mate ~/.zshrc"
# alias ohmyzsh="mate ~/.oh-my-zsh"
# alias firefox="/Applications/Firefox.app/Contents/MacOS/firefox-bin -P profileName"
# To customize prompt, run `p10k configure` or edit ~/.p10k.zsh.
[[ ! -f ~/.p10k.zsh ]] || source ~/.p10k.zsh
export PATH="/usr/local/bin:$PATH"
(( ! ${+functions[p10k]} )) || p10k finalize
# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"´
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/Users/jfraeys/yes/bin/conda' 'shell.zsh' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/Users/jfraeys/yes/etc/profile.d/conda.sh" ]; then
. "/Users/jfraeys/yes/etc/profile.d/conda.sh"
else
export PATH="/Users/jfraeys/yes/bin:$PATH"
fi
fi
unset __conda_setup
if [ -f "/Users/jfraeys/yes/etc/profile.d/mamba.sh" ]; then
. "/Users/jfraeys/yes/etc/profile.d/mamba.sh"
fi
conda config --set auto_activate_base false
# <<< conda initialize <<<