Merge branch 'master' of github.com:roodletoof/neovim-config
This commit is contained in:
@@ -1,2 +1 @@
|
||||
lazy-lock.json
|
||||
snippets
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
---@diagnostic disable: missing-fields
|
||||
-- vim:foldmethod=marker
|
||||
|
||||
vim.g.loaded_netrw = 1
|
||||
vim.g.loaded_netrwPlugin = 1
|
||||
|
||||
local function get_python_venv_path() --{{{1
|
||||
return vim.fn.stdpath('config') .. '/.venv/bin/python'
|
||||
end
|
||||
@@ -52,8 +49,8 @@ vim.cmd [[
|
||||
|
||||
" Don't include curdir, it just causes pain.
|
||||
set viewoptions=folds,cursor
|
||||
autocmd BufWinLeave *.* silent! mkview
|
||||
autocmd BufWinEnter *.* silent! loadview
|
||||
autocmd BufWinLeave,BufLeave *.* silent! mkview
|
||||
autocmd BufWinEnter,BufEnter *.* silent! loadview
|
||||
|
||||
nnoremap <c-h> <c-w>h
|
||||
nnoremap <c-j> <c-w>j
|
||||
@@ -95,16 +92,6 @@ vim.api.nvim_create_autocmd("BufEnter", {
|
||||
end,
|
||||
})
|
||||
|
||||
local function file_exists(name) --{{{1
|
||||
local f = io.open(name,"r")
|
||||
if f~=nil then
|
||||
f:close()
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
-- LAZY.NVIM BOOTSTRAP {{{1
|
||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||
if not (vim.uv or vim.loop).fs_stat(lazypath) then
|
||||
@@ -120,27 +107,155 @@ end
|
||||
vim.opt.rtp:prepend(lazypath)
|
||||
|
||||
require'lazy'.setup{ --{{{1
|
||||
{ 'nvim-tree/nvim-tree.lua', --{{{2
|
||||
dependencies = {
|
||||
'nvim-tree/nvim-web-devicons',
|
||||
},
|
||||
config = function()
|
||||
local api = require "nvim-tree.api"
|
||||
local function my_on_attach(bufnr)
|
||||
local function opts(desc) return { desc = "nvim-tree: " .. desc, buffer = bufnr, noremap = true, silent = true, nowait = true } end
|
||||
api.config.mappings.default_on_attach(bufnr)
|
||||
vim.keymap.set('n', '-', api.tree.toggle, opts('Up'))
|
||||
end
|
||||
local function opts(desc) return { desc = "nvim-tree: " .. desc, noremap = true, silent = true, nowait = true } end
|
||||
vim.keymap.set('n', '-', api.tree.toggle, opts('Up'))
|
||||
|
||||
require("nvim-tree").setup {
|
||||
on_attach = my_on_attach,
|
||||
update_focused_file = {
|
||||
enable = true,
|
||||
{ 'stevearc/oil.nvim', --{{{2
|
||||
---@module 'oil'
|
||||
---@type oil.SetupOpts
|
||||
opts = {},
|
||||
dependencies = { { "echasnovski/mini.icons", opts = {} } },
|
||||
lazy = false,
|
||||
config = function ()
|
||||
require("oil").setup({
|
||||
default_file_explorer = true,
|
||||
columns = {
|
||||
"icon",
|
||||
"permissions",
|
||||
"size",
|
||||
"mtime",
|
||||
},
|
||||
}
|
||||
end,
|
||||
buf_options = {
|
||||
buflisted = false,
|
||||
bufhidden = "hide",
|
||||
},
|
||||
win_options = {
|
||||
wrap = false,
|
||||
signcolumn = "no",
|
||||
cursorcolumn = false,
|
||||
foldcolumn = "0",
|
||||
spell = false,
|
||||
list = false,
|
||||
conceallevel = 3,
|
||||
concealcursor = "nvic",
|
||||
},
|
||||
delete_to_trash = false,
|
||||
skip_confirm_for_simple_edits = false,
|
||||
prompt_save_on_select_new_entry = true,
|
||||
cleanup_delay_ms = 2000,
|
||||
lsp_file_methods = {
|
||||
enabled = true,
|
||||
timeout_ms = 1000,
|
||||
autosave_changes = false,
|
||||
},
|
||||
constrain_cursor = "editable",
|
||||
watch_for_changes = false,
|
||||
keymaps = {
|
||||
["g?"] = { "actions.show_help", mode = "n" },
|
||||
["<CR>"] = "actions.select",
|
||||
["<C-j>"] = "actions.select",
|
||||
["<C-s>"] = { "actions.select", opts = { vertical = true } },
|
||||
["<C-h>"] = { "actions.select", opts = { horizontal = true } },
|
||||
["<C-t>"] = { "actions.select", opts = { tab = true } },
|
||||
["<C-p>"] = "actions.preview",
|
||||
["<C-c>"] = { "actions.close", mode = "n" },
|
||||
["<C-l>"] = "actions.refresh",
|
||||
["-"] = { "actions.parent", mode = "n" },
|
||||
["_"] = { "actions.open_cwd", mode = "n" },
|
||||
["`"] = { "actions.cd", mode = "n" },
|
||||
["~"] = { "actions.cd", opts = { scope = "tab" }, mode = "n" },
|
||||
["gs"] = { "actions.change_sort", mode = "n" },
|
||||
["gx"] = "actions.open_external",
|
||||
["g."] = { "actions.toggle_hidden", mode = "n" },
|
||||
["g\\"] = { "actions.toggle_trash", mode = "n" },
|
||||
},
|
||||
use_default_keymaps = true,
|
||||
view_options = {
|
||||
show_hidden = true,
|
||||
is_hidden_file = function(name, _)
|
||||
local m = name:match("^%.")
|
||||
return m ~= nil
|
||||
end,
|
||||
is_always_hidden = function(_, _)
|
||||
return false
|
||||
end,
|
||||
natural_order = "fast",
|
||||
case_insensitive = false,
|
||||
sort = {
|
||||
{ "type", "asc" },
|
||||
{ "name", "asc" },
|
||||
},
|
||||
highlight_filename = function(_, _, _, _)
|
||||
return nil
|
||||
end,
|
||||
},
|
||||
extra_scp_args = {},
|
||||
float = {
|
||||
padding = 2,
|
||||
max_width = 0,
|
||||
max_height = 0,
|
||||
border = "rounded",
|
||||
win_options = {
|
||||
winblend = 0,
|
||||
},
|
||||
get_win_title = nil,
|
||||
preview_split = "auto",
|
||||
override = function(conf)
|
||||
return conf
|
||||
end,
|
||||
},
|
||||
preview_win = {
|
||||
update_on_cursor_moved = true,
|
||||
preview_method = "fast_scratch",
|
||||
disable_preview = function(_)
|
||||
return false
|
||||
end,
|
||||
win_options = {},
|
||||
},
|
||||
confirmation = {
|
||||
max_width = 0.9,
|
||||
min_width = { 40, 0.4 },
|
||||
width = nil,
|
||||
max_height = 0.9,
|
||||
min_height = { 5, 0.1 },
|
||||
height = nil,
|
||||
border = "rounded",
|
||||
win_options = {
|
||||
winblend = 0,
|
||||
},
|
||||
},
|
||||
progress = {
|
||||
max_width = 0.9,
|
||||
min_width = { 40, 0.4 },
|
||||
width = nil,
|
||||
max_height = { 10, 0.9 },
|
||||
min_height = { 5, 0.1 },
|
||||
height = nil,
|
||||
border = "rounded",
|
||||
minimized_border = "none",
|
||||
win_options = {
|
||||
winblend = 0,
|
||||
},
|
||||
},
|
||||
ssh = {
|
||||
border = "rounded",
|
||||
},
|
||||
keymaps_help = {
|
||||
border = "rounded",
|
||||
},
|
||||
})
|
||||
|
||||
-- oil fix relative path
|
||||
vim.api.nvim_create_augroup('OilRelPathFix', {})
|
||||
vim.api.nvim_create_autocmd("BufLeave", {
|
||||
group = 'OilRelPathFix',
|
||||
pattern = "oil:///*",
|
||||
callback = function ()
|
||||
vim.cmd("cd .")
|
||||
end
|
||||
})
|
||||
|
||||
local actions = require("oil.actions")
|
||||
vim.keymap.set("n", "-", actions.parent.callback, { desc = actions.parent.desc })
|
||||
vim.keymap.set("n", "_", actions.open_cwd.callback, { desc = actions.open_cwd.desc })
|
||||
end
|
||||
},
|
||||
{ 'github/copilot.vim', --{{{2
|
||||
config = function()
|
||||
@@ -252,7 +367,7 @@ require'lazy'.setup{ --{{{1
|
||||
}
|
||||
end,
|
||||
},
|
||||
{ 'folke/zen-mode.nvim', --{{{2
|
||||
{ 'roodletoof/zen-mode.nvim', --{{{2
|
||||
keys = {",z"},
|
||||
config = function ()
|
||||
vim.keymap.set(
|
||||
@@ -472,6 +587,16 @@ require'lazy'.setup{ --{{{1
|
||||
xmap g; <Plug>(snippy-cut-text)
|
||||
]]
|
||||
|
||||
local function file_exists(name)
|
||||
local f = io.open(name,"r")
|
||||
if f~=nil then
|
||||
f:close()
|
||||
return true
|
||||
else
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
vim.api.nvim_create_user_command(
|
||||
'S',
|
||||
function ()
|
||||
@@ -547,7 +672,8 @@ require'lazy'.setup{ --{{{1
|
||||
extensions = { ['ui-select'] = { require'telescope.themes'.get_dropdown{}, }, },
|
||||
}
|
||||
vim.cmd [[
|
||||
noremap ,ff :lua require'telescope.builtin'.find_files({hidden=true})<CR>
|
||||
noremap ,fa :lua require'telescope.builtin'.find_files({hidden=true, no_ignore=true, no_ignore_parent=true})<CR>
|
||||
noremap ,ff :lua require'telescope.builtin'.find_files()<CR>
|
||||
noremap ,fo :lua require'telescope.builtin'.oldfiles()<CR>
|
||||
noremap ,fg :lua require'telescope.builtin'.live_grep()<CR>
|
||||
noremap ,fs :lua require'telescope.builtin'.grep_string()<CR>
|
||||
|
||||
@@ -0,0 +1,432 @@
|
||||
snippet taggedUnion
|
||||
#define ${1/.*/\U\0/g}_FIELDS \
|
||||
X(${0:foo})
|
||||
|
||||
#define X(NAME, ...) ${1:union}_type_##NAME,
|
||||
typedef enum ${1:union}_type {
|
||||
${1/.*/\U\0/g}_FIELDS
|
||||
count_${1:union}_type_t
|
||||
} ${1:union}_type_t;
|
||||
#undef X
|
||||
|
||||
#define X(NAME, ...) typedef struct NAME {__VA_ARGS__} NAME##_t;
|
||||
${1/.*/\U\0/g}_FIELDS
|
||||
#undef X
|
||||
|
||||
#define X(NAME, ...) NAME##_t NAME;
|
||||
typedef struct ${1:union} {
|
||||
${1:union}_type_t type;
|
||||
union {
|
||||
${1/.*/\U\0/g}_FIELDS
|
||||
};
|
||||
} ${1:union}_t;
|
||||
#undef X
|
||||
|
||||
#define X(NAME, ...) static inline ${1:union}_t ${1:union}_of_##NAME(NAME##_t NAME) { \
|
||||
${1:union}_t ${1:union} = (${1:union}_t){}; \
|
||||
${1:union}.type = ${1:union}_type_##NAME; \
|
||||
${1:union}.NAME = NAME; \
|
||||
return ${1:union}; \
|
||||
}
|
||||
${1/.*/\U\0/g}_FIELDS
|
||||
#undef X
|
||||
|
||||
snippet tccRaylib
|
||||
#!/bin/tcc -run -lraylib -lGL -lm -lpthread -ldl -lrt -lX11
|
||||
|
||||
snippet ,fl "" Ai
|
||||
, __FILE__, __LINE__
|
||||
snippet scriptgcc
|
||||
#if 0
|
||||
SCRIPT_NAME=$(echo "$0" | tr '/' '_' | tr '.' '_').o
|
||||
EXEC=/tmp/$SCRIPT_NAME
|
||||
if [ ! -x "$EXEC" ] || [ "$0" -nt "$EXEC" ]; then
|
||||
gcc "$0" -o "$EXEC"
|
||||
fi
|
||||
exec "$EXEC"
|
||||
#endif
|
||||
|
||||
snippet func
|
||||
${1:void} ${2:foo}( ${3:void} ) {
|
||||
${0:fprintf(stderr, __FILE__ ":%d: todo!", __LINE__); exit(1);}
|
||||
}
|
||||
|
||||
snippet region
|
||||
WITH_MEMORY_REGION(${1:region}) { // Don't return memory owned by ${1:region}.
|
||||
${0:$VISUAL}
|
||||
} while (0);
|
||||
|
||||
snippet regionDef
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
typedef struct AllocationHeader {
|
||||
struct AllocationHeader *next;
|
||||
union {
|
||||
long double _only_;
|
||||
long long _for_;
|
||||
void *_alignment_;
|
||||
} data[];
|
||||
} AllocationHeader;
|
||||
|
||||
typedef AllocationHeader* MemoryRegion;
|
||||
|
||||
void *MemoryRegionMalloc(MemoryRegion *region, size_t size, char *file, size_t line) {
|
||||
AllocationHeader *bytes = malloc(sizeof(AllocationHeader) + size);
|
||||
if (bytes == NULL) {
|
||||
fprintf(stderr, "%s:%zu: unable to allocate %zu bytes\n", file, line, size);
|
||||
exit(1);
|
||||
}
|
||||
bytes->next = *region;
|
||||
*region = bytes;
|
||||
printf("allocated %zu bytes at %p\n", size, bytes);
|
||||
return &bytes->data;
|
||||
}
|
||||
#define MemoryRegionMalloc(region, size) MemoryRegionMalloc(region, size, __FILE__, __LINE__)
|
||||
|
||||
void MemoryRegionFree(MemoryRegion *region) {
|
||||
AllocationHeader *curr = *region;
|
||||
while (curr != NULL) {
|
||||
AllocationHeader *next = curr->next;
|
||||
free(curr);
|
||||
printf("freed %p\n", curr);
|
||||
curr = next;
|
||||
}
|
||||
*region = NULL;
|
||||
}
|
||||
|
||||
#define WITH_MEMORY_REGION(NAME) for (MemoryRegion NAME = NULL; !NAME; NAME = (MemoryRegionFree(&NAME), (MemoryRegion) 1)) do
|
||||
snippet scopeMalloc
|
||||
{
|
||||
${1:int} *${2:var} = malloc(${3:size});
|
||||
if (${2:var} == NULL) {
|
||||
${4:fprintf(stderr, "%s:%d: malloc returned NULL!\\n", __FILE__, __LINE__); exit(1);}
|
||||
}
|
||||
// working area ////////////////////////////////////////////////////////////////
|
||||
$0
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
free(${2:var});
|
||||
}
|
||||
snippet defer
|
||||
${1:initialize}; {
|
||||
$0
|
||||
} ${2:deinitialize};
|
||||
snippet camera
|
||||
void camera_update(Camera2D *camera) {
|
||||
float wheel = GetMouseWheelMove();
|
||||
if (wheel != 0.0f) {
|
||||
Vector2 mouseWorldPos = GetScreenToWorld2D(GetMousePosition(), *camera);
|
||||
camera->offset = GetMousePosition();
|
||||
camera->target = mouseWorldPos;
|
||||
float scale_factor = 1.0f + (0.25f*fabsf(wheel));
|
||||
if (wheel < 0) scale_factor = 1.0f/scale_factor;
|
||||
camera->zoom = Clamp(camera->zoom*scale_factor, 0.125f, 64.0f);
|
||||
}
|
||||
if (IsMouseButtonDown(MOUSE_BUTTON_LEFT)) {
|
||||
Vector2 delta = GetMouseDelta();
|
||||
delta = Vector2Scale(delta, -1.0f/camera->zoom);
|
||||
camera->target = Vector2Add(camera->target, delta);
|
||||
}
|
||||
}
|
||||
#define camera_new ((Camera2D) { .zoom = 1.0f, .target = (Vector2) {0.0f, 0.0f}, .offset = (Vector2) {0.0f, 0.0f}, .rotation = 0.0f })
|
||||
|
||||
snippet tenum
|
||||
typedef enum ${1:name} {
|
||||
$0
|
||||
count_${1:name}_t
|
||||
} ${1:name}_t;
|
||||
|
||||
snippet aunion
|
||||
union {
|
||||
$0
|
||||
};
|
||||
|
||||
snippet astruct
|
||||
struct {
|
||||
$0
|
||||
};
|
||||
|
||||
snippet tunion
|
||||
typedef union ${1:name} {
|
||||
$0
|
||||
} ${1:name}_t;
|
||||
|
||||
snippet tstruct
|
||||
typedef struct ${1:name} {
|
||||
$0
|
||||
} ${1:name}_t;
|
||||
|
||||
snippet class
|
||||
typedef struct ${1:name} {
|
||||
$0
|
||||
} ${1:name};
|
||||
snippet printf
|
||||
printf("$1\n"$2);
|
||||
snippet ,,n "" Ai
|
||||
\n
|
||||
|
||||
snippet foreacharr
|
||||
for (${1:type} *${2:item} = ${3:array}; ${2:item} < &${3:array}[${4:size}]; ${2:item}++) {
|
||||
$0
|
||||
}
|
||||
snippet flags
|
||||
#include <_static_assert.h>
|
||||
#include <string.h>
|
||||
#include <stdint.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#define FLAGS \
|
||||
X(SOLID) \
|
||||
X(DAMAGING) \
|
||||
X(WATER) \
|
||||
X(ENEMY)
|
||||
|
||||
typedef enum ordinal_flags {
|
||||
#define X(name) ORDINAL_FLAG_##name,
|
||||
FLAGS
|
||||
#undef X
|
||||
count_ordinal_flags
|
||||
} ordinal_flags_t;
|
||||
static_assert(count_ordinal_flags <= 64, "Too many flags!");
|
||||
|
||||
typedef enum flag : uint64_t{
|
||||
#define X(name) FLAG_##name = ((uint64_t)1) << ORDINAL_FLAG_##name,
|
||||
FLAGS
|
||||
#undef X
|
||||
} flag_t;
|
||||
|
||||
void flag_print(flag_t f) {
|
||||
printf("FLAGS: { ");
|
||||
#define X(name) if (f & FLAG_##name) printf(#name" ");
|
||||
FLAGS
|
||||
#undef X
|
||||
printf("}\n");
|
||||
}
|
||||
|
||||
flag_t flag_parse(char *str) {
|
||||
flag_t f = 0;
|
||||
#define X(name) if (strstr(str, " "#name" ")) f |= FLAG_##name;
|
||||
FLAGS
|
||||
#undef X
|
||||
return f;
|
||||
}
|
||||
|
||||
snippet test
|
||||
#include <stdbool.h>
|
||||
#include <stdio.h>
|
||||
|
||||
int tests_total = 0;
|
||||
int tests_passed = 0;
|
||||
typedef enum {Success, Failure} Result;
|
||||
|
||||
Result assert(bool condition, char *condition_text, char *file, int line) {
|
||||
tests_total++;
|
||||
Result result;
|
||||
if (condition) {
|
||||
tests_passed++;
|
||||
result = Success;
|
||||
} else {
|
||||
printf("%s:%d: error: Assertion failed: %s\n", file, line, condition_text);
|
||||
result = Failure;
|
||||
}
|
||||
fflush(stdout);
|
||||
return result;
|
||||
}
|
||||
|
||||
#define assert(condition) assert(condition, #condition, __FILE__, __LINE__)
|
||||
|
||||
int main(int arg_count, char *args[]) {
|
||||
|
||||
{ // TEST HERE
|
||||
$0
|
||||
}
|
||||
|
||||
if (tests_total == tests_passed) {
|
||||
return 0;
|
||||
} else {
|
||||
return tests_total - tests_passed;
|
||||
}
|
||||
}
|
||||
|
||||
snippet unpackRect
|
||||
$1.x, $1.y, $1.width, $1.height
|
||||
|
||||
snippet unpackRectInt
|
||||
((int) $1.x), ((int) $1.y), ((int) $1.width), ((int) $1.height)
|
||||
|
||||
snippet rect
|
||||
(Rectangle) {$1}
|
||||
|
||||
snippet forxy
|
||||
for ( int y = 0; y < ${1:HEIGHT}; y++ ) {
|
||||
for ( int x = 0; x < ${2:WIDTH}; x++ ) {
|
||||
$0
|
||||
}
|
||||
}
|
||||
|
||||
snippet constAssign
|
||||
*((${1:int} *) &${2:const}) = ${3:val};
|
||||
|
||||
snippet colorToVec4
|
||||
Vector4 ${1:color}_v = (Vector4) {
|
||||
.x = (float) ${1:color}.r,
|
||||
.y = (float) ${1:color}.g,
|
||||
.z = (float) ${1:color}.b,
|
||||
.w = (float) ${1:color}.a
|
||||
};
|
||||
|
||||
snippet cast
|
||||
(($1) ${2:$VISUAL})
|
||||
|
||||
snippet appendDefine
|
||||
#define append(arr, val, size, capacity) \
|
||||
do { \
|
||||
assert(size < capacity); \
|
||||
arr[size] = val; \
|
||||
size++; \
|
||||
} while (0)
|
||||
|
||||
snippet popDefine
|
||||
#define pop(recipient, arr, size) \
|
||||
do { \
|
||||
assert(0 < size); \
|
||||
size--; \
|
||||
recipient = arr[size]; \
|
||||
} while (0)
|
||||
|
||||
snippet pop
|
||||
assert(0 < ${3:size});
|
||||
${3:size}--;
|
||||
${2:recipient} = ${1:$VISUAL}[${3:size}];
|
||||
|
||||
snippet append
|
||||
${1:arr}[${3:size}++] = ${2:value};
|
||||
|
||||
snippet )
|
||||
( $1 )
|
||||
|
||||
snippet ]
|
||||
[ $1 ]
|
||||
|
||||
snippet }
|
||||
{ $1 }
|
||||
|
||||
snippet (
|
||||
(
|
||||
$1
|
||||
)
|
||||
|
||||
snippet [
|
||||
[
|
||||
$1
|
||||
]
|
||||
|
||||
snippet {
|
||||
{
|
||||
$1
|
||||
}
|
||||
|
||||
snippet main
|
||||
int main( int arg_count, char *args[] ) {
|
||||
$0
|
||||
return 0;
|
||||
}
|
||||
|
||||
snippet fori
|
||||
for ( ${1:size_t} ${2:i} = ${3:0}; ${2:i} < ${4:count}; ${2:i}++ ) {
|
||||
$0
|
||||
}
|
||||
|
||||
snippet do
|
||||
do {
|
||||
$0
|
||||
\} while ( ${1:1} );
|
||||
|
||||
snippet while
|
||||
while ( ${1:1} ) {
|
||||
$0
|
||||
}
|
||||
|
||||
snippet if
|
||||
if ( $1 ) {
|
||||
$0
|
||||
}
|
||||
|
||||
snippet includeGuard
|
||||
#ifndef $1
|
||||
#define $1
|
||||
|
||||
$0
|
||||
|
||||
#endif /* $1 */
|
||||
|
||||
snippet singleHeaderLib
|
||||
#ifndef $1_HEADER
|
||||
#define $1_HEADER
|
||||
|
||||
$0
|
||||
|
||||
#ifdef $1_IMPL
|
||||
|
||||
|
||||
|
||||
#endif /* $1_IMPL */
|
||||
#endif /* $1_HEADER */
|
||||
|
||||
snippet withDrawing
|
||||
BeginDrawing();
|
||||
$0
|
||||
EndDrawing();
|
||||
|
||||
snippet withBlendMode
|
||||
BeginBlendMode(${1:int mode});
|
||||
$0
|
||||
EndBlendMode();
|
||||
|
||||
snippet withMode2D
|
||||
BeginMode2D(${1:Camera2D camera});
|
||||
$0
|
||||
EndMode2D();
|
||||
|
||||
snippet withMode3D
|
||||
BeginMode3D(${1:Camera3D camera});
|
||||
$0
|
||||
EndMode3D();
|
||||
|
||||
snippet withShaderMode
|
||||
BeginShaderMode(${1:Shader shader});
|
||||
$0
|
||||
EndShaderMode();
|
||||
|
||||
snippet withTextureMode
|
||||
BeginTextureMode(${1:RenderTexture2D target});
|
||||
$0
|
||||
EndTextureMode();
|
||||
|
||||
snippet withVrStereoMode
|
||||
BeginVrStereoMode(${1:VrStereoConfig config});
|
||||
$0
|
||||
EndVrStereoMode();
|
||||
|
||||
snippet withScissorMode
|
||||
BeginScissorMode(${1:int x}, ${2:int y}, ${3:int width}, ${4:int height});
|
||||
$0
|
||||
EndScissorMode();
|
||||
|
||||
snippet gear
|
||||
[GID_${1:TYPE}_${2:IDENTIFIER}] = {
|
||||
.name = "${3:In game name}",
|
||||
.texture_path = "assets/player/${4:path/to/image}.png",
|
||||
.type = GEAR_${1:TYPE},
|
||||
.rating = ${5:dmg / armor}
|
||||
},
|
||||
snippet escape
|
||||
$1 \
|
||||
snippet X
|
||||
X( $1 )
|
||||
snippet Xdef
|
||||
#define X($1) $2
|
||||
$0
|
||||
#undef X
|
||||
snippet todo
|
||||
_Static_assert(false, "TODO");
|
||||
@@ -0,0 +1,7 @@
|
||||
snippet guard "Include guards"
|
||||
#ifndef ${1:MY_HEADER_NAME_GOES_HERE_H}
|
||||
#define ${1:MY_HEADER_NAME_GOES_HERE_H}
|
||||
|
||||
${0:...}
|
||||
|
||||
#endif /* ${1:MY_HEADER_NAME_GOES_HERE_H} */
|
||||
@@ -0,0 +1,10 @@
|
||||
snippet ,,n "" Ai
|
||||
\n
|
||||
|
||||
snippet summary
|
||||
/// <summary>
|
||||
/// $1
|
||||
/// </summary>$0
|
||||
|
||||
snippet param
|
||||
/// <param name="$1">$2</param>$0
|
||||
@@ -0,0 +1,118 @@
|
||||
snippet tryget
|
||||
if ${2:val}, ok := $1; ok {
|
||||
$0
|
||||
}
|
||||
|
||||
snippet dontimes
|
||||
for range $1 {
|
||||
$0
|
||||
}
|
||||
|
||||
snippet handlefunc
|
||||
router.HandleFunc("$1", func( w http.ResponseWriter, r *http.Request,) {
|
||||
$0
|
||||
})
|
||||
|
||||
snippet !! "" Ai
|
||||
!=
|
||||
|
||||
snippet :: "" Ai
|
||||
:=
|
||||
|
||||
snippet ,,n "" Ai
|
||||
\n
|
||||
snippet <<< "" Ai
|
||||
<-
|
||||
snippet ts
|
||||
type $1 struct {
|
||||
$0
|
||||
}
|
||||
|
||||
snippet main
|
||||
package main
|
||||
|
||||
func main() {
|
||||
$0
|
||||
}
|
||||
|
||||
snippet gofunc
|
||||
go func() {
|
||||
$0
|
||||
}()
|
||||
|
||||
snippet afunc
|
||||
func($1) $2 {
|
||||
$0
|
||||
}
|
||||
|
||||
snippet func
|
||||
func ${1:foo}($2) $3 {
|
||||
$0
|
||||
}
|
||||
|
||||
snippet meth
|
||||
func (${1:rec}) ${2:foo}($3) $4 {
|
||||
$0
|
||||
}
|
||||
|
||||
snippet err
|
||||
if err != nil { return err }$0
|
||||
|
||||
snippet {
|
||||
{
|
||||
$1
|
||||
}$0
|
||||
|
||||
snippet [
|
||||
[
|
||||
$1
|
||||
]$0
|
||||
|
||||
snippet (
|
||||
(
|
||||
$1
|
||||
)$0
|
||||
|
||||
snippet }
|
||||
{ $1 }$0
|
||||
|
||||
snippet ]
|
||||
[ $1 ]$0
|
||||
|
||||
snippet )
|
||||
( $1 )$0
|
||||
|
||||
snippet fori
|
||||
for ${1:i} := ${2:0}; ${1:i} < ${3:upper}; ${1:i}++ {
|
||||
$0
|
||||
}
|
||||
snippet retSeq1
|
||||
return func(yield func(${1:V}) bool) {
|
||||
for /*TODO*/ {
|
||||
if !yield( /*${1:V}*/ ) {
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
snippet retSeq2
|
||||
return func(yield func(${1:K}, ${2:V}) bool) {
|
||||
for /*TODO*/ {
|
||||
if !yield( /*${1:K},${2:V}*/ ) {
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
snippet printif
|
||||
if !isZeroVal($1) { fmt.Println("$1 =", $1) }
|
||||
|
||||
snippet impl
|
||||
var _ ${1:INTERFACE} = (*${2:CONCRETE_TYPE})(nil)
|
||||
|
||||
snippet implstr
|
||||
var _ ${1:INTERFACE} = (*${2:CONCRETE_TYPE})(nil)
|
||||
type ${2:CONCRETE_TYPE} ${3:UNDERLYING_TYPE}
|
||||
|
||||
snippet append
|
||||
${1:slice} = append( ${1:slice}, ${2:value} )
|
||||
@@ -0,0 +1,2 @@
|
||||
snippet <! "" Ai
|
||||
<!-- $1 -->
|
||||
@@ -0,0 +1,14 @@
|
||||
snippet (
|
||||
(
|
||||
$0
|
||||
)
|
||||
|
||||
snippet {
|
||||
{
|
||||
$0
|
||||
}
|
||||
|
||||
snippet [
|
||||
[
|
||||
$0
|
||||
]
|
||||
@@ -0,0 +1,105 @@
|
||||
snippet as
|
||||
--[[@as $1]]
|
||||
|
||||
snippet anon
|
||||
function($1)
|
||||
$0
|
||||
end
|
||||
snippet ) "" i
|
||||
( $1 )
|
||||
|
||||
snippet ] "" i
|
||||
[ $1 ]
|
||||
|
||||
snippet } "" i
|
||||
{ $1 }
|
||||
|
||||
snippet ( "" i
|
||||
(
|
||||
$1
|
||||
)
|
||||
|
||||
snippet [ "" i
|
||||
[
|
||||
$1
|
||||
]
|
||||
|
||||
snippet { "" i
|
||||
{
|
||||
$1
|
||||
}
|
||||
|
||||
snippet ltag ""
|
||||
local ${0:$VISUAL} = '${0:$VISUAL}'
|
||||
|
||||
snippet tag
|
||||
${0:$VISUAL} = '${0:$VISUAL}'
|
||||
|
||||
snippet != "" Ai
|
||||
~=
|
||||
|
||||
snippet ne "" i
|
||||
~=
|
||||
|
||||
snippet --[[ "" i
|
||||
--[[
|
||||
$0
|
||||
--]]
|
||||
|
||||
snippet wopen
|
||||
do
|
||||
local file = io.open( $1, $2 )
|
||||
assert( file ~= nil, ("io.open('%s', '%s' returned nil."):format($1, $2))
|
||||
|
||||
${0:$VISUAL}
|
||||
|
||||
file:close()
|
||||
end
|
||||
|
||||
snippet wshader
|
||||
local previous_shader = love.graphics.getShader()
|
||||
love.graphics.setShader( $1 )
|
||||
${0:$VISUAL}
|
||||
love.graphics.setShader( previous_shader )
|
||||
|
||||
snippet wcanvas
|
||||
local previous_canvas = love.graphics.getCanvas()
|
||||
love.graphics.setCanvas( $1 )
|
||||
${0:$VISUAL}
|
||||
love.graphics.setCanvas( previous_canvas )
|
||||
|
||||
snippet wcolor
|
||||
local previous_color = { love.graphics.getColor() }
|
||||
love.graphics.setColor( $1 )
|
||||
${0:$VISUAL}
|
||||
love.graphics.setColor( previous_color )
|
||||
|
||||
snippet uvec
|
||||
${1:$VISUAL}.x, ${1:$VISUAL}.y$0
|
||||
|
||||
snippet urec
|
||||
${1:$VISUAL}.x, ${1:$VISUAL}.y, ${1:$VISUAL}.w, ${1:$VISUAL}.h$0
|
||||
|
||||
snippet swap
|
||||
$1, $2 = $2, $1$0
|
||||
|
||||
snippet add ""
|
||||
${1:$VISUAL} = ${1:$VISUAL} + $2
|
||||
|
||||
snippet sub
|
||||
${1:$VISUAL} = ${1:$VISUAL} - $2
|
||||
|
||||
snippet mul
|
||||
${1:$VISUAL} = ${1:$VISUAL} * $2
|
||||
|
||||
snippet div
|
||||
${1:$VISUAL} = ${1:$VISUAL} / $2
|
||||
|
||||
snippet conc
|
||||
${1:$VISUAL} = ${1:$VISUAL} .. $2
|
||||
|
||||
snippet inc
|
||||
${1:$VISUAL} = ${1:$VISUAL} + 1$0
|
||||
|
||||
snippet dec
|
||||
${1:$VISUAL} = ${1:$VISUAL} - 1$0
|
||||
@@ -0,0 +1,14 @@
|
||||
snippet raylib
|
||||
${2:game}: ${1:main.c}
|
||||
cc ${1:main.c} -o ${2:game} -lraylib -lGL -lm -lpthread -ldl -lrt -lX11
|
||||
|
||||
clean:
|
||||
rm ./${2:game}
|
||||
|
||||
run: ${2:game}
|
||||
./${2:game}
|
||||
|
||||
snippet test
|
||||
test: test.c
|
||||
@cc -o test test.c
|
||||
@./test || (rm -f test && $(MAKE) --no-print-directory clean && exit 1)
|
||||
@@ -0,0 +1,480 @@
|
||||
snippet link
|
||||
[${1:$VISUAL}](${2:$VISUAL})
|
||||
snippet XML
|
||||
\`\`\`XML
|
||||
${0:$VISUAL}
|
||||
\`\`\`
|
||||
snippet <! "" Ai
|
||||
<!-- ${1:$VISUAL} -->
|
||||
snippet <> "" i
|
||||
<${1:$VISUAL}>
|
||||
$0
|
||||
</${1:$VISUAL}>
|
||||
|
||||
snippet FIFO
|
||||
**First In, First Out** (FIFO)
|
||||
snippet DAC
|
||||
'DefaultAzureCredential'
|
||||
snippet runarroll
|
||||

|
||||
snippet runarapprove
|
||||

|
||||
snippet runarangry
|
||||

|
||||
snippet runarshrug
|
||||

|
||||
snippet image
|
||||

|
||||
snippet note
|
||||
> **Note**
|
||||
> $0
|
||||
snippet code
|
||||
\`\`\`${1:c}
|
||||
${0:$VISUAL}
|
||||
\`\`\`
|
||||
|
||||
snippet haskell
|
||||
\`\`\`haskell
|
||||
${0:$VISUAL}
|
||||
\`\`\`
|
||||
|
||||
snippet c
|
||||
\`\`\`c
|
||||
${0:$VISUAL}
|
||||
\`\`\`
|
||||
|
||||
snippet bash
|
||||
\`\`\`Bash
|
||||
${0:$VISUAL}
|
||||
\`\`\`
|
||||
|
||||
snippet json
|
||||
\`\`\`JSON
|
||||
${0:$VISUAL}
|
||||
\`\`\`
|
||||
|
||||
snippet cs
|
||||
\`\`\`cs
|
||||
${0:$VISUAL}
|
||||
\`\`\`
|
||||
|
||||
snippet cpp
|
||||
\`\`\`cpp
|
||||
${0:$VISUAL}
|
||||
\`\`\`
|
||||
|
||||
snippet py "Python"
|
||||
\`\`\`py
|
||||
$0
|
||||
\`\`\`
|
||||
|
||||
snippet bullet "Bullet item"
|
||||
- **${1:...}** -
|
||||
|
||||
snippet check "Checklist item"
|
||||
- [ ] ${0:...}
|
||||
|
||||
snippet i "Italic"
|
||||
*${1:$VISUAL}*$0
|
||||
|
||||
snippet b "Bold"
|
||||
**${1:$VISUAL}**$0
|
||||
|
||||
snippet ib "Italic Bold"
|
||||
***${1:$VISUAL}***$0
|
||||
|
||||
snippet bi "Bold Italic"
|
||||
***${1:...}***$0
|
||||
|
||||
|
||||
snippet pagebreak "Force a pagebreak for when the document is converted to a pdf."
|
||||
<div style="page-break-after: always;"></div>
|
||||
|
||||
|
||||
snippet equation
|
||||
\begin{equation*}
|
||||
$0
|
||||
\end{equation*}
|
||||
|
||||
snippet aligned
|
||||
\begin{aligned}
|
||||
$0
|
||||
\end{aligned}
|
||||
|
||||
snippet matrix
|
||||
\begin{bmatrix*}[r]
|
||||
$0
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet detMatrix
|
||||
\begin{vmatrix*}[r]
|
||||
$0
|
||||
\end{vmatrix*}
|
||||
|
||||
snippet row2matrix
|
||||
${1:a} & ${2:b} \\\\
|
||||
|
||||
snippet row3matrix
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
|
||||
snippet row4matrix
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
|
||||
snippet row5matrix
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} & ${5:e} \\\\
|
||||
|
||||
snippet row6matrix
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} & ${5:e} & ${6:f}\\\\
|
||||
|
||||
snippet matI2
|
||||
\begin{bmatrix*}[r]
|
||||
1 & 0 \\\\
|
||||
0 & 1 \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet mat22
|
||||
\begin{bmatrix*}[r]
|
||||
${1:a} & ${2:b} \\\\
|
||||
${3:c} & ${4:d} \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet mat23
|
||||
\begin{bmatrix*}[r]
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
${4:d} & ${5:e} & ${6:f} \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet mat24
|
||||
\begin{bmatrix*}[r]
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} & ${7:g} & ${8:h} \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet matI3
|
||||
\begin{bmatrix*}[r]
|
||||
1 & 0 & 0 \\\\
|
||||
0 & 1 & 0 \\\\
|
||||
0 & 0 & 1 \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet mat32
|
||||
\begin{bmatrix*}[r]
|
||||
${1:a} & ${2:b} \\\\
|
||||
${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet mat33
|
||||
\begin{bmatrix*}[r]
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
${4:d} & ${5:e} & ${6:f} \\\\
|
||||
${7:g} & ${8:h} & ${9:i} \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet mat34
|
||||
\begin{bmatrix*}[r]
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} & ${7:g} & ${8:h} \\\\
|
||||
${9:i} & ${10:j} & ${11:k} & ${12:l} \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet matI4
|
||||
\begin{bmatrix*}[r]
|
||||
1 & 0 & 0 & 0 \\\\
|
||||
0 & 1 & 0 & 0 \\\\
|
||||
0 & 0 & 1 & 0 \\\\
|
||||
0 & 0 & 0 & 1 \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet mat42
|
||||
\begin{bmatrix*}[r]
|
||||
${1:a} & ${2:b} \\\\
|
||||
${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} \\\\
|
||||
${7:g} & ${8:h} \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet mat43
|
||||
\begin{bmatrix*}[r]
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
${4:d} & ${5:e} & ${6:f} \\\\
|
||||
${7:g} & ${8:h} & ${9:i} \\\\
|
||||
${10:j} & ${11:k} & ${12:l} \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet mat44
|
||||
\begin{bmatrix*}[r]
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} & ${7:g} & ${8:h} \\\\
|
||||
${9:i} & ${10:j} & ${11:k} & ${12:l} \\\\
|
||||
${13:m} & ${14:n} & ${15:o} & ${16:p} \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet detI2
|
||||
\begin{vmatrix*}[r]
|
||||
1 & 0 \\\\
|
||||
0 & 1 \\\\
|
||||
\end{vmatrix*}
|
||||
|
||||
snippet det22
|
||||
\begin{vmatrix*}[r]
|
||||
${1:a} & ${2:b} \\\\
|
||||
${3:c} & ${4:d} \\\\
|
||||
\end{vmatrix*}
|
||||
|
||||
snippet det23
|
||||
\begin{vmatrix*}[r]
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
${4:d} & ${5:e} & ${6:f} \\\\
|
||||
\end{vmatrix*}
|
||||
|
||||
snippet det24
|
||||
\begin{vmatrix*}[r]
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} & ${7:g} & ${8:h} \\\\
|
||||
\end{vmatrix*}
|
||||
|
||||
snippet detI3
|
||||
\begin{vmatrix*}[r]
|
||||
1 & 0 & 0 \\\\
|
||||
0 & 1 & 0 \\\\
|
||||
0 & 0 & 1 \\\\
|
||||
\end{vmatrix*}
|
||||
|
||||
snippet det32
|
||||
\begin{vmatrix*}[r]
|
||||
${1:a} & ${2:b} \\\\
|
||||
${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} \\\\
|
||||
\end{vmatrix*}
|
||||
|
||||
snippet det33
|
||||
\begin{vmatrix*}[r]
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
${4:d} & ${5:e} & ${6:f} \\\\
|
||||
${7:g} & ${8:h} & ${9:i} \\\\
|
||||
\end{vmatrix*}
|
||||
|
||||
snippet det34
|
||||
\begin{vmatrix*}[r]
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} & ${7:g} & ${8:h} \\\\
|
||||
${9:i} & ${10:j} & ${11:k} & ${12:l} \\\\
|
||||
\end{vmatrix*}
|
||||
|
||||
snippet detI4
|
||||
\begin{vmatrix*}[r]
|
||||
1 & 0 & 0 & 0 \\\\
|
||||
0 & 1 & 0 & 0 \\\\
|
||||
0 & 0 & 1 & 0 \\\\
|
||||
0 & 0 & 0 & 1 \\\\
|
||||
\end{vmatrix*}
|
||||
|
||||
snippet det42
|
||||
\begin{vmatrix*}[r]
|
||||
${1:a} & ${2:b} \\\\
|
||||
${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} \\\\
|
||||
${7:g} & ${8:h} \\\\
|
||||
\end{vmatrix*}
|
||||
|
||||
snippet det43
|
||||
\begin{vmatrix*}[r]
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
${4:d} & ${5:e} & ${6:f} \\\\
|
||||
${7:g} & ${8:h} & ${9:i} \\\\
|
||||
${10:j} & ${11:k} & ${12:l} \\\\
|
||||
\end{vmatrix*}
|
||||
|
||||
snippet det44
|
||||
\begin{vmatrix*}[r]
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} & ${7:g} & ${8:h} \\\\
|
||||
${9:i} & ${10:j} & ${11:k} & ${12:l} \\\\
|
||||
${13:m} & ${14:n} & ${15:o} & ${16:p} \\\\
|
||||
\end{vmatrix*}
|
||||
|
||||
snippet pi
|
||||
\pi
|
||||
|
||||
snippet infinity
|
||||
\infty
|
||||
|
||||
snippet sum
|
||||
\sum_{i=${1:1}}^{${2:\\infty}}
|
||||
|
||||
snippet fraction
|
||||
\frac{${1:a}}{${2:b}}
|
||||
|
||||
snippet flexbrace
|
||||
\left($1\right)
|
||||
|
||||
snippet text
|
||||
\text{$1}
|
||||
|
||||
snippet Z
|
||||
\mathbb{Z}
|
||||
|
||||
snippet Z+
|
||||
\mathbb{Z}^{+}
|
||||
|
||||
snippet Z+0
|
||||
\mathbb{Z}^{+}_{0}
|
||||
|
||||
snippet Z-
|
||||
\mathbb{Z}^{-}
|
||||
|
||||
snippet Z-0
|
||||
\mathbb{Z}^{-}_0
|
||||
|
||||
snippet N
|
||||
\mathbb{N}
|
||||
|
||||
snippet R
|
||||
\mathbb{R}
|
||||
|
||||
snippet Rn
|
||||
\mathbb{R}^n
|
||||
|
||||
snippet Rm
|
||||
\mathbb{R}^m
|
||||
|
||||
snippet lambda
|
||||
\lambda
|
||||
|
||||
snippet my
|
||||
\mu
|
||||
|
||||
snippet bigVec
|
||||
\overrightarrow{$1}
|
||||
|
||||
snippet vec
|
||||
\vec{$1}
|
||||
|
||||
snippet colvec2
|
||||
\begin{bmatrix*}[r]
|
||||
${1:x_1} \\\\
|
||||
${2:x_2} \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet colvec3
|
||||
\begin{bmatrix*}[r]
|
||||
${1:x_1} \\\\
|
||||
${2:x_2} \\\\
|
||||
${3:x_3} \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet colvec4
|
||||
\begin{bmatrix*}[r]
|
||||
${1:x_1} \\\\
|
||||
${2:x_2} \\\\
|
||||
${3:x_3} \\\\
|
||||
${4:x_4} \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet colvec5
|
||||
\begin{bmatrix*}[r]
|
||||
${1:x_1} \\\\
|
||||
${2:x_2} \\\\
|
||||
${3:x_3} \\\\
|
||||
${4:x_4} \\\\
|
||||
${5:x_5} \\\\
|
||||
\end{bmatrix*}
|
||||
|
||||
snippet +-
|
||||
\pm
|
||||
|
||||
snippet sqrt
|
||||
\sqrt{$1}
|
||||
|
||||
snippet nsqrt
|
||||
\sqrt[$1]{$2}
|
||||
|
||||
snippet abc
|
||||
${1:x} = \frac{-${3:b} \pm \sqrt{ ${3:b}^2 - 4 * ${4:c} * ${2:a} } }{ 2 * ${2:a} }$0
|
||||
|
||||
snippet ul
|
||||
\underline{$1}
|
||||
|
||||
snippet ulul
|
||||
\underline{\underline{$1}}$0
|
||||
|
||||
snippet boldText
|
||||
\textbf{$1}
|
||||
|
||||
snippet italicText
|
||||
\emph{$1}
|
||||
|
||||
snippet section
|
||||
\section{$1}$0
|
||||
|
||||
snippet subsection
|
||||
\subsection{$1}$0
|
||||
|
||||
snippet subsubsection
|
||||
\subsubsection{$1}$0
|
||||
|
||||
snippet enumerate
|
||||
\begin{enumerate}
|
||||
$0
|
||||
\end{enumerate}
|
||||
|
||||
snippet item
|
||||
\item $1
|
||||
|
||||
snippet transformation
|
||||
T : \mathbb{R}^${1:n} \to \mathbb{R}^${2:m}
|
||||
|
||||
snippet pow
|
||||
${1:a}^{${2:n}}$0
|
||||
|
||||
snippet inverse
|
||||
^{-1}
|
||||
|
||||
snippet transposed
|
||||
^{T}
|
||||
|
||||
snippet nxn
|
||||
${1:n} \times ${1:n}
|
||||
|
||||
snippet nxm
|
||||
${1:n} \times ${2:m}
|
||||
|
||||
snippet adj
|
||||
\text{adj}
|
||||
|
||||
snippet span
|
||||
\text{Span}
|
||||
|
||||
snippet squigles
|
||||
\\{$1\\}$0
|
||||
|
||||
snippet vecu
|
||||
\vec{u}
|
||||
|
||||
snippet vecv
|
||||
\vec{v}
|
||||
|
||||
snippet vecx
|
||||
\vec{x}
|
||||
|
||||
snippet vecb
|
||||
\vec{b}
|
||||
|
||||
snippet vecw
|
||||
\vec{w}
|
||||
|
||||
snippet u "Underscore"
|
||||
_{$1}$0
|
||||
|
||||
snippet dots "... in math mode"
|
||||
\dots
|
||||
|
||||
snippet nbasis
|
||||
B = \{\vec b_1, \dots, \vec b_n \\}
|
||||
|
||||
snippet dim
|
||||
\\text{dim }
|
||||
|
||||
snippet dot
|
||||
\\cdot
|
||||
@@ -0,0 +1,28 @@
|
||||
snippet main
|
||||
def main():
|
||||
${0:$VISUAL}
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
||||
|
||||
snippet mainargs
|
||||
from sys import argv
|
||||
|
||||
def main( me: str, args: list[str] ):
|
||||
${0:$VISUAL}
|
||||
|
||||
if __name__ == '__main__':
|
||||
main(argv[0], argv[1:])
|
||||
|
||||
snippet tag
|
||||
$1 = '$1'
|
||||
|
||||
snippet assign
|
||||
self.$1 = $1
|
||||
|
||||
snippet ignore
|
||||
#pyright: ignore
|
||||
snippet ''' "" Ai
|
||||
'''
|
||||
$0
|
||||
'''
|
||||
@@ -0,0 +1,30 @@
|
||||
snippet (
|
||||
(
|
||||
$1
|
||||
)
|
||||
|
||||
snippet [
|
||||
[
|
||||
$1
|
||||
]
|
||||
|
||||
snippet {
|
||||
{
|
||||
$1
|
||||
}
|
||||
|
||||
snippet )
|
||||
($1)
|
||||
|
||||
snippet ]
|
||||
[$1]
|
||||
|
||||
snippet }
|
||||
{$1}
|
||||
|
||||
snippet inc
|
||||
${1:var} = ${1:var} + 1;
|
||||
|
||||
snippet cmpn
|
||||
#[derive(Component)] struct $1;
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
snippet raylibBuildLinux
|
||||
cc $1.c -lraylib -lGL -lm -lpthread -ldl -lrt -lX11 -o $1
|
||||
./$1
|
||||
@@ -0,0 +1,9 @@
|
||||
snippet vis
|
||||
\${${1:n}:\$VISUAL}
|
||||
snippet par
|
||||
\${${1:n}:${2:default}}
|
||||
snippet code
|
||||
snippet ${1:c}
|
||||
\\\`\\\`\\\`${1:c}
|
||||
\${0:\$VISUAL}
|
||||
\\\`\\\`\\\`
|
||||
@@ -0,0 +1,441 @@
|
||||
snippet template
|
||||
\documentclass{article}
|
||||
|
||||
\usepackage[margin=2.5cm]{geometry}
|
||||
\usepackage{titlesec}
|
||||
\AddToHook{cmd/section/before}{\clearpage}
|
||||
\linespread{1.25}
|
||||
\usepackage[skip=10pt plus1pt, indent=0pt]{parskip}
|
||||
|
||||
\titleformat{\section}
|
||||
{\normalfont\Large\bfseries}{}{0em}{} % Removes section numbering
|
||||
|
||||
\titleformat{\subsection}
|
||||
{\normalfont\large\bfseries}{}{0em}{} % Removes subsection numbering
|
||||
|
||||
\titleformat{\subsubsection}
|
||||
{\normalfont\normalsize\bfseries}{}{0em}{} % Removes subsubsection numbering
|
||||
|
||||
\titlespacing*{\section}{0pt}{\baselineskip}{\baselineskip}
|
||||
\titlespacing*{\subsection}{0pt}{\baselineskip}{\baselineskip}
|
||||
\titlespacing*{\subsubsection}{0pt}{\baselineskip}{\baselineskip}
|
||||
|
||||
\begin{document}
|
||||
|
||||
$0
|
||||
|
||||
\end{document}
|
||||
|
||||
snippet templateMath
|
||||
\documentclass{article}
|
||||
|
||||
\AddToHook{cmd/section/before}{\clearpage}
|
||||
|
||||
\usepackage{amsfonts}
|
||||
\usepackage[framemethod=TikZ]{mdframed}
|
||||
\usepackage{amsmath}
|
||||
\usepackage[a4paper, margin=2.5cm]{geometry}
|
||||
|
||||
\newmdenv[linecolor=black,linewidth=2pt,roundcorner=5pt]{questionbox}
|
||||
|
||||
\newenvironment{question}[1]
|
||||
{\begin{questionbox}\textbf{\boldmath #1}\par\medskip\hrule\medskip}
|
||||
{\end{questionbox}}
|
||||
|
||||
\begin{document}
|
||||
\tableofcontents
|
||||
$0
|
||||
\end{document}
|
||||
|
||||
snippet question
|
||||
\begin{question}{ ${1:Question} }
|
||||
$0
|
||||
\end{question}
|
||||
|
||||
snippet equation
|
||||
\begin{equation*}
|
||||
$0
|
||||
\end{equation*}
|
||||
|
||||
snippet aligned
|
||||
\begin{aligned}
|
||||
$0
|
||||
\end{aligned}
|
||||
|
||||
snippet matrix
|
||||
\begin{bmatrix}
|
||||
$0
|
||||
\end{bmatrix}
|
||||
|
||||
snippet detMatrix
|
||||
\begin{vmatrix}
|
||||
$0
|
||||
\end{vmatrix}
|
||||
|
||||
snippet row2matrix
|
||||
${1:a} & ${2:b} \\\\
|
||||
|
||||
snippet row3matrix
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
|
||||
snippet row4matrix
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
|
||||
snippet row5matrix
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} & ${5:e} \\\\
|
||||
|
||||
snippet row6matrix
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} & ${5:e} & ${6:f}\\\\
|
||||
|
||||
snippet matI2
|
||||
\begin{bmatrix}
|
||||
1 & 0 \\\\
|
||||
0 & 1 \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet mat22
|
||||
\begin{bmatrix}
|
||||
${1:a} & ${2:b} \\\\
|
||||
${3:c} & ${4:d} \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet mat23
|
||||
\begin{bmatrix}
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
${4:d} & ${5:e} & ${6:f} \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet mat24
|
||||
\begin{bmatrix}
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} & ${7:g} & ${8:h} \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet matI3
|
||||
\begin{bmatrix}
|
||||
1 & 0 & 0 \\\\
|
||||
0 & 1 & 0 \\\\
|
||||
0 & 0 & 1 \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet mat32
|
||||
\begin{bmatrix}
|
||||
${1:a} & ${2:b} \\\\
|
||||
${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet mat33
|
||||
\begin{bmatrix}
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
${4:d} & ${5:e} & ${6:f} \\\\
|
||||
${7:g} & ${8:h} & ${9:i} \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet mat34
|
||||
\begin{bmatrix}
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} & ${7:g} & ${8:h} \\\\
|
||||
${9:i} & ${10:j} & ${11:k} & ${12:l} \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet matI4
|
||||
\begin{bmatrix}
|
||||
1 & 0 & 0 & 0 \\\\
|
||||
0 & 1 & 0 & 0 \\\\
|
||||
0 & 0 & 1 & 0 \\\\
|
||||
0 & 0 & 0 & 1 \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet mat42
|
||||
\begin{bmatrix}
|
||||
${1:a} & ${2:b} \\\\
|
||||
${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} \\\\
|
||||
${7:g} & ${8:h} \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet mat43
|
||||
\begin{bmatrix}
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
${4:d} & ${5:e} & ${6:f} \\\\
|
||||
${7:g} & ${8:h} & ${9:i} \\\\
|
||||
${10:j} & ${11:k} & ${12:l} \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet mat44
|
||||
\begin{bmatrix}
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} & ${7:g} & ${8:h} \\\\
|
||||
${9:i} & ${10:j} & ${11:k} & ${12:l} \\\\
|
||||
${13:m} & ${14:n} & ${15:o} & ${16:p} \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet detI2
|
||||
\begin{vmatrix}
|
||||
1 & 0 \\\\
|
||||
0 & 1 \\\\
|
||||
\end{vmatrix}
|
||||
|
||||
snippet det22
|
||||
\begin{vmatrix}
|
||||
${1:a} & ${2:b} \\\\
|
||||
${3:c} & ${4:d} \\\\
|
||||
\end{vmatrix}
|
||||
|
||||
snippet det23
|
||||
\begin{vmatrix}
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
${4:d} & ${5:e} & ${6:f} \\\\
|
||||
\end{vmatrix}
|
||||
|
||||
snippet det24
|
||||
\begin{vmatrix}
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} & ${7:g} & ${8:h} \\\\
|
||||
\end{vmatrix}
|
||||
|
||||
snippet detI3
|
||||
\begin{vmatrix}
|
||||
1 & 0 & 0 \\\\
|
||||
0 & 1 & 0 \\\\
|
||||
0 & 0 & 1 \\\\
|
||||
\end{vmatrix}
|
||||
|
||||
snippet det32
|
||||
\begin{vmatrix}
|
||||
${1:a} & ${2:b} \\\\
|
||||
${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} \\\\
|
||||
\end{vmatrix}
|
||||
|
||||
snippet det33
|
||||
\begin{vmatrix}
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
${4:d} & ${5:e} & ${6:f} \\\\
|
||||
${7:g} & ${8:h} & ${9:i} \\\\
|
||||
\end{vmatrix}
|
||||
|
||||
snippet det34
|
||||
\begin{vmatrix}
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} & ${7:g} & ${8:h} \\\\
|
||||
${9:i} & ${10:j} & ${11:k} & ${12:l} \\\\
|
||||
\end{vmatrix}
|
||||
|
||||
snippet detI4
|
||||
\begin{vmatrix}
|
||||
1 & 0 & 0 & 0 \\\\
|
||||
0 & 1 & 0 & 0 \\\\
|
||||
0 & 0 & 1 & 0 \\\\
|
||||
0 & 0 & 0 & 1 \\\\
|
||||
\end{vmatrix}
|
||||
|
||||
snippet det42
|
||||
\begin{vmatrix}
|
||||
${1:a} & ${2:b} \\\\
|
||||
${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} \\\\
|
||||
${7:g} & ${8:h} \\\\
|
||||
\end{vmatrix}
|
||||
|
||||
snippet det43
|
||||
\begin{vmatrix}
|
||||
${1:a} & ${2:b} & ${3:c} \\\\
|
||||
${4:d} & ${5:e} & ${6:f} \\\\
|
||||
${7:g} & ${8:h} & ${9:i} \\\\
|
||||
${10:j} & ${11:k} & ${12:l} \\\\
|
||||
\end{vmatrix}
|
||||
|
||||
snippet det44
|
||||
\begin{vmatrix}
|
||||
${1:a} & ${2:b} & ${3:c} & ${4:d} \\\\
|
||||
${5:e} & ${6:f} & ${7:g} & ${8:h} \\\\
|
||||
${9:i} & ${10:j} & ${11:k} & ${12:l} \\\\
|
||||
${13:m} & ${14:n} & ${15:o} & ${16:p} \\\\
|
||||
\end{vmatrix}
|
||||
|
||||
snippet pi
|
||||
\pi
|
||||
|
||||
snippet infinity
|
||||
\infty
|
||||
|
||||
snippet sum
|
||||
\sum_{i=${1:1}}^{${2:\\infty}}
|
||||
|
||||
snippet fraction
|
||||
\frac{${1:a}}{${2:b}}
|
||||
|
||||
snippet flexbrace
|
||||
\left($1\right)
|
||||
|
||||
snippet text
|
||||
\text{$1}
|
||||
|
||||
snippet Z
|
||||
\mathbb{Z}
|
||||
|
||||
snippet Z+
|
||||
\mathbb{Z}^{+}
|
||||
|
||||
snippet Z+0
|
||||
\mathbb{Z}^{+}_{0}
|
||||
|
||||
snippet Z-
|
||||
\mathbb{Z}^{-}
|
||||
|
||||
snippet Z-0
|
||||
\mathbb{Z}^{-}_0
|
||||
|
||||
snippet N
|
||||
\mathbb{N}
|
||||
|
||||
snippet R
|
||||
\mathbb{R}
|
||||
|
||||
snippet Rn
|
||||
\mathbb{R}^n
|
||||
|
||||
snippet Rm
|
||||
\mathbb{R}^m
|
||||
|
||||
snippet lambda
|
||||
\lambda
|
||||
|
||||
snippet my
|
||||
\mu
|
||||
|
||||
snippet bigVec
|
||||
\overrightarrow{$1}
|
||||
|
||||
snippet vec
|
||||
\vec{$1}
|
||||
|
||||
snippet colvec2
|
||||
\begin{bmatrix}
|
||||
${1:x_1} \\\\
|
||||
${2:x_2} \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet colvec3
|
||||
\begin{bmatrix}
|
||||
${1:x_1} \\\\
|
||||
${2:x_2} \\\\
|
||||
${3:x_3} \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet colvec4
|
||||
\begin{bmatrix}
|
||||
${1:x_1} \\\\
|
||||
${2:x_2} \\\\
|
||||
${3:x_3} \\\\
|
||||
${4:x_4} \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet colvec5
|
||||
\begin{bmatrix}
|
||||
${1:x_1} \\\\
|
||||
${2:x_2} \\\\
|
||||
${3:x_3} \\\\
|
||||
${4:x_4} \\\\
|
||||
${5:x_5} \\\\
|
||||
\end{bmatrix}
|
||||
|
||||
snippet +-
|
||||
\pm
|
||||
|
||||
snippet sqrt
|
||||
\sqrt{$1}
|
||||
|
||||
snippet nsqrt
|
||||
\sqrt[$1]{$2}
|
||||
|
||||
snippet abc
|
||||
${1:x} = \frac{-${3:b} \pm \sqrt{ ${3:b}^2 - 4 * ${4:c} * ${2:a} } }{ 2 * ${2:a} }$0
|
||||
|
||||
snippet ul
|
||||
\underline{$1}
|
||||
|
||||
snippet ulul
|
||||
\underline{\underline{$1}}$0
|
||||
|
||||
snippet boldText
|
||||
\textbf{$1}
|
||||
|
||||
snippet italicText
|
||||
\emph{$1}
|
||||
|
||||
snippet section
|
||||
\section{$1}$0
|
||||
|
||||
snippet subsection
|
||||
\subsection{$1}$0
|
||||
|
||||
snippet subsubsection
|
||||
\subsubsection{$1}$0
|
||||
|
||||
snippet enumerate
|
||||
\begin{enumerate}
|
||||
$0
|
||||
\end{enumerate}
|
||||
|
||||
snippet item
|
||||
\item $1
|
||||
|
||||
snippet transformation
|
||||
T : \mathbb{R}^${1:n} \to \mathbb{R}^${2:m}
|
||||
|
||||
snippet pow
|
||||
${1:a}^{${2:n}}$0
|
||||
|
||||
snippet inverse
|
||||
^{-1}
|
||||
|
||||
snippet transposed
|
||||
^{T}
|
||||
|
||||
snippet nxn
|
||||
${1:n} \times ${1:n}
|
||||
|
||||
snippet nxm
|
||||
${1:n} \times ${2:m}
|
||||
|
||||
snippet adj
|
||||
\text{adj}
|
||||
|
||||
snippet span
|
||||
\text{Span}
|
||||
|
||||
snippet squigles
|
||||
\\{$1\\}$0
|
||||
|
||||
snippet vecu
|
||||
\vec{u}
|
||||
|
||||
snippet vecv
|
||||
\vec{v}
|
||||
|
||||
snippet vecx
|
||||
\vec{x}
|
||||
|
||||
snippet vecb
|
||||
\vec{b}
|
||||
|
||||
snippet vecw
|
||||
\vec{w}
|
||||
|
||||
snippet u "Underscore"
|
||||
_{$1}$0
|
||||
|
||||
snippet dots "... in math mode"
|
||||
\dots
|
||||
|
||||
snippet nbasis
|
||||
B = \{\vec b_1, \dots, \vec b_n \\}
|
||||
|
||||
snippet dim
|
||||
\\text{dim }
|
||||
|
||||
snippet dot
|
||||
\\cdot
|
||||
@@ -0,0 +1,13 @@
|
||||
snippet tscl
|
||||
<$1/>
|
||||
snippet tone
|
||||
<$1>${0:$VISUAL}</$1>
|
||||
snippet tmul
|
||||
<$1>
|
||||
${0:$VISUAL}
|
||||
</$1>
|
||||
|
||||
snippet view
|
||||
<View>
|
||||
${0:$VISUAL}
|
||||
</View>
|
||||
@@ -0,0 +1,6 @@
|
||||
|
||||
snippet gear
|
||||
gearDict.insert(
|
||||
"$1",
|
||||
gear($2)[$1][$3]
|
||||
)
|
||||
@@ -0,0 +1,3 @@
|
||||
snippet basedpyrightErrors
|
||||
set makeprg=basedpyright
|
||||
set errorformat=%f:%l:%c\ -\ %t%*[^:]:%m
|
||||
@@ -0,0 +1,16 @@
|
||||
snippet backfill
|
||||
- name: Backfill ${1:$VISUAL} once a day for the last 5 days (gap filling)
|
||||
functionExternalId: icapi_datapoints_extractor
|
||||
cronExpression: "47 0 * * *"
|
||||
data:
|
||||
backfill: True
|
||||
sites:
|
||||
- ${1:$VISUAL}
|
||||
|
||||
snippet singleHeader
|
||||
CompileFlags:
|
||||
Add:
|
||||
- -D${1:SOME_IMPL_MACRO}
|
||||
Diagnostics:
|
||||
Suppress:
|
||||
- misc-definitions-in-headers
|
||||
@@ -0,0 +1,7 @@
|
||||
snippet fori
|
||||
{
|
||||
var ${1:i}: usize = ${2:0};
|
||||
while (i < ${3:10}) : (${1:i} += ${4:1}) {
|
||||
$0
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user