Skip to content

Instantly share code, notes, and snippets.

Avatar
🏠
Working from home

Lucas Martins Mendes Luctins

🏠
Working from home
View GitHub Profile
View org-format-image.el
(defun org-format-hyperlink (link-text-start link-text-end)
"Format the selected text as a orgmode link prompting for the link"
(interactive "r")
;(setq clip (shell-command-to-string "xclip -selection clip -t TEXT -o"))
(setq dest-link (read-string "Link to insert: ")); nil nil (nth 0 kill-ring)))
(if (not (string-blank-p dest-link))
(progn (goto-char link-text-start)
(setq tmp-link (concat `"[[" dest-link `"][" (buffer-substring link-text-start link-text-end) '"]]"))
(delete-region link-text-start link-text-end)
(insert tmp-link))
@Luctins
Luctins / dither_image_blocks.py
Created Oct 21, 2021
1 Bit image dithering with blocks
View dither_image_blocks.py
from PIL import Image
# from functools import reduce
import numpy as np
def pxmean(m, y0, x0, s):
c = 0
for _x in range(0, pxsize):
@Luctins
Luctins / ir-remote.json
Last active Sep 25, 2021
RGB Lamp remote controller buttons (IR remote, mapped by time)
View ir-remote.json
{
"on": [ 9630, 4420, 630, 570, 580, 570, 580, 570, 630, 520, 630, 570, 580, 570, 630, 570, 580, 570, 580, 1670, 630, 1620, 630, 1670, 580, 1670, 630, 1670, 580, 1670, 630, 1620, 630, 1670, 630, 1620, 630, 570, 630, 1620, 630, 570, 580, 570, 630, 570, 580, 1670, 630, 570, 580, 570, 630, 1670, 630, 520, 680, 1620, 630, 1670, 580, 1670, 680, 520, 680, 1570, 630 ],
"off": [ 9580, 4420, 680, 470, 680, 470, 680, 520, 680, 470, 680, 470, 680, 470, 680, 520, 680, 470, 680, 1570, 680, 1620, 680, 1570, 680, 1570, 680, 1620, 680, 1570, 680, 1570, 680, 1620, 680, 1570, 680, 1570, 730, 1570, 680, 470, 680, 520, 680, 470, 680, 1620, 680, 470, 680, 520, 680, 470, 680, 520, 680, 1570, 680, 1570, 730, 1570, 680, 470, 730, 1570, 680 ],
"red": [ 9580, 4470, 630, 520, 630, 570, 580, 570, 630, 570, 580, 570, 580, 570, 630, 520, 630, 570, 580, 1670, 580, 1670, 630, 1620, 630, 1620, 630, 1620, 630, 1620, 630, 1670, 630, 1620, 580, 570, 630, 1670, 630, 1620, 630, 520, 630, 1670, 630, 520, 630, 570, 630, 520, 630, 1620, 630, 570,
@Luctins
Luctins / spinnyThing.rs
Last active Jun 29, 2021
Little ASCII spinner I wrote in rust to learn how to use iterators
View spinnyThing.rs
struct SpinnyThing {
index: usize,
}
impl SpinnyThing {
const V: [&'static str; 4] = ["/","-", "\\", "|"];
fn new() -> SpinnyThing {
SpinnyThing { index: 0 }
}
}
@Luctins
Luctins / quartus20.01.desktop
Created May 28, 2021
Quartus .desktop file
View quartus20.01.desktop
[Desktop Entry]
Type=Application
Name=Quartus Intel FPGA Lite 20.1
Exec=/home/mluctins/.intelFPGA/20.1/quartus/bin/quartus
Terminal=false
GenericName=EDA
Icon=/home/mluctins/.local/share/icons/quartus.ico
Categories=Development;EDA;
StartupWMClass=Quartus
View settle_t.m
# Settle time
# @author: Lucas Martins Mendes - contact@luctins.me
function ret = settle_t(F, X = [], T = [], tolerance=0.02)
if size(X) == [0 0] || size(T) == [0 0]
[X, T] = step(F);
endif
_X = flip(X);
_T = flip(T);
s_top = (1+tolerance)*dcgain(F);
s_bot = (1-tolerance)*dcgain(F);
@Luctins
Luctins / stophd.sh
Created Mar 16, 2021
Alias to make silly USB hard drives stop spinning
View stophd.sh
alias stophd='sudo hdparm -B1' #<path to drive>
#Usage: stophd /dev/sdb
@Luctins
Luctins / util.h
Last active Sep 8, 2021
C Utilities
View util.h
/**
Copyright (c) 2020 Lucas Martins Mendes.
All rights reserved.
Redistribution and use in source and binary forms are permitted
provided that the above copyright notice and this paragraph are
duplicated in all such forms and that any documentation,
advertising materials, and other materials related to such
distribution and use acknowledge that the software was developed
by the Lucas M. The name of the
@Luctins
Luctins / print_num.c
Created Dec 17, 2020
Routine for printing numbers on platforms that have no printf (this one specifically is for NIOS II), DEBUG_OUTPUT is your the string printing routine of choice.
View print_num.c
/**
@brief print a number as a decimal (because of memory constraints the limited printf only works for hex and strings, no decimals).
*/
void print_num(alt_u32 num)
{
char buff[15],tmp;
char * str = buff;
alt_u8 dp=0; /*number of decimal places*/
if(num == 0)
{
@Luctins
Luctins / setdisplaybrightness.sh
Created Dec 15, 2020
ddcutil monitor brightness adjust alias
View setdisplaybrightness.sh
alias setmonitorbrightness='sudo ddcutil --display 1 setvcp 10'