Skip to content

Instantly share code, notes, and snippets.

@heikkil
heikkil / testing_oo_fasta.pl
Created February 7, 2014 09:55
Testing simple OOP approach to FASTA parsing
#!/usr/bin/env perl
package FastaSeq;
#use Mo qw'build default builder coerce is required';
use Mo;
has id => ();
has descr => ();
has seq => ();
1;
@heikkil
heikkil / obogrep
Created April 21, 2014 07:06
grep for obo ontology files
#!/usr/bin/env perl
=head1 NAME
obogrep - grep obo entries with a string
=head1 SYNOPSIS
B<obogrep> [B<--version> | [B<-?|-h|--help>] | [B<-g|--debug>] |
[B<-v|--invert-match>] | [B<-c|--count>] |query obofile
@heikkil
heikkil / user-rules.xml
Last active August 29, 2015 14:11
New Plain English rules for LanguageTool 2.7
<category name="Redundant Phrases" type="style">
<!-- main source http://en.wikipedia.org/wiki/List_of_plain_English_words_and_phrases -->
<!-- some rules belonging to other categories included -->
<!-- xxx marks optional edge tokens that cause an error if uncommented -->
<rule id="ABUNDANCE" name="abundance">
<pattern>
<token>abundance</token>
</pattern>
"
_c_enter _q_uote _e_macs-lisp _L_aTeX:
_l_atex _e_xample _p_erl _i_ndex:
_a_scii _v_erse _P_erl tangled _I_NCLUDE:
_s_rc ^ ^ plant_u_ml _H_TML:
_h_tml ^ ^ ^ ^ _A_SCII:
"
("e" (progn (hot-expand "<s") (insert "emacs-lisp") (forward-line)))
("p" (progn (hot-expand "<s") (insert "perl") (forward-line)))
#!/usr/bin/env perl
# Turn consecutive non-empty lines of plain text into paragraphs
local $/ = "\n\n"; #paragraph separator
while (<>) {
chomp($_);
# Replace newlines inside paragraphs by spaces and remove multiple spaces
@heikkil
heikkil / orphan_raw
Created February 4, 2016 07:16
delete raw image files without matching jpgs in the same directory
#!/usr/bin/env perl
use Modern::Perl;
use File::Find;
use Getopt::Long;
use constant PROGRAMME_NAME => 'orphan_raw';
use constant VERSION => '0.2';
GetOptions(
'v|version' => sub{ print PROGRAMME_NAME, ", version ", VERSION, "\n";
@heikkil
heikkil / raw_copy
Created February 4, 2016 07:17
copy raw images corresponding to jpgs in a subdir into an other subdir
#!/usr/bin/env perl
use Modern::Perl;
use File::Find;
use Getopt::Long;
use constant PROGRAMME_NAME => 'raw_copy';
use constant VERSION => '0.2';
GetOptions(
'v|version' => sub{ print PROGRAMME_NAME, ", version ", VERSION, "\n";
@heikkil
heikkil / counsel-yank-fish-history.el
Created January 29, 2016 07:24
Search fish history using ivy mode
;; mod from http://blog.binchen.org/posts/use-ivy-mode-to-search-bash-history.html
(require 'dash)
(defun counsel-yank-fish-history ()
"Yank the fish history"
(interactive)
(let (hist-cmd collection val)
(shell-command "history -r") ; reload history
(setq collection
(nreverse
(split-string (with-temp-buffer (insert-file-contents (file-truename "~/.config/fish/fish_history"))
@heikkil
heikkil / feh-remove.sh
Last active February 16, 2017 07:06
Action script for feh to remove the current image
#!/bin/sh
# ~/bin/feh-remove.sh
DIR=`dirname "$1"`
if [ ! -d $DIR/removed ]; then
mkdir $DIR/removed
fi;
mv "$1" $DIR/removed
@heikkil
heikkil / feh-copy.sh
Last active February 16, 2017 07:07
Action script for feh to create a copy of the current image
#!/bin/sh
# ~/bin/feh-copy.sh
DIR=`dirname "$1"`
if [ ! -d $DIR/copied ]; then
mkdir $DIR/copied
fi;
cp "$1" $DIR/copied