Skip to content

Instantly share code, notes, and snippets.

View JohnAtl's full-sized avatar

John T. Johnson JohnAtl

View GitHub Profile
@JohnAtl
JohnAtl / insert_filename_as_header.rb
Created February 7, 2020 20:25
Code to help with note-link-janitor
#!/usr/bin/ruby
#
# Inserts the file's name as the first header in the file, if it isn't already there.
# Assumes filename begins with a 14 digit zettelkasten ID.
# Original file saved as filename.bak.
#
# As always, caveat emptor. This code could harm your files, so try it on a backup.
#
Dir.glob('*.md') do |filename|
puts "working on: #{filename}"
%
% Insert events based on transitions on a high-level input channel.
%
% As with all code from the internet, verify that it works for your unique situation.
%
function EEG = hl1_to_events(EEG)
% Find the index of the high-level (trigger) channel.
hl1_index = eeg_chaninds(EEG, 'HL1');
hl1 = EEG.data(hl1_index,:);
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/Applications/PyCharm with Anaconda plugin .app/Contents/plugins/python/helpers/pydev/_pydev_bundle/pydev_umd.py", line 197, in runfile
pydev_imports.execfile(filename, global_vars, local_vars) # execute the script
File "/Applications/PyCharm with Anaconda plugin .app/Contents/plugins/python/helpers/pydev/_pydev_imps/_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "/Users/john/PycharmProjects/mne-test/mne-test.py", line 16, in <module>
ica.plot_properties(raw, picks=ica.exclude)
File "/Users/john/PycharmProjects/mne-test/venv/lib/python3.7/site-packages/mne/preprocessing/ica.py", line 1633, in plot_properties
figsize=figsize, show=show, reject=reject)
@JohnAtl
JohnAtl / macpowerusers.css
Created April 16, 2020 13:22
Mellow theme for Stylus and the Mac Power Users Discourse
@import url(http://fonts.googleapis.com/css?family=Inconsolata);
@import url(http://fonts.googleapis.com/css?family=PT+Sans);
@import url(http://fonts.googleapis.com/css?family=PT+Sans+Narrow:400,700);
article,
aside,
details,
figcaption,
figure,
footer,
header,
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "/Users/john/.conda/envs/mneredux/lib/python3.7/site-packages/mne/preprocessing/ica.py", line 1633, in plot_properties
figsize=figsize, show=show, reject=reject)
File "/Users/john/.conda/envs/mneredux/lib/python3.7/site-packages/mne/viz/ica.py", line 472, in plot_ica_properties
plt_show(show)
File "/Users/john/.conda/envs/mneredux/lib/python3.7/site-packages/mne/viz/utils.py", line 110, in plt_show
(fig or plt).show(**kwargs)
File "/Users/john/.conda/envs/mneredux/lib/python3.7/site-packages/matplotlib/pyplot.py", line 272, in show
return _show(*args, **kw)
@JohnAtl
JohnAtl / interpol.m
Created July 15, 2020 14:33
Interpolate missing EEG channels based on chanlocs of all channels.
function [EEG] = interpol( EEG, chanlocs, method )
%INTERPOL Performs channel interpolation on eeglab EEG structure
% Receives the EEG structure (see EEGLAB documentation), the disered final chanlocs to
% have on the data and the interpolation method and the algorithm finds the missing
% channels in the EEG structure and calls the pop_interp method from EEGLAB toolbox to
% compute the interpolations. Afterwords sorts the channels to the provided chanlocs
% order and fixes the icachansind field.
%
% Input:
% EEG - the EEG structure (EEGLAB)
@JohnAtl
JohnAtl / karabiner.json
Created December 27, 2021 15:25
My Karabiner-Elements config file. CapsLock when held is Hyper, when tapped sends F19. LeftShift when held is shift, when tapped sends F20
{
"global": {
"check_for_updates_on_startup": true,
"show_in_menu_bar": false,
"show_profile_name_in_menu_bar": false
},
"profiles": [
{
"complex_modifications": {
"parameters": {
@JohnAtl
JohnAtl / Window Macros.kmmacros
Created December 29, 2021 14:23
Keyboard Maestro Window Mover macros that account for the menu bar
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>Activate</key>
<string>OnceAfterTrigger</string>
<key>AddToMacroPalette</key>
<false/>
<key>AddToStatusMenu</key>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>Activate</key>
<string>Normal</string>
<key>CreationDate</key>
<real>502680771.10080498</real>
<key>Macros</key>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>Activate</key>
<string>Normal</string>
<key>CreationDate</key>
<real>502680771.10080498</real>
<key>Macros</key>