aboutsummaryrefslogtreecommitdiff
path: root/functions/__mark_set.fish
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fl.fischer@fau.de>2016-05-02 16:12:08 +0200
committerFlorian Fischer <florian.fl.fischer@fau.de>2016-05-02 16:12:08 +0200
commit5e59a460d01538d89fc1bdd11a4e30a2c1b669dd (patch)
tree175f8c1b9b3d8d7749a5e4f76e356b29568ebe76 /functions/__mark_set.fish
parent552edcc7f97b8eddbd6a97481b4d04f0704748ce (diff)
downloadmark-5e59a460d01538d89fc1bdd11a4e30a2c1b669dd.tar.gz
mark-5e59a460d01538d89fc1bdd11a4e30a2c1b669dd.zip
join all files into mark.fish
Diffstat (limited to 'functions/__mark_set.fish')
-rw-r--r--functions/__mark_set.fish74
1 files changed, 0 insertions, 74 deletions
diff --git a/functions/__mark_set.fish b/functions/__mark_set.fish
deleted file mode 100644
index c995f2d..0000000
--- a/functions/__mark_set.fish
+++ /dev/null
@@ -1,74 +0,0 @@
-function __mark_set --description 'mark a day in a store'
- # defaults
- set mark_store $__mark_store
- set sign "*"
- set day (math (date +"%d") "*1")
- set month (math (date +"%m") "*1")
- set year (date +"%Y")
-
- # parse argv
- for i in (seq 1 (count $argv))
- if string match -q -- "-d=*" "$argv[$i]"
- set day (string replace -- "-d=" "" $argv[$i])
- else if string match -q -- "-m=*" "$argv[$i]"
- set month (string replace -- "-m=" "" $argv[$i])
- else if string match -q -- "-y=*" "$argv[$i]"
- set year (string replace -- "-y=" "" $argv[$i])
- else if string match -q -- "-s=*" "$argv[$i]"
- set mark_store (string replace -- "-s=" "" "$argv[$i]")
- else if string match -q -- "-z=*" "$argv[$i]"
- set sign (string replace -- "-z=" "" "$argv[$i]")
- else
- echo unrecognised option: $argv[$i] >&2
- return 1
- end
- end
-
- if not test -f $mark_store
- return 1
- end
-
- # calculate offset: $day+1 (+1 if m > 9) because of "<month>:"
- set offset (math "($day + 1 + $month/10)")
-
- set marks (__mark_print_block store $mark_store)
- set marks (string split " " $marks)
-
- # copy everything before #store#
- string split " " (string match -r "^.*#store#" (echo (cat $mark_store))) > $mark_store.new
-
- # crawl store
- set m 0
- # correct year sub-block
- set is_year false
- for l in $marks
- if begin test $is_year= false
- and string match -q -r "^$year:\$" $l
- end
- set year_found true
- end
-
- if test $is_year= true
- if test $m -ne $month
- echo $l >> $mark_store.new
- else
- # replace the char at offset with $sign
- echo $l | sed "s/^\(.\{$offset\}\)?/\1$sign/" >> $mark_store.new
- end
-
- set m (math "$m+1")
- # not in year sub-block any more
- if test $m -eq 13
- set is_year false
- end
- else
- echo $l >> $mark_store.new
- end
- end
-
- #copy everything after #store#
- set store_and_rest (string match -r "#store#.*\$" (echo (cat $mark_store)))
- string split " " (string replace -r "#store#[^#]*" "" $store_and_rest) >> $mark_store.new
-
- mv $mark_store.new $mark_store
-end