Skip to content

Instantly share code, notes, and snippets.

Avatar

Brandon Istenes brandones

View GitHub Profile
@brandones
brandones / update-translations.yml
Created Sep 1, 2021
GitHub Action to download translations from Transifex
View update-translations.yml
name: Update translation files from Transifex
on:
schedule:
- cron: '0 0 * * *'
workflow_dispatch:
jobs:
build:
@brandones
brandones / link-order.json
Created May 20, 2021
Config needed for openmrs-spa as temporary solution for ordering links
View link-order.json
@brandones
brandones / schema.ts
Last active Dec 16, 2020
Config schema for esm-patient-registration
View schema.ts
import { Type, validator, validators } from '@openmrs/esm-module-config';
const builtInFields = ['name', 'gender', 'dob', 'address', 'id', 'death']
export const schema = {
sections: {
_type: Type.Array,
_default: ['demographics', 'contact', 'ids', 'death'],
_description: "An array of strings which are the keys from 'sectionDefinitions'",
_elements: {
@brandones
brandones / remove_untranslated.py
Created May 5, 2020
Remove strings matching the english string from a messages_LL.properties file
View remove_untranslated.py
#!/usr/bin/env python3
import argparse
import re
def main(lang):
en_strings = properties_to_dict(read_file("en"))
t_strings = properties_to_dict(read_file(lang))
translated = {k: t_strings[k] for k in t_strings if en_strings[k] != t_strings[k]}
@brandones
brandones / array-config.js
Last active Nov 7, 2019
Arrays in OpenMRS MF Configurations
View array-config.js
// Example 1: Array of primitives
// input
foo: [2, 42, 99]
// schema
{
foo: {
default: [1, 1, 2, 3],
arrayElements: {
View nested-config.js
Example config:
foo: {
bar: 0,
baz: {
qux: "abc",
quy: "xyz"
}
}
View append_roxygen_script_doc_to_readme.sh
#!/bin/bash
#
# Extracts the Roxygen package documentation from each script file in the
# package root directory and appends it to README.md
#
# Documentation that you want included should start on the second line of the script
OUTFILE="README.md"
r_files=( *.R )
@brandones
brandones / odrive-sync.sh
Created Nov 9, 2018
Nautilus context menu sync with ODrive
View odrive-sync.sh
#!/bin/bash
# Put this file in ~/.local/share/nautilus/scripts/
# Remember to `chmod +x` it
IFS='
'
for file in ${NAUTILUS_SCRIPT_SELECTED_FILE_PATHS}
do
if [[ $file == *.cloud ]] || [[ $file == *.cloudf ]]
then
@brandones
brandones / dbexport.py
Created Aug 14, 2018
Jython: use Jackcess all the tables from a password-protected MS Access database to CSV
View dbexport.py
#! /usr/bin/env jython
#
# Based on https://gist.github.com/shapr/507bcbf3e8cfdc5d3549
#
# Install prereqs:
# sudo apt-get install jython libcommons-logging-java libcommons-lang-java
#
# Put the following jars into the same directory as this file:
# jackcess: https://sourceforge.net/projects/jackcess/files/
# jackcess-encrypt: https://sourceforge.net/projects/jackcessencrypt/files/
@brandones
brandones / matrix_deleted_pivot.m
Created Sep 26, 2017
Matlab implementation of the "deleted pivot" operation described by Greg Kuperberg in "Kasteleyn cokernels"
View matrix_deleted_pivot.m
1; % script file
function res = deleted_pivot(M, i, j)
% Calculates the deleted pivot of matrix M at row i, column j
% as described by Greg Kuperberg in "Kasteleyn cokernels"
% X = the jth column of M with element i removed
X = [M(:,j)(1:i-1); M(:,j)(i+1:end)];
% Yt = the ith row of M with element j removed
Yt = [M(i,:)(1:j-1), M(i,:)(j+1:end)];