Skip to content

Instantly share code, notes, and snippets.

View MrDwarf7's full-sized avatar
🏠
Working from home

Blake B. MrDwarf7

🏠
Working from home
  • Australia
View GitHub Profile
#[derive(Serialize, Deserialize, Debug, Clone, Default)]
pub struct ConfigSqlFiles {
files: Option<Vec<Option<PathBuf>>>,
}
impl ConfigSqlFiles {
pub fn get_files(&self) -> &Vec<Option<PathBuf>> {
self.files.as_ref().unwrap()
}
}
@MrDwarf7
MrDwarf7 / jsonp.js
Created March 2, 2024 03:03 — forked from gf3/jsonp.js
Simple JSONP in vanilla JS
/**
* loadJSONP( url, hollaback [, context] ) -> Null
* - url (String): URL to data resource.
* - hollaback (Function): Function to call when data is successfully loaded,
* it receives one argument: the data.
* - context (Object): Context to invoke the hollaback function in.
*
* Load external data through a JSONP interface.
*
* ### Examples
@MrDwarf7
MrDwarf7 / tmux-cheatsheet.markdown
Created January 8, 2024 09:50 — forked from MohamedAlaa/tmux-cheatsheet.markdown
tmux shortcuts & cheatsheet

tmux shortcuts & cheatsheet

start new:

tmux

start new with session name:

tmux new -s myname
@MrDwarf7
MrDwarf7 / msys2-setup.md
Created December 29, 2023 03:29 — forked from roblogic/msys2-setup.md
MSYS2 first time setup

MSYS2 is a minimalist linux/unix shell environment for Windows.

Quote: "A modern replacement for MSYS bringing recent versions of the GNU toolchains, Git and other common Unix command line tools to the Windows platform"

1. Install

Do all the steps listed here: http://msys2.github.io/
(troubleshooting guide here: https://github.com/msys2/msys2/wiki/MSYS2-installation )

2. Set up proxies

@MrDwarf7
MrDwarf7 / ConvolutedTypescript.ts
Created November 30, 2023 22:41
ConvolutedScriptsTwo
import _ from 'lodash';
type ConfusingObject = { [key: string]: any };
const processData = (data: ConfusingObject): ConfusingObject => {
const deepClonedData = _.cloneDeep(data);
_.forEach(deepClonedData, (value, key) => {
if (_.isArray(value)) {
deepClonedData[key] = _.chain(value).map(_.toString).sort().value();
} else if (_.isPlainObject(value)) {
@MrDwarf7
MrDwarf7 / ConvolutedTypescript.ts
Created November 30, 2023 22:32
Overly convoluted Language demonstrations
type MaybePromise<T> = T | Promise<T>;
type ConfusedFunction = <T>(arg: MaybePromise<T>) => Promise<MaybePromise<T>>;
const fetchData: ConfusedFunction = async (data) => {
const resolveData = await new Promise(resolve => setTimeout(() => resolve(data), 1000));
return typeof resolveData === 'number' ? Promise.resolve(resolveData) : resolveData;
};
(async () => {
const confusingArray = [fetchData(10), Promise.resolve(20), 30];
@MrDwarf7
MrDwarf7 / git-pushing-multiple.rst
Created October 24, 2023 00:30 — forked from rvl/git-pushing-multiple.rst
How to push to multiple git remotes at once. Useful if you keep mirrors of your repo.

Pushing to Multiple Git Repos

If a project has to have multiple git repos (e.g. Bitbucket and Github) then it's better that they remain in sync.

Usually this would involve pushing each branch to each repo in turn, but actually Git allows pushing to multiple repos in one go.

If in doubt about what git is doing when you run these commands, just