Mercurial > ec-dotfiles
annotate bin/index2 @ 369:0adc967bafda
Added vim rule for fstab.
| author | Edho Arief <edho@myconan.net> | 
|---|---|
| date | Sun, 17 Jun 2012 09:57:17 +0000 | 
| parents | 5bafb912837e | 
| children | 
| rev | line source | 
|---|---|
| 
124
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
1 #!/bin/sh | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
2 | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
3 # Index version 2! Much better than first one. Hopefully. | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
4 | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
5 # Execute safely. | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
6 safe_path() | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
7 { | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
8 __start=$(printf "%s" | cut -c 1) | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
9 __path= | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
10 case "${__start}" in | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
11 .|/) __path="$*";; | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
12 *) __path="./$*";; | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
13 esac | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
14 printf "%s" "${__path}" | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
15 } | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
16 | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
17 get_basename() { basename "$(safe_path "$*")"; } | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
18 get_basename_pipe() { sed -e 's#.*/\([/]*\)$#\1#'; } | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
19 | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
20 filename_hash() | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
21 { | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
22 printf "%s" "$(get_basename "$*")" | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
23 } | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
24 generate_table_of_files() | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
25 { | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
26 filetable_generator "$@" | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
27 } | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
28 filetable_generator() | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
29 { | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
30 # Uses perl for speed. | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
31 perl -e 'use File::Find; | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
32 use Digest::SHA1 qw(sha1_hex); | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
33 use_warnings; | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
34 use_strict; | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
35 sub printer { printf("%s\n", sha1_hex($_)) if(-e && -f && !-l); } | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
36 find(\&printer, @ARGV);' "$@" | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
37 } | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
38 _srcdir=. | 
| 
 
5bafb912837e
Massive addition of old scripts collection.
 
Edho Prima Arief <edho@myconan.net> 
parents:  
diff
changeset
 | 
39 generate_table_of_files "$@" | 
