Skip to content

Instantly share code, notes, and snippets.

View abravalheri's full-sized avatar
💭
😆

Anderson Bravalheri abravalheri

💭
😆
  • University of Bristol
  • Bristol, UK
View GitHub Profile
@abravalheri
abravalheri / helpers.cmake
Last active July 4, 2022 23:39
CMake examples
if(NOT HOME)
if(WIN32)
string(REPLACE "\\" "/" HOME "$ENV{USERPROFILE}")
else()
set(HOME $ENV{HOME})
endif()
endif()
### Useful Functions and Macros ###
# Prints a list of messages, each one in a new line
https://github.com/abravalheri/restclient.py/ brainstorm
@abravalheri
abravalheri / commit.md
Last active March 16, 2024 04:00 — forked from stephenparish/commit.md
RFC: Git Commit Message Guidelines

Commit Message Guidelines

In the last few years, the number of programmers concerned about writing structured commit messages have dramatically grown. As exposed by Tim Pope in article readable commit messages are easy to follow when looking through the project history. Moreover the AngularJS contributing guides introduced conventions that can be used by automation tools to automatically generate useful documentation, or by developers during debugging process.

This document borrows some concepts, conventions and even text mainly from these two sources, extending them in order to provide a sensible guideline for writing commit messages.

Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

A variation of the Observer pattern have emerged over the past few yes in the JavaScript community. Called Event Emitter, this pattern seems to simplify the implementation and usage of events.

This is especially true for lightweight libraries in dynamic languages, such as Smoke Signals, where there is no Event object. Instead, plain strings are used to notify the event handlers, which are simple callback functions. The influence of jQuery in this pattern is also remarkable: the features can be accessed in an expressive way with short named methods.

@abravalheri
abravalheri / import.m
Created January 19, 2017 15:10 — forked from jaeandersson/import.m
Import a package into Octave using the syntax "import packagename.*"
function import(varargin)
% Import a package. Only entire packages can be imported currently.
error(nargchk(1, inf, nargin, 'struct'));
% Import the packages one-by-one
for i=1:nargin
import1(varargin{i});
end
end
function import1(pkgname)
@abravalheri
abravalheri / _poke.py
Last active May 9, 2017 13:16
ASCII ANSI Pokemon
#!/usr/bin/env python3
import io
# Separete the 3 ASCII/ANSI art pokemons originally from
# https://github.com/roberoonska/dotfiles/blob/master/colorscripts/poke
INTRO = """\
#!/bin/sh
initializeANSI()
git config --global alias.lola "log --graph --decorate --pretty=oneline --abbrev-commit --all"
@abravalheri
abravalheri / .sphinx-issue-README.md
Last active August 6, 2020 23:10
Example for sphinx issue

Describe the bug Hello, I have 3 muiltiline docstrings for type aliases (using the next-line """ documentation syntax). For 1 one them the docstring is correctly shown in the rendered HTML, but for 2 of them, the docstrings are ignored and the only thing shown is the alias of ... text. I suppose this is related to #4422, but I might be doing something wrong here (so if you could point me out in the correct direction that would be very good).

To Reproduce The following is a reduced example of something happening in pyscaffold's code base:

  1. Given a directory with file.py:
# file.py
from pathlib import Path
title published description tags cover_image
PyScaffold 4.0 is here 🔥
false
PyScaffold, the Python project template generator with batteries included, just released a new version with lots of new features and it is even easier to use!
python
packaging
opensource
news

It has been a long journey since PyScaffold v3 was released and a lot of things happened in the Python community especially regarding the packaging ecosystem...