Skip to content

Instantly share code, notes, and snippets.

View sai-prasanna's full-sized avatar
🤖
=42

Sai sai-prasanna

🤖
=42
View GitHub Profile
@sai-prasanna
sai-prasanna / Flask.py
Created August 12, 2013 05:53
Redirect url to correct one when id is correct. Consider blog with /id/slug as url for a specific post if user enters /id/foo it must redirect to /id/slug
@app.route('/post/<id>')
@app.route('/post/<id>/<slug>')
def view_post(id, slug=None):
post = models.Post.query.get_or_404(id)
if post.slug != slug:
return redirect(url_for('post', id=id,slug = post.slug))
return render_template("post.html", post=post)
@sai-prasanna
sai-prasanna / gist:6240529
Created August 15, 2013 12:40
Merge Dictionary and update duplicates
from collections import Counter
a = {'a': 1}
b = {'a': 2, 'b': 3}
c = Counter(a) + Counter(b)

Moving from jQuery

Events

// jQuery
$(document).ready(function() {
  // code
})
import time
import sys
ms = int(sys.argv[1]) if len(sys.argv) > 1 else 250
words, start = 0, time.time()
print "\n"*2
try:
for line in sys.stdin:
@sai-prasanna
sai-prasanna / UITableView.swift
Created July 23, 2015 06:00
Reload Tableview animation
extension UITableView {
func reloadDataAnimated(animated:Bool) {
reloadData()
if animated {
let animation = CATransition()
animation.type = kCATransitionPush
animation.subtype = kCATransitionFromBottom
animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
/**
* @providesModule PatientList
*/
import NavigationBar from 'react-native-navbar';
import NavigationButtons from 'NavigationButtons';
import React, { ListView, Navigator, StyleSheet, Text, TextInput, TouchableHighlight, View } from 'react-native';
import { connect } from 'react-redux/native'
@connect(state => ({
patients: state.patients
@sai-prasanna
sai-prasanna / develop_ios_legacy_xcode.sh
Created January 2, 2017 05:44
Allows you to run development builds in new versions of iOS from old XCode
#!/bin/bash
OLD_XCODE_PATH=${1:-/Applications/Xcode7.app}
NEW_XCODE_PATH=${2:-/Applications/Xcode.app}
IOS_NEW_VERSION=10
DEVICE_SUPPORT_PATH=Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport
ln -s $NEW_XCODE_PATH/$DEVICE_SUPPORT_PATH/$IOS_NEW_VERSION.* $OLD_XCODE_PATH/$DEVICE_SUPPORT_PATH/
@sai-prasanna
sai-prasanna / sentencepiece_tokenizer.py
Created August 4, 2018 15:05
SentencePiece AllenNLP
import os
import tempfile
import logging
import sentencepiece as spm
from typing import List
from overrides import overrides
from allennlp.common import Params
from allennlp.data.tokenizers.token import Token
from allennlp.data.tokenizers.tokenizer import Tokenizer
@sai-prasanna
sai-prasanna / .dir-locals.el
Last active April 25, 2019 13:11
Make lsp autocomplete work in emacs over TRAMP
;; Put this in root directory of your project
;; Install pyls in the project environment
;; pip install python-language-server
((python-mode . ((eval . (progn (require 'lsp-mode)
(lsp-register-client
(make-lsp-client :new-connection (lsp-tramp-connection "~/miniconda3/envs/znlp/bin/pyls")
:major-modes '(python-mode)
:remote? t
:server-id 'remote-pyls))))
(eval . (setq lsp-clients-python-command '("~/miniconda3/envs/znlp/bin/pyls")))
@sai-prasanna
sai-prasanna / multiprocess_seq2seq.py
Last active February 26, 2020 09:25
Multiprocess seq2seq reader using pytorch Dataloader, Dataset.
import csv
from typing import Dict, Optional
import logging
import torch
import random
from collections import Counter
import numpy as np
from overrides import overrides
from torch.utils.data import Dataset, IterableDataset, DataLoader, DistributedSampler