about summary refs log tree commit diff stats
path: root/cpp/012run
Commit message (Expand)AuthorAgeFilesLines
* 811 - first test for arraysKartik K. Agaram2015-02-211-1/+1
* 810Kartik K. Agaram2015-02-211-3/+3
* 800Kartik K. Agaram2015-02-201-1/+7
* 799 - 'get' on recordsKartik K. Agaram2015-02-201-0/+1
* 798 - start of record supportKartik K. Agaram2015-02-191-6/+13
* 793Kartik K. Agaram2015-02-191-9/+7
* 789Kartik K. Agaram2015-02-191-1/+1
* 788 - reorg, showing off how tangle makes itKartik K. Agaram2015-02-191-199/+0
* 787 - arithmetic operationsKartik K. Agaram2015-02-191-2/+204
* 785Kartik K. Agaram2015-02-191-1/+17
* 783Kartik K. Agaram2015-02-191-7/+17
* 782 - promote literate version to canonical C++ versionKartik K. Agaram2015-02-181-0/+41
ld } /* Literal.Number.Integer */ .highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ .highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ .highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ .highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ .highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ .highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ .highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
# Copyright (C) 2011  Roman Zimbelmann <romanz@lavabit.com>
# This software is distributed under the terms of the GNU GPL version 3.

import os.path

def next_available_filename(fname, directory="."):
	existing_files = os.listdir(directory)

	if fname not in existing_files:
		return fname
	if not fname.endswith("_"):
		fname += "_"
		if fname not in existing_files:
			return fname

	for i in range(1, len(existing_files) + 1):
		if fname + str(i) not in existing_files:
			return fname + str(i)