Skip to content

Instantly share code, notes, and snippets.

View laytan's full-sized avatar

Laytan laytan

  • The Netherlands
  • 23:23 (UTC +02:00)
  • X @laytanl_
View GitHub Profile
@laytan
laytan / customizer.php
Last active September 13, 2019 19:21
Easy wordpress social media icons, simply add an index to the theme_name_get_social_opts array and a everything to get it showing is handled.
<?php
if ( ! function_exists( 'theme_name_theme_customize_register' ) ) {
/**
* Register individual settings through customizer's API.
*
* @param WP_Customize_Manager $wp_customize Customizer reference.
*/
function theme_name_theme_customize_register( $wp_customize ) {
$wp_customize->add_section(
'theme_name_contact',
@laytan
laytan / safe-rm.sh
Created June 21, 2021 16:52
Safe rm
#!/bin/bash
# Laytan Laats - 1012512 - INFD 20-1
# Check if file is being sourced, which will need to add the alias
if [[ "${BASH_SOURCE[0]}" != "${0}" ]]
then
echo "Adding safe delete alias."
alias rm="$(pwd)/1012512.sh"
return
fi
# Configuration for Alacritty, the GPU enhanced terminal emulator.
# Import additional configuration files
#
# Imports are loaded in order, skipping all missing files, with the importing
# file being loaded last. If a field is already present in a previous import, it
# will be replaced.
#
# All imports must either be absolute paths starting with `/`, or paths relative
# to the user's home directory starting with `~/`.
@laytan
laytan / main.odin
Last active April 25, 2024 20:18
UUIDV4 in Odin
package uuid4
import "core:crypto"
import "core:io"
import "core:mem"
UUID_SIZE :: 16
UUID4 :: distinct [UUID_SIZE]byte
generate :: proc() -> (u: UUID4) #no_bounds_check {
@laytan
laytan / hiredis.odin
Created May 24, 2023 18:04
In progress Redis (hiredis) bindings for Odin
package hiredis
import "core:c"
foreign import lib "./libhiredis.a"
ERR :: -1
OK :: 0
ERR_IO :: 1
ERR_OTHER :: 2
@laytan
laytan / build.bat
Last active November 14, 2023 22:15
Orca in Odin
@echo off
setlocal enabledelayedexpansion
set ORCA_DIR=..\..\third-party\orca
set STDLIB_DIR=%ORCA_DIR%\src\libc-shim
:: common flags to build wasm modules
set wasmFlags=--target=wasm32^
--no-standard-libraries ^
-mbulk-memory ^
@laytan
laytan / main.odin
Last active April 19, 2024 08:53
Raylib logging callback to Odin logger
logger: log.Logger
rl_log_buf: []byte
rl_log :: proc "c" (logLevel: rl.TraceLogLevel, text: cstring, args: libc.va_list) {
context = runtime.default_context()
context.logger = logger
level: log.Level
switch logLevel {
case .TRACE, .DEBUG: level = .Debug
case .ALL, .NONE, .INFO: level = .Info
@laytan
laytan / generated.odin
Last active December 19, 2023 00:00
Odin test runner
package generated_tests
import test_gen "core:testing/generator"
import "core:os"
import "core:testing"
import test_core_crypto "../../../tests/core/crypto"
main :: proc() {
tests := []testing.Internal_Test{
@laytan
laytan / lsp.odin
Last active January 18, 2024 03:19
Incomplete LSP example Odin
package lsp
import "core:bufio"
import "core:encoding/json"
import "core:io"
import "core:log"
Null :: distinct struct{}
Initialize_Error :: Response_Error(Initialize_Error_Data)
@laytan
laytan / minicoro.asm
Last active February 27, 2024 12:04
Odin minicoro source port (only darwin support for now)
/*
vim: syntax=armasm nospell
Some of the following assembly code is taken from LuaCoco by Mike Pall.
See https://coco.luajit.org/index.html
MIT license
Copyright (C) 2004-2016 Mike Pall. All rights reserved.