Skip to content

Instantly share code, notes, and snippets.

def merge(vals, val):
"""
>>> tuple(merge(["1", "2"], "x"))
(["1x", "2"], ["1", "2x"], ["1", "2", "x"])
"""
for i,x in enumerate(vals + [""]):
yield vals[:i] + [x+val] + vals[i+1:]
def solve(n):
if n==0: yield []
@wonderful-panda
wonderful-panda / copyfiles.xml
Last active December 21, 2015 12:09
msbuildによるファイルコピーのサンプル *.obj, *.bak と、 .svn配下のファイルを除いてフォルダ階層ごとsrcdirからdestdirへコピーする
<?xml version="1.0"?>
<Project DefaultTargets="CopyFiles" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<TargetFiles Include="srcdir\**"
Exclude="**\*.obj;**\*.bak;**\.svn\**" />
</ItemGroup>
<Target Name="CopyFiles">
@wonderful-panda
wonderful-panda / mercurial.ini
Created August 1, 2013 04:57
[Mercurial]コミットメッセージに特定のキーワードが入っていたらphaseをsecretにする
[hooks]
commit.secret = python:~/secret.py:post_commit_secret
echo off
SETLOCAL enabledelayedexpansion
@rem 実行するコマンド
set COMMAND=echo
for %%i in (%*) do (
if %%i == /X (
echo XXX
) else if %%i == /Y (
@wonderful-panda
wonderful-panda / README.md
Created May 28, 2013 03:54
[TortoiseHg] コマンドログにフォーカスが移動したらIMEをOFFにする

TortoiseHg でコマンドログにフォーカスが移動した時にIMEをOFFにする

TortoiseHgのコマンドログでは、コマンドを直接入力して実行することが出来るけど、 ここでNon ASCII Charを入力しても(少なくともWindowsでは)ほぼ動かないし、 どちらにしても行頭はほぼ100%ASCII Charなので、ここにフォーカスが当たった瞬間に IMEをOFFにするExtensionを書いてみた。

Windows専用。

ごめんね。Windows7/32bit でしかテストしてなくてごめんね。

@wonderful-panda
wonderful-panda / funcbaseenumerable.vb
Created April 18, 2013 08:33
FuncBaseEnumerable.vb
Public Class FuncBaseEnumerable(Of T)
Implements IEnumerable(Of T)
Private ReadOnly _getEnumerator As Func(Of IEnumerator(Of T))
Public Sub New(getEnumerator As Func(Of IEnumerator(Of T)))
_getEnumerator = getEnumerator
End Sub
Public Function GetEnumerator() As IEnumerator(Of T) Implements IEnumerable(Of T).GetEnumerator
@wonderful-panda
wonderful-panda / eachslice.vb
Created March 29, 2013 03:45
VBでeach_slice
Imports System.Runtime.CompilerServices
Namespace Hoge
Class EachSliceEnumerator(Of T)
Implements IEnumerator(Of T())
Private ReadOnly _internal As IEnumerator(Of T)
Private ReadOnly _size As Integer
Private _current As T() = Nothing
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using NUnit.Framework;
namespace groupby
{
public static class Class1
select
e.obj_id,
max(decode(e.key, 'A', e.value, null)) A,
max(decode(e.key, 'B', e.value, null)) B,
from EAV e
group by e.obj_id;
@wonderful-panda
wonderful-panda / gist:4493360
Created January 9, 2013 14:08
Spockもどき
from spock import spec, mark, d, v
@spec
def test():
"""length of Spock's and his friends' names"""
@mark
def expect():
assert(len(v.name) == v.length)