Updates to xmonad and zshrc
- XMonad
- principally, enabling Maximize mode
- M-\ maximize window
- C-M-\ switch + maximize
- S-M-\ maximize + then switch (i.e. if current window maximized,
unmaximize it and switch to next window)
- roxterm
- added solarized colorscheme
- zshrc
- added a suite of functions to interact with rss feeds, leveraging
various python utilities, jq and pandoc
- broke out several items in zshrc into a new lightweight plugin
system
- updating several custom scripts
- Custom Scripts (scripts/ folder)
- goosify: uses "python-goosify" to extract interesting content from a
url (works like curl, basically)
- pslist: opens a list of process in less and, optionally, searches for
a user specified process
- secure_note: saves a file to Dropbox, encrypted
- start_paper: sets up an environment to begin working on a paper
- tabularize: justifies data, splitting on a field
Showing 29 changed files
- .xmonad/cheatsheet.png
- .xmonad/xmonad.hs
- .zshrc
- roxterm/Colours/solatarized-dark
- roxterm/Colours/solatarized-light
- scripts/ctext
- scripts/dmenu_play_mpd
- scripts/dmenu_queue_mpd
- scripts/dmenu_queueplay_mpd
- scripts/goosify
- scripts/importsort
- scripts/mpctl
- scripts/pslist
- scripts/pybrowse
- scripts/pybrowse.glade
- scripts/secure_note
- scripts/start_paper
- scripts/start_paper.head
- scripts/startmonad
- scripts/tabularize
- scripts/update_repos
- scripts/urlunquote
- scripts/watchreload
- zsh_plugins/01_man_solarized.zsh
- zsh_plugins/01_rss.zsh
- zsh_plugins/01_symbcalc.zsh
- zsh_plugins/02_pandoc.zsh
- zsh_plugins/03_drudge.zsh
- zsh_plugins/completion/_symbcalc
... | ... |
@@ -187,6 +187,14 @@ switchWorkspace target = do |
187 | 187 |
windows $ W.greedyView target |
188 | 188 |
dShow target |
189 | 189 |
|
190 |
+maximizeSwitch = do |
|
191 |
+ withFocused $ sendMessage . maximizeRestore |
|
192 |
+ windows W.focusUp |
|
193 |
+ |
|
194 |
+maximizeFlop = do |
|
195 |
+ windows W.focusUp |
|
196 |
+ withFocused $ sendMessage . maximizeRestore |
|
197 |
+ |
|
190 | 198 |
main = do |
191 | 199 |
xmproc <- spawnPipe "/home/edwlan/.cabal/bin/xmobar /home/edwlan/.xmobarrc" |
192 | 200 |
--xmproc1 <- spawnPipe "/home/edwlan/.cabal/bin/xmobar /home/edwlan/.xmobarrc1" |
... | ... |
@@ -206,6 +214,8 @@ main = do |
206 | 214 |
(((mod4Mask .|. controlMask, xK_q ), |
207 | 215 |
spawn "if type xmonad; then xmonad --recompile && xmonad --restart; else xmessage xmonad not in \\$PATH: \"$PATH\"; fi")), |
208 | 216 |
|
217 |
+ ((mod4Mask .|. shiftMask, xK_backslash), maximizeSwitch), |
|
218 |
+ ((mod4Mask .|. controlMask, xK_backslash), maximizeFlop), |
|
209 | 219 |
((mod4Mask, xK_backslash), withFocused (sendMessage . maximizeRestore)), |
210 | 220 |
((mod4Mask .|. controlMask .|. shiftMask, xK_h ), sendMessage $ Move L), |
211 | 221 |
((mod4Mask .|. controlMask .|. shiftMask, xK_j ), sendMessage $ Move D), |
... | ... |
@@ -24,6 +24,7 @@ export MPD_HOST=srv2.elangley.org |
24 | 24 |
|
25 | 25 |
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*) |
26 | 26 |
# Example format: plugins=(rails git textmate ruby lighthouse) |
27 |
+fpath=(~/.zsh.d/completion $fpath) |
|
27 | 28 |
plugins=(git ruby rails osx brew zsh-syntax-highlighting python git-extra git-flow battery scd) |
28 | 29 |
|
29 | 30 |
source $ZSH/oh-my-zsh.sh |
... | ... |
@@ -117,10 +118,9 @@ autoload -U tcp_point |
117 | 118 |
autoload -U tcp_shoot |
118 | 119 |
#------------------ |
119 | 120 |
zfinit |
120 |
-#if [ $TERM != 'dumb' ]; then |
|
121 |
-# eval `dircolors -b` |
|
122 |
-# alias ls='ls --color=auto' |
|
123 |
-#f |
|
121 |
+if [[ $TERM != 'dumb' ]]; then |
|
122 |
+ eval `dircolors $HOME/github_repos/dircolors-solarized/dircolors.256dark` |
|
123 |
+fi |
|
124 | 124 |
setopt autopushd |
125 | 125 |
setopt cdablevars |
126 | 126 |
setopt AUTO_LIST |
... | ... |
@@ -555,4 +555,16 @@ pmkdir() { |
555 | 555 |
cd $1 |
556 | 556 |
} |
557 | 557 |
|
558 |
+mkcd() { |
|
559 |
+ mkdir "$1" |
|
560 |
+ cd "$1" |
|
561 |
+} |
|
562 |
+ |
|
563 |
+### load my plugins |
|
564 |
+ |
|
565 |
+for x in `ls $HOME/.zsh.d/*.zsh`; do |
|
566 |
+ source "$x" |
|
567 |
+done |
|
568 |
+alias cn=current_news |
|
569 |
+ |
|
558 | 570 |
# vim: set filetype=sh: |
559 | 571 |
new file mode 100644 |
... | ... |
@@ -0,0 +1,30 @@ |
1 |
+ |
|
2 |
+[roxterm colour scheme] |
|
3 |
+foreground=#838394949696 |
|
4 |
+background=#00002b2b3636 |
|
5 |
+0=#070736364242 |
|
6 |
+1=#dcdc32322f2f |
|
7 |
+2=#858599990000 |
|
8 |
+3=#b5b589890000 |
|
9 |
+4=#26268b8bd2d2 |
|
10 |
+5=#d3d336368282 |
|
11 |
+6=#2a2aa1a19898 |
|
12 |
+7=#eeeee8e8d5d5 |
|
13 |
+8=#00002b2b3636 |
|
14 |
+9=#cbcb4b4b1616 |
|
15 |
+10=#58586e6e7575 |
|
16 |
+11=#65657b7b8383 |
|
17 |
+12=#838394949696 |
|
18 |
+13=#6c6c7171c4c4 |
|
19 |
+14=#9393a1a1a1a1 |
|
20 |
+15=#fdfdf6f6e3e3 |
|
21 |
+16=#4c4c4c4c4c4c |
|
22 |
+17=#a8a830303030 |
|
23 |
+18=#202088882020 |
|
24 |
+19=#a8a888880000 |
|
25 |
+20=#555555559898 |
|
26 |
+21=#888830308888 |
|
27 |
+22=#303088888888 |
|
28 |
+23=#d8d8d8d8d8d8 |
|
29 |
+cursor=#9393a1a1a1a1 |
|
30 |
+palette_size=16 |
0 | 31 |
new file mode 100644 |
... | ... |
@@ -0,0 +1,30 @@ |
1 |
+ |
|
2 |
+[roxterm colour scheme] |
|
3 |
+foreground=#838394949696 |
|
4 |
+background=#00002b2b3636 |
|
5 |
+0=#070736364242 |
|
6 |
+1=#dcdc32322f2f |
|
7 |
+2=#858599990000 |
|
8 |
+3=#b5b589890000 |
|
9 |
+4=#26268b8bd2d2 |
|
10 |
+5=#d3d336368282 |
|
11 |
+6=#2a2aa1a19898 |
|
12 |
+7=#eeeee8e8d5d5 |
|
13 |
+8=#00002b2b3636 |
|
14 |
+9=#cbcb4b4b1616 |
|
15 |
+10=#58586e6e7575 |
|
16 |
+11=#65657b7b8383 |
|
17 |
+12=#838394949696 |
|
18 |
+13=#6c6c7171c4c4 |
|
19 |
+14=#9393a1a1a1a1 |
|
20 |
+15=#fdfdf6f6e3e3 |
|
21 |
+16=#4c4c4c4c4c4c |
|
22 |
+17=#a8a830303030 |
|
23 |
+18=#202088882020 |
|
24 |
+19=#a8a888880000 |
|
25 |
+20=#555555559898 |
|
26 |
+21=#888830308888 |
|
27 |
+22=#303088888888 |
|
28 |
+23=#d8d8d8d8d8d8 |
|
29 |
+cursor=#9393a1a1a1a1 |
|
30 |
+palette_size=16 |
0 | 31 |
new file mode 100755 |
... | ... |
@@ -0,0 +1,39 @@ |
1 |
+#!/usr/bin/env python |
|
2 |
+from __future__ import print_function |
|
3 |
+ |
|
4 |
+import sys |
|
5 |
+import base64 |
|
6 |
+import os |
|
7 |
+ |
|
8 |
+ |
|
9 |
+outfn = os.getenv('OUTFILE', os.path.join(os.getenv('HOME'), '.ctextfile')) |
|
10 |
+basename = os.path.basename(sys.argv[0]) |
|
11 |
+ |
|
12 |
+def fiter(fil): |
|
13 |
+ line = None |
|
14 |
+ while line != '': |
|
15 |
+ line = fil.readline() |
|
16 |
+ yield line |
|
17 |
+ |
|
18 |
+if basename == 'ctext': |
|
19 |
+ dat = sys.stdin.read() |
|
20 |
+ dat = base64.b64encode(dat) |
|
21 |
+ with open(outfn, 'a') as f: |
|
22 |
+ print('%%',file=f) |
|
23 |
+ print(dat,file=f) |
|
24 |
+ |
|
25 |
+elif basename == 'ptext': |
|
26 |
+ jmplist = [] |
|
27 |
+ with open(outfn, 'r') as f: |
|
28 |
+ for line in fiter(f): |
|
29 |
+ if line.strip() == '%%': |
|
30 |
+ jmplist.append(f.tell()) # We want the pos __after__ the separator |
|
31 |
+ if jmplist: |
|
32 |
+ f.seek(jmplist[-1],0) |
|
33 |
+ dat = f.read().strip() |
|
34 |
+ print(base64.b64decode(dat),end='') |
|
35 |
+ else: |
|
36 |
+ raise ValueError('Empty Clipboard!') |
|
37 |
+ |
|
38 |
+else: |
|
39 |
+ print('Bad argv[0]', sys.argv[0]) |
... | ... |
@@ -1,5 +1,8 @@ |
1 | 1 |
#!/usr/bin/zsh |
2 | 2 |
|
3 |
-chosen=`mpc playlist -f "[%position%: %artist% - %album% - %title%]" | dmenu -l 15 -i | cut -d: -f 1` |
|
4 |
-mpc play $chosen |
|
3 |
+chosen=`mpc playlist -f "[%position%: %artist% - %album% - %title%]" | dmenu -l 15 -i | cut -d: -f 1` |
|
4 |
+ |
|
5 |
+if [[ "$chosen" -ne "" ]]; then |
|
6 |
+ mpc play $chosen |
|
7 |
+fi |
|
5 | 8 |
|
... | ... |
@@ -3,6 +3,7 @@ |
3 | 3 |
chosen=`mpc playlist -f "[%position%: %artist% - %album% - %title%]" | dmenu -l 15 -i | cut -d: -f 1` |
4 | 4 |
(( target=(`mpc current -f "[%position%]"` + 1) )) |
5 | 5 |
|
6 |
-mpc move $chosen $target |
|
7 |
-mpc next |
|
8 |
- |
|
6 |
+if [[ chosen -ne "" ]]; then |
|
7 |
+ mpc move $chosen $target |
|
8 |
+ mpc next |
|
9 |
+fi |
9 | 10 |
new file mode 100755 |
... | ... |
@@ -0,0 +1,13 @@ |
1 |
+#!/usr/bin/env python2 |
|
2 |
+ |
|
3 |
+import goose |
|
4 |
+import lxml |
|
5 |
+import argparse |
|
6 |
+ |
|
7 |
+p = argparse.ArgumentParser() |
|
8 |
+p.add_argument('url') |
|
9 |
+args = p.parse_args() |
|
10 |
+ |
|
11 |
+g = goose.Goose() |
|
12 |
+a = g.extract(args.url) |
|
13 |
+print lxml.html.tostring(a.doc) |
... | ... |
@@ -1,23 +1,24 @@ |
1 | 1 |
#!/usr/bin/env python3 |
2 |
+'''Note, defualt is haskell mode''' |
|
2 | 3 |
|
3 | 4 |
import sys |
4 | 5 |
|
5 | 6 |
lines = [] |
6 | 7 |
for line in sys.stdin: |
7 |
- line = line.split() |
|
8 |
- if line == []: continue |
|
9 |
- elif line[0] == 'import': |
|
10 |
- qualified = line[1] == 'qualified' |
|
11 |
- module = line[1] |
|
12 |
- if qualified: module = line[2] |
|
13 |
- lines.append(((1 if qualified else 0), module, len(module.split('.')), line)) |
|
14 |
- else: |
|
15 |
- raise ValueError('Can\'t handle lines without import statements') |
|
8 |
+ line = line.split() |
|
9 |
+ if line == []: continue |
|
10 |
+ elif line[0] == 'import': |
|
11 |
+ qualified = line[1] == 'qualified' |
|
12 |
+ module = line[1] |
|
13 |
+ if qualified: module = line[2] |
|
14 |
+ lines.append(((1 if qualified else 0), module, len(module.split('.')), line)) |
|
15 |
+ else: |
|
16 |
+ raise ValueError('Can\'t handle lines without import statements') |
|
16 | 17 |
|
17 | 18 |
otoplevel = lines[0][1].split('.',1)[0] |
18 | 19 |
for line in sorted(lines): |
19 |
- toplevel = line[1].split('.',1)[0] |
|
20 |
- if toplevel != otoplevel: |
|
21 |
- print() |
|
22 |
- print(' '.join(line[-1])) |
|
23 |
- otoplevel = toplevel |
|
20 |
+ toplevel = line[1].split('.',1)[0] |
|
21 |
+ if toplevel != otoplevel: |
|
22 |
+ print() |
|
23 |
+ print(' '.join(line[-1])) |
|
24 |
+ otoplevel = toplevel |
0 | 11 |
new file mode 100755 |
... | ... |
@@ -0,0 +1,57 @@ |
1 |
+#!/usr/bin/env python3.4 |
|
2 |
+from gi.repository import Gtk, WebKit |
|
3 |
+import os.path |
|
4 |
+print(__file__) |
|
5 |
+basepath = os.path.dirname(__file__) |
|
6 |
+ |
|
7 |
+builder = Gtk.Builder() |
|
8 |
+builder.add_from_file(os.path.join(basepath,"pybrowse.glade")) |
|
9 |
+window = builder.get_object("mainWindow") |
|
10 |
+webview = WebKit.WebView() |
|
11 |
+def onLoad(webview, stat_type): |
|
12 |
+ if webview.get_load_status() == WebKit.LoadStatus.FINISHED: |
|
13 |
+ builder.get_object("goTxt").set_text(webview.get_uri()) |
|
14 |
+ window.set_title(webview.get_title()) |
|
15 |
+webview.connect("notify::load-status", onLoad) |
|
16 |
+mv = builder.get_object("mainview") |
|
17 |
+mv.add(webview) |
|
18 |
+ |
|
19 |
+ |
|
20 |
+class SigHandler(object): |
|
21 |
+ eval_model = builder.get_object('historyModel') |
|
22 |
+ |
|
23 |
+ def goBtn_clicked_cb(self, v): |
|
24 |
+ print(self,v) |
|
25 |
+ webview.load_uri(v.get_text()) |
|
26 |
+ eval_locals = dict() |
|
27 |
+ def evalBtn_clicked_cb(self, v): |
|
28 |
+ txt = v.get_text() |
|
29 |
+ exec(txt, globals(), self.eval_locals) |
|
30 |
+ self.eval_model.append([txt]) |
|
31 |
+ def row_activated(self, s, *a): |
|
32 |
+ model, itr = s.get_selected() |
|
33 |
+ eval_txt = builder.get_object('evalTxt') |
|
34 |
+ eval_txt.set_text(model[itr][0]) |
|
35 |
+ eval_txt.grab_focus() |
|
36 |
+ def row_added(self, *a): |
|
37 |
+ print('row_added') |
|
38 |
+ print(a) |
|
39 |
+ |
|
40 |
+ |
|
41 |
+builder.connect_signals(SigHandler()) |
|
42 |
+window.connect("delete-event", Gtk.main_quit) |
|
43 |
+window.show_all() |
|
44 |
+ |
|
45 |
+import argparse |
|
46 |
+parser = argparse.ArgumentParser() |
|
47 |
+parser.add_argument('uri', nargs='?', default='http://google.com') |
|
48 |
+args = parser.parse_args() |
|
49 |
+ |
|
50 |
+import urllib.parse |
|
51 |
+def fix_uri(uri): |
|
52 |
+ if '://' not in uri: |
|
53 |
+ uri = 'http://%s' % uri |
|
54 |
+ return uri |
|
55 |
+webview.load_uri(fix_uri(args.uri)) |
|
56 |
+ |
|
57 |
+Gtk.main() |
0 | 58 |
new file mode 100644 |
... | ... |
@@ -0,0 +1,148 @@ |
1 |
+<?xml version="1.0" encoding="UTF-8"?> |
|
2 |
+<!-- Generated with glade 3.18.3 --> |
|
3 |
+<interface> |
|
4 |
+ <requires lib="gtk+" version="3.12"/> |
|
5 |
+ <object class="GtkImage" id="evalImage"> |
|
6 |
+ <property name="visible">True</property> |
|
7 |
+ <property name="can_focus">False</property> |
|
8 |
+ <property name="stock">gtk-execute</property> |
|
9 |
+ </object> |
|
10 |
+ <object class="GtkImage" id="goImage"> |
|
11 |
+ <property name="visible">True</property> |
|
12 |
+ <property name="can_focus">False</property> |
|
13 |
+ <property name="stock">gtk-media-play</property> |
|
14 |
+ </object> |
|
15 |
+ <object class="GtkListStore" id="historyModel"> |
|
16 |
+ <columns> |
|
17 |
+ <!-- column-name item --> |
|
18 |
+ <column type="gchararray"/> |
|
19 |
+ </columns> |
|
20 |
+ </object> |
|
21 |
+ <object class="GtkApplicationWindow" id="mainWindow"> |
|
22 |
+ <property name="can_focus">False</property> |
|
23 |
+ <property name="title" translatable="yes">pyBrowse</property> |
|
24 |
+ <property name="default_width">500</property> |
|
25 |
+ <property name="default_height">600</property> |
|
26 |
+ <property name="show_menubar">False</property> |
|
27 |
+ <child> |
|
28 |
+ <object class="GtkBox" id="topBox"> |
|
29 |
+ <property name="visible">True</property> |
|
30 |
+ <property name="can_focus">False</property> |
|
31 |
+ <property name="orientation">vertical</property> |
|
32 |
+ <property name="spacing">2</property> |
|
33 |
+ <child> |
|
34 |
+ <object class="GtkBox" id="box2"> |
|
35 |
+ <property name="visible">True</property> |
|
36 |
+ <property name="can_focus">False</property> |
|
37 |
+ <child> |
|
38 |
+ <object class="GtkEntry" id="goTxt"> |
|
39 |
+ <property name="visible">True</property> |
|
40 |
+ <property name="can_focus">True</property> |
|
41 |
+ <signal name="activate" handler="goBtn_clicked_cb" object="goTxt" swapped="yes"/> |
|
42 |
+ <accelerator key="l" signal="grab-focus" modifiers="GDK_CONTROL_MASK"/> |
|
43 |
+ </object> |
|
44 |
+ <packing> |
|
45 |
+ <property name="expand">True</property> |
|
46 |
+ <property name="fill">True</property> |
|
47 |
+ <property name="position">0</property> |
|
48 |
+ </packing> |
|
49 |
+ </child> |
|
50 |
+ <child> |
|
51 |
+ <object class="GtkButton" id="goBtn"> |
|
52 |
+ <property name="label">_Go</property> |
|
53 |
+ <property name="visible">True</property> |
|
54 |
+ <property name="can_focus">True</property> |
|
55 |
+ <property name="receives_default">True</property> |
|
56 |
+ <property name="image">goImage</property> |
|
57 |
+ <property name="use_underline">True</property> |
|
58 |
+ <signal name="clicked" handler="goBtn_clicked_cb" object="goTxt" swapped="yes"/> |
|
59 |
+ </object> |
|
60 |
+ <packing> |
|
61 |
+ <property name="expand">False</property> |
|
62 |
+ <property name="fill">True</property> |
|
63 |
+ <property name="pack_type">end</property> |
|
64 |
+ <property name="position">1</property> |
|
65 |
+ </packing> |
|
66 |
+ </child> |
|
67 |
+ </object> |
|
68 |
+ <packing> |
|
69 |
+ <property name="expand">False</property> |
|
70 |
+ <property name="fill">True</property> |
|
71 |
+ <property name="position">0</property> |
|
72 |
+ </packing> |
|
73 |
+ </child> |
|
74 |
+ <child> |
|
75 |
+ <object class="GtkScrolledWindow" id="mainview"> |
|
76 |
+ <property name="visible">True</property> |
|
77 |
+ <property name="can_focus">True</property> |
|
78 |
+ <property name="shadow_type">in</property> |
|
79 |
+ <child> |
|
80 |
+ <placeholder/> |
|
81 |
+ </child> |
|
82 |
+ </object> |
|
83 |
+ <packing> |
|
84 |
+ <property name="expand">True</property> |
|
85 |
+ <property name="fill">True</property> |
|
86 |
+ <property name="position">1</property> |
|
87 |
+ </packing> |
|
88 |
+ </child> |
|
89 |
+ <child> |
|
90 |
+ <object class="GtkBox" id="box1"> |
|
91 |
+ <property name="visible">True</property> |
|
92 |
+ <property name="can_focus">False</property> |
|
93 |
+ <child> |
|
94 |
+ <object class="GtkComboBox" id="combobox1"> |
|
95 |
+ <property name="visible">True</property> |
|
96 |
+ <property name="can_focus">True</property> |
|
97 |
+ <property name="model">historyModel</property> |
|
98 |
+ <property name="button_sensitivity">on</property> |
|
99 |
+ <property name="has_entry">True</property> |
|
100 |
+ <property name="entry_text_column">0</property> |
|
101 |
+ <child> |
|
102 |
+ <object class="GtkCellRendererText" id="cellrenderertext1"/> |
|
103 |
+ <attributes> |
|
104 |
+ <attribute name="text">0</attribute> |
|
105 |
+ </attributes> |
|
106 |
+ </child> |
|
107 |
+ <child internal-child="entry"> |
|
108 |
+ <object class="GtkEntry" id="evalTxt"> |
|
109 |
+ <property name="can_focus">True</property> |
|
110 |
+ <property name="placeholder_text" translatable="yes"><python code here></property> |
|
111 |
+ <signal name="activate" handler="evalBtn_clicked_cb" object="evalTxt" swapped="yes"/> |
|
112 |
+ <accelerator key="e" signal="grab-focus" modifiers="GDK_CONTROL_MASK"/> |
|
113 |
+ </object> |
|
114 |
+ </child> |
|
115 |
+ </object> |
|
116 |
+ <packing> |
|
117 |
+ <property name="expand">True</property> |
|
118 |
+ <property name="fill">True</property> |
|
119 |
+ <property name="position">0</property> |
|
120 |
+ </packing> |
|
121 |
+ </child> |
|
122 |
+ <child> |
|
123 |
+ <object class="GtkButton" id="evalBtn"> |
|
124 |
+ <property name="label" translatable="yes">_Eval</property> |
|
125 |
+ <property name="visible">True</property> |
|
126 |
+ <property name="can_focus">True</property> |
|
127 |
+ <property name="receives_default">True</property> |
|
128 |
+ <property name="image">evalImage</property> |
|
129 |
+ <property name="use_underline">True</property> |
|
130 |
+ <signal name="clicked" handler="evalBtn_clicked_cb" object="evalTxt" swapped="no"/> |
|
131 |
+ </object> |
|
132 |
+ <packing> |
|
133 |
+ <property name="expand">False</property> |
|
134 |
+ <property name="fill">True</property> |
|
135 |
+ <property name="position">1</property> |
|
136 |
+ </packing> |
|
137 |
+ </child> |
|
138 |
+ </object> |
|
139 |
+ <packing> |
|
140 |
+ <property name="expand">False</property> |
|
141 |
+ <property name="fill">True</property> |
|
142 |
+ <property name="position">2</property> |
|
143 |
+ </packing> |
|
144 |
+ </child> |
|
145 |
+ </object> |
|
146 |
+ </child> |
|
147 |
+ </object> |
|
148 |
+</interface> |
... | ... |
@@ -7,7 +7,8 @@ import os |
7 | 7 |
parser = argparse.ArgumentParser() |
8 | 8 |
parser.add_argument("-n", "--new", action="store_true") |
9 | 9 |
parser.add_argument("-r", "--read", action="store_true") |
10 |
-parser.add_argument("name", action="store", nargs=1) |
|
10 |
+parser.add_argument("-l", "--list", action="store_true") |
|
11 |
+parser.add_argument("name", action="store", nargs='?') |
|
11 | 12 |
args = parser.parse_args() |
12 | 13 |
GPG = "/usr/bin/gpg" |
13 | 14 |
base = os.path.join(os.environ.get("HOME"), "Dropbox", "secure_notes") |
... | ... |
@@ -15,9 +16,14 @@ print base |
15 | 16 |
|
16 | 17 |
import subprocess |
17 | 18 |
if args.new: |
18 |
- print args.name |
|
19 |
- proc = subprocess.call([GPG, "-r", "Fiddlerwoaroof <fiddler.wo.a.roof@gmail.com>", "-o", os.path.join(base, args.name[0]), "-e"]) |
|
19 |
+ print args.name |
|
20 |
+ proc = subprocess.call([GPG, "-r", "Fiddlerwoaroof <fiddler.wo.a.roof@gmail.com>", "-o", os.path.join(base, args.name), "-e"]) |
|
20 | 21 |
elif args.read: |
21 |
- proc = subprocess.call([GPG, "-r", "Fiddlerwoaroof <fiddler.wo.a.roof@gmail.com>", "-d", os.path.join(base, args.name[0])]) |
|
22 |
- |
|
23 |
- |
|
22 |
+ print args.name |
|
23 |
+ proc = subprocess.call([GPG, "-r", "Fiddlerwoaroof <fiddler.wo.a.roof@gmail.com>", "-d", os.path.join(base, args.name)]) |
|
24 |
+elif args.list: |
|
25 |
+ files = os.listdir(base) |
|
26 |
+ max_itm = max(len(x) for x in files) |
|
27 |
+ for x in range(len(files)/3 + 1): |
|
28 |
+ items = files[x*3:(x+1)*3] |
|
29 |
+ print ' '.join(item.rjust(max_itm+3) for item in items) |
... | ... |
@@ -4,96 +4,108 @@ DEST_DIR=$1 |
4 | 4 |
|
5 | 5 |
mkdir $DEST_DIR || exit 1 |
6 | 6 |
|
7 |
-(base64 -d | tar jxf - -C $DEST_DIR --strip-components=1 --transform="s/paper_template/$DEST_DIR/g") <<EOF |
|
7 |
+(base64 -d | tar --xz -xf - -C $DEST_DIR --strip-components=1 --transform="s/paper_template/$DEST_DIR/g") <<EOF |
|
8 | 8 |
|
9 |
-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
-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
-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
-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
-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
-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
-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
-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
-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
-I9Q+j6ZOPBCXrsUh2j9+5fyafnNy+Qdh76mhH1uvdub5m1l31hWDlfabyRez9PHxBrnhA2I3aQu145FU95fVoKUbqLESqXfLypIT1cJfUtyC/v7ImOa6G98N2SNg+UkQx8r534IldC39gCBziHcqMGV2JMoSnbTkXz7bMS/I70fI5fni9XPa3fWKZVc7cIn3uQiMqsxk |
|
19 |
-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
-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
-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
-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
-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
-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
-MQDOp3FSG4bMiUhPqteTJkUhfiW/LjsLT5h2+qsiFcLDRUztyLMVsgnJnIXi3M5kYHt71kJNrXiCZl0e5URWhhVnIvJ3XNvaxCBCiT+HEc9bw5QPhhQzMN1MdfO7M0a2FjtMxe9OeUGGoxC8z2L7tkgg1huMk8prH3s63neRlqtmHYG2y+XAftPuGoqTxVqlEbO/Pk9z |
|
26 |
-24Hmc7CzreiYPgr1UZzeT34Z4roKhDorqU9e9EzR3QVs10rPyJfYd91uTf2X08n6XmISY+3veqHN7g/gbC6e3uQ97QNfUgtckyx329mJNffk9h8ZzGQd7QhGIFWbX/UiMMZdL4Pe1XMLAGOLZPVsYK5pIvlaxLylU0rGSu6qFkFG7GFNJ0AaZQtTVbGMBRaj35+cqu/w |
|
27 |
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-UYkXbF0S7VGsQQZSF6jKsgP1LeM6NyvDNmUxyRsNeQkgq7BKvFBmIM4ZnzUzHAHFUFa4ixZnYdQlggyyyi2OMhFhKysoZERiZVo0cysROQQqOzAYwLQtmmMrUWVNiDGARMThRBlWzi9ViaKt31m4YhEphTBRNau4CvmIFRg3Wtt+H7Hv09H7t3tr8zAr8p8ofkJ4roiv |
|
41 |
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-NsiB2x3etoO1jg55FPRzVAxDGSXER37vKcNjFQOgvT3HofJqCXzY2aKPaK30r2ed83p+bdV1umjQFkxo0XZrhOS5ESJy5V28rm3nzt1teje1D424aDMpTONyQWSik0hJpyOl/1wQcQA6hA9xEsX+ILbQ4inWgHiAl0EzB0gkiLrVNxx442LnX1bjk+58pb4A7uffzFIh |
|
58 |
-+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
-wiS3CkhRLBK0gQYetFB1d2OtPBvPPHXonkslPKTnWwoMMhOWSpqFE0aiASWrI/TG/zD9IB/mFiWQCwpFS9KGBDgCcIJYLDyIIGxgYV3Km+ASJILIgdQDFHnzz8czNBTUH535vTVaEEzgfOHA8gTPt58uRj14fIQtHeIQDEAcZQamtDBtrPSddYkLyvIh43urLxH20TYG |
|
60 |
-LW9uXAAut+/rSRGRP3AiGf3/OWMIqSIyGGB4Z55XqGEZEJGQqgEWkZBJCRAJA5fhy+3+BNxjoHlfOZGhhUx7r46dnZxZe963dATMPV0a1NcM887y+PQmSanrPPYemCyMj35dpl2haudyjTzwLwRJHGRkIQZ6AtrvnzK8shSwxQJARrFCiB7e7VDnuAdyLuNUqUy+oRuH |
|
61 |
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-+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
-naGu1ebbOpu09p5XPnb540TpEBxSQjwLWhX5ZEtLwHGQQCdIlaSROqN02FvRs3Xjer2dlyKtD3HbwCoMtQCYKl+yHVaqGhDRQghVC1JUSEJuia+cW0Plsl5pcqz2b3ncHa6pst27bH2I807Tz0CPvrjMeQ9gfL9SA3Ip2d+7scVENR79Go2IpQZoOm/KBjTLv6rpZDIT |
|
88 |
-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
-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
-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
-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
-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
-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
-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
-wQwiBICkiDfFX48SiAkpn2ocHGOvo+yk0AGfR+MMHkq5zzdXgEN6OIxTcQMQuPIyOOH278/xZPSIl1j8QfDqPg9WAePdQfGQ0gfLdL9K84gAT7AMgRrUKH1vB1HfWbPtzoC/JVO7dC5VMQsELzlapbOZfA/CC9fb/nv+GH5gz1xzuD7fb3l7dhtWMt/oa+Dg3/9t+4L5 |
|
96 |
-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
-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 |
|
98 |
-vRH4 |
|
9 |
+/Td6WFoAAATm1rRGAgAhARYAAAB0L+Wj4O//O1VdADgYSmbyyKtWMBRqP43/EQJ5U9jI9Xa6OYE7qjKEXlplXN+X5PkqqfeEZHH6ptauXD80MsmCfuoGBg50pAW2pZnbVGhpDE2Lc2d5CbDoeN9bLwFnsO1PfmeSFJmOhr1De5x8X14wOVqRystEQtyhtj9PidCsDjTs |
|
10 |
+h6PyiqebcjD5Z8+q2ou72suUOIyziyMzkg086v37Cp55wHJzFu+LwQ1WLLkA/j5ezwpoiNgpOFvZqCn82cNNv+KOkeElzkn6vgsoY+DmMFuZP0rDxArWQ8tVLDNowQc8k+oCRI3AJk7dDO0DZ/eH2JLxE5IMBnPLYeaNPuDi6f7d3Q5MnoZSBe1LoGhGWVZ5RbWEe/0v |
|
11 |
+VZiBcvc8laDq5IOolCxK5pL/+FXJxtbBHMxjRu8OytWAPyiIKVISa57OHMYoHdefkGNfCFV2ZeOl8xIeXMa6PBXhv+a7021JmHCoMzxAG9yuvUwSqWsUqBIVqpjgwOcEjSNR9xYcm8TvrgqjcWOChD2rCXvaDmaD578eaA3YoHtv2y72eSIs/yvPQ1StJpb5opA/j+jm |
|
12 |
+LwLbLAHnbuakJrTpyQ2mgL/bJ3J+cNWexNpttn8g8T/b0ZT96jISUi/GNnn1wzNQG27kxJkQEX7Q/KUt23kWtuWYQSgHzTfivATrzNQ4aglMyiBaOm6rz0T0ozgoKncISa4FdVOvF1SarqlBY1+I1fVWMoFoUh2+vggy4xXBzKYbhsbLIYDtozGmFrtkPfjv2EZJndT2 |
|
13 |
+guaNg8C/p7+sgr08SHjm3dJx4m6EPgH+TIsj5SJII+iLTw7hSnms8+kuGUn7iD8kspXxrWeLrKYLdk+d6TjvUYlxCsfaOepfT6KJygbzt13I41wC6hHLp9ny1s8nhBpImZU97yPK9Ajrg/Y/uIEQ7jub/BX/Tg7WGaYzwhK1GIc5vFbnsQfS7dFPPVL8ToxHgDD0jYl9 |
|
14 |
+BYsCO8Vlz8fgX6cSHcW9oy5WB1dLoD8mM5hNdwucJq7tpef9QP+xojOsSgLQz6oOilV3TZ+0N+Atz2jY9Ql1I2BZjjAJ/z0RNSClXfo3VDGYaoT8sK/Q4gZiGQci1U3BZZxw6rNvK2V1zIxwDXIuXa76gYc2mWVgTfoVVeSs8EX1XXtjiqNeQSZk6KlRp/f3lLuuONt0 |
|
15 |
+ptCXUXce2lKdtPEarb9eZAb25NpW1Wqd2DPmrBk5ZbOpYarSw2WHCxt/k6JlPw+ZNsH+XGckoo911sTZe6tIJoxvs9oU6CYtpLQICZLt8D94g+89q1ECWH/8W5wkmALb4z0Xk4koYkFAIPJot9MRuvrB1ADdMohkJAM6yUJJeWRHdOCp7tnzQ1SRidrxNGB6+fSi5nbY |
|
16 |
+ofeAGQV3VbLHtY0Ia5aHU+VekdJnf4YDSsp6u4FJO59MZ9CYGLSpK01skN14IBtpqDY3/ZuiyJOUOAprEMma0uArJWBkNoqQb/Su1WpKmHWjP4AGOik8rlF/SyDAm62pNOFZaYwgygBkSChrmAY6K6U0zzKyPwMyYLZTgaV8KTO1A5qgQg6ldeMGhyC2OZ1t9FEEuz25 |
|
17 |
+8NgNJAtMK1phBvIKbPvLRjaM+47jiWX8xRyM6dZcudnQvmRXcDleSogFv5CguoG9+xLhH2a5OK+Wvzo4ZzyjafG1vSoKIMSaZJ5WJeqPyugQ394L9Zy2q3WkiDU32Yi/OujXCiyO1zuHahnWP4lYioNP9cmYJvR0uGGv0vbPPAp3opCQjCmVHNAIsHIgR3kPJx8nTRzE |
|
18 |
+czvagWc/JzKLbEOJl9kfO/xhnligkq7ZCHCEjptONek6Aph+1qo2OtSAk+s55DWj9LFhvYVe8ODN9mxGjXi60dXQeOFZ7b942AZfW7nk29TKyKjdyndc7iDqDVy78WHD3o1FjvhOM8ZdDugGuqBEJPmRsjxzSZsMwHrnljOSZAE2G29oX8YsEU1M/FWv1s1O8wG0/HzJ |
|
19 |
++S31FODzr9XEuTgU1Ufd6V2KWmEHUKD26q0xi7yVPZXL/KDxaryJ+hg7d7rp4nZTsNkqgkhphy3DaCfW7SveCqTCpQjKOAl3BwtZ+rlQTX2UKjo3IMBL+ng1V2R4xN/f0pUrJKPliHP/7PHr04D0Ku9T2ofOmDDUu+NQHotkIVNvlL/qHsdW3LVkB3xl5q/qQ18RpnJL |
|
20 |
+2/0pesnb2KbQRpz/iq/+E6vvbwzin1w4HATYaKZUtW4UezrYO3U6tOHdch4SPOA69TPnIecS4ujDkhO7cJ7jDcABgAFAPWT5VikuDw6Ntbui+tdwCAWDhX9g/zI1IZMXetF/LELEfH8EVf+9xba3xK7dkwiBZJv2zfyM3lwHDGE3aZZomsL8BdqfCWPdNXc5rRBbKH3m |
|
21 |
+Pjr8lwdK0HqEznA0bfO7KhF3ByD7oxQEGCKCESvQqVZN3vpEjovTd3uDClOdJQlJVPE1oOwSvfBnGPCJT5Dn6RRdQwlauf7NdGmz2rM5Pc/HprV3ucuKUj1V2wa/xS1g4+xjzo9/8lf8b5oD0oLWhdIHby5u7vireXmvJ2JxqcUMyxpcr741SnLOuK4Sm43ZOz1mvqth |
|
22 |
+ohBqVhlgfZacaYl+Fiv7x4R6XFsvbfx7CCKSfMPpUN7oxIWS9IcHhhVSGt9HSwcs39oTuj3Zk3adoqlDoNfmaXNyLsk+3YFweT+jayC4Ki4fVN4Bkn0s4yPlzBxi3YJWTZZ3aeNqdBuut8UupLzitKNhUYqZZTMFOSwPg/7v8GlmPoByFlMHnUCHipYlrxsYqPFszcd1 |
|
23 |
+ZctvrFMbLX7v0stwMHlVjiHVuOfudrYeLo+p5CZBuHFvPaAbXOq76CkWYd3yN8CnBZy4yGctjgvLrOaQJLkZSuZhz7R8vy20cjaFGNnVfoZcT/OVVAx/GW2x3gvKk4a6MzAUvnf1IekDZE+IRJ6Vg8LV9f1m4xEaik1zzUyu83iXH6eJQEPe0w7Aw+MJwC7xCosz0gGX |
|
24 |
+vcN21ooGLsjDXueWuBJV0xAzBjK3x74rorWC3w7KUEqcWwWpMKHe1NCGbLZC155+cQWNQuMMYOF1jN0s9x5ToXNUx/deKdtn/jnM21aApHmPH0FeBftRm+bkl7UXs6h/Qe0xNgvjDH1HqAkAejInnjZTVKE3+Bxe0SnzEXV/P3ihjGLGPLVX8BS+txL+X0fTvDj9ApcT |
|
25 |
+PFBllnKGwMioORLkjyWMbBkz665Tamz7pc83li7L8TlkoY9Ps5wC0EajwJ/82xDNkYvsdV7d5HdtmFNs9FRBFVxyDA/5cQ7B8cS0TeMr0D+87ElAPiJyAbkDwOQUm+txcL29jcAFpLvI7fzlrhAPoY+IL5wmWhecfO9NiiqPed4uu5lbC2km8e5r0evjQdfjgki9M8FK |
|
26 |
+UGFmzy3GoM2pM6/Dx5/mdQflJ9/Ts7Wfl96L6We6TH0Mmu6bzgKicsSEYTQIFD/CAY1Fsoqfwfo85X9/nxkii+zZ7pHgIhfIy90v8diXDrNMfSzfqSTtRzT8MwQCkDboLzmqLX+uPQScczYt8MpGfiq4wY2tHTeQh/Bbc/UQQyjoJ90U1JQ1HBirC79PpE/9HGRaUaj8 |
|
27 |
+GrPmUhYW93QjP4vUwFjOLlpU5oobMIOH8/S7W0WLLtAUUIACYhRVVBwi+emkueC8pgVmqi8JXLXBWpDOVWZWaqFUFYf9clEDux8Rn2Z1T50Jm0rR3t8WbuMtnN/5YeKg3DAFmpEgHSvcBzW7LiQjwFX/9XZsAy6lzovCSiK5B5OKYdOhLGj6WF/gKbM2Nq2dqGyDHGwB |
|
28 |
+gKxfJ1K1Lnv6K2OAshbgtPow4EMEQidYGUIj0JAdu1fNRYZ3Uz6LMSni9isq9uKJIRbfdzSqqYfG2Q+iCFXYEheB/FBC9OHQY+HSRcCB+SPzDQIRSIR78kYYbr0MS/6a9RA+qJwpC7NKRmPBp5rhjuKwagfJFbwIcJa0E9N2Ose4gEbf3eKtZMaf4kmKD9SBlhgqPeNf |
|
29 |
+s4FM8/I2wM25F2xbMUi00TeNV0lt3aKKxaEaGIpTEctkDoUgqug5xvO4/moSwU0Th9owrakAKS/7iKz6ycxAzPCjNRFcWxV++oxwAwxbO0A98P0wJCjtpvV3csRC9pdmphFXqmCcixD/seHp6rceqN0EA91HKQu8zGvN5MG+FwFKB8yaQtZWEeZPOHpPobYEdkHX26Wx |
|
30 |
+w8JhyZciA9MeDtDMPo07N41Z2w3EyF0V1nP2t0s8lHcw9/lXh1Jb7Q+JZgJ7XW8LukjIgTdoS2HZJjtySO4mAXrqh1d6n3dGzud9Envri/xvXBC4yuJTHn0L/LctfT+BBiU+UeayNzAAiECYTdl83p5po2sTjaqea6TIxMjcA2e9he6DVNv6HPxYkjILFXph0i7qNJnV |
|
31 |
+lH2tYPlfsKQuEyUJAgTI7aBzrbgWttpuhyFqSfeYkZImClhosBQyDtjOkxW/C7I+bZDlP/4wmKvYMSgFl64MUSC+Gol2w2ONImqDflKuLWUi3o2X6Jo/1XBxfBlkrFCINeOa8jHgWlKo6CIQIvpmXWgXTyBCj5cO4oxCgUx9zjlWBJdCXJSlmntsB4cwawtZuZKIJ5mN |
|
32 |
+WWD5b0rfyOONCGJe7dSGWOHrdeV1g/Vp+QeNTmIxik2a40xf8l+LhyM8AoVXSHsFMo4JolJ4AOajO0KW+A0Usre/pEruxs1OzSgWD6WGra2teUhD+lStZsua67igSFuN2zj2cex5dp/tzbi2IJC0a7fWsewBnrL9qop4N9lug/GQlCXPwR0Z8VNhJxxTq0S4LgCuAS1T |
|
33 |
+522Ckezqf3P1ivoDGqH9W5KJJZqbeb+EuqYNDUfGx6aKXdATK0fUvjfVgGu0SMjup8iCf1wKyQiEVz7pC+xsd0bLKzssWNbw7xulmkwlpG6j6gxgJcJ2eizllQxK81BTss45dkv6sHEEBwLhLbGczR159IKAxoUl37I3O2bQ8h9ezvi9eYUztx7z7xRLM4rzlj5t09ky |
|
34 |
+llPlwhTCbbPty5Ok+bdaA3UCgT83+otY4MrhvyRkqGYIxzGHNGLJP5zLdHcJIEwTu5FWt31cJZ2ECQ7quPKF8HUg1WfLtxWmXESZSgImKwrpwDxNsT482l37wduPOqAhG465SBC6ck6eCfp+VGdfk6FO1aalTXqZ9m27GKkxCMrLOhlarTZ3UFinNDaRgat8298sVgB/ |
|
35 |
+ZtjUbunPBfw1RYBZ6HN+r+Bow/Ts0gV6BmEFff0ij1IQ61PFcMDr6IkP699k1SITEefz3qntCtsX+hW95GNItjozDusLlz1VmqdyOnEbJbqoqSHu56c7VRoa79vocpdyXHxER4ixSUfO3zJBunA4MpAydKV8LiZax4b/uQumWkolk87ZuOlZiQQlPXwWWNjHNmCSJ/ew |
|
36 |
+t002Ws4lLQxtd3KvgymaXq2e7K2BGBxau0NTXcmcLTxrdMAPu5VUrKfvrXNCY4G++QdpekPtFGVbSDwCi1GETWMOyHuJNSoEpiR6N3OHYtTVfgO1Whir0VemBSt/9ENKXzcIKnR40XcZcDuLjepeeZ5L42ZRFx9uGRfaPBe2gDvA8SNQaa53kZf7IoImHtEMW9y/J77g |
|
37 |
+NFLJdUchfiGURSUlRFRNaXLqO+/d5/lQ1YjsCkJgsDcFcWyJ1XW9D2b5i1Eo6q1DG89ovrySX7x4gYhQbk0cbBChiRGgxlUyocbXbFtOEzdx3Xy7kZUk73uOEEOMR/L+V+Aj5PM+zBqMn/RG4f24uwzWj6rteko7eOf5wR93iP8P+DkM41mx/csw6nejAtBRwHQ/ORNt |
|
38 |
+03jp3KmH/ZGJNvEUSRtpNDXTvuE+xPIyuXPYnYFTRcnKrClw2GH0osvMq8o54Yq5mc5Bp630cfbHFVDqI8RZ6JBMZABqsEshCqwXq22eTSdqQgVymEN1AS0z6u7tWJvL/NOZmLS6cAXr2cdKnk0ZvryGSiQEoQry/U1CzUMtIFTOEk2RdNhf3DEoObYxqkgl1S7kYZOV |
|
39 |
+3CRSIdb5HaAaqxBMvsmyJdhDA9C1yZtV7J8SOs1xfC3MV5pv3CTH1JsUHvP3ojSyoQcMc12jXJdCjDC0NLNsJB+X9Zy1qGAH45OiQdlhVJVhiF6T3x19feqWjaIop+6KGusPtieYHWUduO9v9slFDFNvwFAwQvbeGpq++omaQ0PMq6P3b1YAqM9nRhLcLKVUYx1uJpMn |
|
40 |
+uZe41wrCSmlA/e+54IuDvnhgaYRIL2jju1SNSJgv297qCYwH1RJUtC7LPmi0LDH40v//vToYIY9CoxaZXRzDY2D3dIiYRg01ZlXItnClosYQLF6YDmykl0GwM/vgDMJOHI4C9wpuONyu5omMwWoxVJQuAVGKOdoS6pvgAc+Mfpb2AIn2Qbc88dIFHxSrKl1XvZacJb3R |
|
41 |
+ObLZJp/ZyL1c7jjPFVefyIlUPwdXlw4nzEZp+H4nAUT1eae6T0fhgvhLTF5kUXw3h/bw14aWeNzk4Cb8HRuLV6QZEgxzZechnvls3MGldG1XbSGlssDuy50b2Cd7FiAbdmXpl1gbs0wuiSmUxM9+kftx+HJWzdVnizQ/wOhhhyXWdxk3huJFArrLsMtgj8j2yY88W1xJ |
|
42 |
+JgNTHOMT2immV9yFCHAyXMWKz+fN2FSpzdJ9+L0Lwl0uqhnL4TQ62FByIx6WiJUr4kZSGS/0a93OH0AsZbHmhEFYRp9Cm8FUx/Y0MPeqTpNiQ1SNfbcXORiHU23soLsi1gbncXelbpGhfByUdr/MVuSq8BoxQQHl1WjTWXs7iwZ3smRR//vPy8OavHy8o7ostGrqE3Jk |
|
43 |
+xCQGIVkU/4GC7DMTftfKdQjY7Zth9x3j3Z619BYn8HrXFpUZYL0dWFlJS2Tp6hBQis4nn2isq5EDXkYl6Q1A3h3ziiuSxwX59ebrq8EKOmaSMrbcWb0IpbUVr+tplg6H6iG5igRrC+iJD7SfQWAE9RB20YC8WX5PM7HaKxhgienUSvlEWIGUelCbrfG8CUx0D2n0mWXe |
|
44 |
+7puDtMqjICs9AzBawD5damFZVK9Wrw3Tij46snHaujQNjgSuzu6gWL4qCKfowY7Cqxscn0VqYCAetSKDMBtkr0WCtFT15YrR5jdYW7i7E4x0mwX4Nf4cbvYQm8GIvOGTQ0mtwnBqRjJMvAXNuxHfrBFXw8fV9JbtGLNAD6Lza7hcwuHM/5FUb0TdWcJlLFkoFyhVX2eG |
|
45 |
+fsGIQ24S9pGk0Di9gaVHw51Hx2XJojo4YxqISQ/vvrYSWLM34Vy78UHeL2v1zhm4TAsQwUDe9zUH5frnU5RVSmq7rkh7yeXaZK+jOYtmJGe4tWhYdjwaTeAeZYmjEnoV+lSXB/y7nnMGHio4gKa/4zi9vsDn7keC0hmiBWDV5A3E/jp7NZy0inU19NAk0YxE3hvCl3QR |
|
46 |
+svZDw/iozLhcbwf/g/KwTpEZIaZP1rZnKJINlV6FJPIS6GIQny/X5bJfhgevthmUljSh+CAA392aatvYyoTCYOiPLzEUNbXcPBhl1G1p9MJ/UX4HouJ8okzJI2wUrEMmnZClfmw3pSiSG7pIjuTzIIEnp//8mRTgFP8TZsc29Q8ir4hXgMfJEoeZHtoW+6ksdyqhhxAe |
|
47 |
+ewZLAiFWCrR/txioZEkzc073GWNRcRjoqMVwZpsfXf9GXVpVM6aT7LJlxaILry0bIjSG0R4dQ412n3C2aYo5VYlzwQAakgDYu7revDEPWy8wk8ZU9PHVJylvZOsrSJIRUGQIxgKkhzC+eodfRdF26T5y16JS0ui5GD1lfmpyZyjCQOa0nKOLysLfSuDADN5ilxmilQrZ |
|
48 |
+wIqSaic8BeqGzqAqeP1JZxdOmqs9ZtTb2LkI+DLCddXau3D6ZQCI9JlLoCzi1dedbrDOYJrTYd7XSKjauaozvsgVPgFqD/3vsZh5cZ8WuuPCbLPfVQhlAMcp3U5GISXRo6QvVG3yV9nc+F7dFc3vSrlnRlXOB4qGnq4/OyerZL7/B14rtWpiN/wLZWKpoTlmymSA5F2o |
|
49 |
+l7N3QBA+8Yzy4R3gclsd4ciUc3M/m7vMGmWcFDaFTaVT3lWIORQj0uAo98pWkf+6vHiGXZWPs7887I8+3jvGbiN4EUCCiUUc7KHW32N6JfyutJerqt39gfTZXgcEaC1whEM6OkEk0siNoNraw7SjxAM4BPkytO5FVCxGJ/QCVQW2Z+HX7u7p6YOg7NBpC6pqVCOZjWnr |
|
50 |
+DlOmFl4PKYuBi3+iC62Cnb56Myw8b1yKlZ4C4QUQ721+NT88QrXTb1AN9uxKXKTlqyOxhahccUOXePL05xkpcfQ3gY2Q05pYVImemot1rPPo+gmiWQGYjtPXGLgXECw3/YNw9EIa+oTZYJK2u2i+IqWM0ROmCWNpD+xCN7xentahbPhesogbsLOlQ7Q0RMsTR4CVbhZh |
|
51 |
+IkLymj96pInCJ9BaCqcObzZleEpWekfdxNlRF68DZ2xt4xU98WkaFqeL+U9vZNGuKEsKFy/41T+2XFfjbeG8r3jZjT/JsWR1TlFr7CIyBqDdAdJ5TbCvIpUOPUPvtv5lNtI2QLSGIUaF5qKM5gR7kWWMsjgKV5tArHQoXR6Nny4yNlSVETXtcfawNFLXlotHEbgZn8ns |
|
52 |
+ykpbby+eO16pu5rgY+x3IKMjeZet8R9uSHCqQGfRynr3c3DpAY9I7nXq+gDOzQ/CFQsPtgmKBu3YTMtqIZLMyXjB1E/KIIvhIK3U8jY3rbz2kg3z+VJ8GZ8XoRxuYBBSwlmaihY5AyD6Kx4Ik5YAbhCrvHwRTn9qo127unYpGXBNpwe9j4KBZeqqnNZpKTEbgNXX34bD |
|
53 |
+hjp2XzoVSugR+TTsXbQ0LTleSS242eljgAv/Sr/0YuU7PMj6NvXV5iJuB/Vi/WcpH/HvUP7t3PzEBebLucDr4XvGdBqKoBIH2BVJO8a5oqA9OxLnN4HjJFDkSACNbJDybhe+Q4QpxPk3IFwpLYntJKNGCSEYul+ikDXxPetb46+ZmjuMt00+UhFRCONcr2Hd/IP8mLzU |
|
54 |
+GWyWmyS9g3G10edYAo+5iCG1t2rfhH+cEp2LUe8iJoIOZF+e8reBDryg2P5CyimT+3ZCZljs2XV+MvakMopUPAG3vFxEnqF6yGKVDTKjznMMmxhv8bRHiM3E0br1vprgZB1W4Y8rGOYRivhFiE6OKRvBDyEBRJRNbU8DK+qJ/9zKzIXZtfbGBvlETdsMjxn5Mn4drRlG |
|
55 |
+PQY5D9R3PMy9Ar5U4qlQjWPzC/H+soJBYWWu4yvn6MaJZUCLrNkKOKr3w7tmQ0jx+mXOUirn56jPChWty4cX0FnatSz/+lVPeFt+yLzhWCp4RkvZwW1xvU4mBGdY/jhP9wunWjw+mIH+l8mt2+gAif/E7fsf7iApt4FNQudq3g/X5f/Vv2umRKUihDfeeGbjvs5a+7tp |
|
56 |
+oSKckFIg4XXYPvGls3PdllHXsNHyCA8maT+E0rdb6yUFhfbBAMvaIq4Z7nF63ZfEMvXYxjyJfvQn3PY9waw/dE7YYWNUnosocoTPCK3chEtw6tZ7XU/Vv3uN+4micxE79N+Dq+OEwJWGMQDSi54c78c035vWWD0+ZZVvs+1W15HLlwa0t9Re0dmJGiN0SjoZS1K+w6zd |
|
57 |
+s8jEmVolF1mwUD6HMOdB35sr2V5AvtO0MbjUjR+JPy9Ux39yeL3hM1dXDCAqoe5jRgA6k0uWxIKvO/YSuA5ZSLru85xoeMFXMr4Z86+bKrz5blck5DPWoyy1UiUuSxwfm91DddGi8S9iXI3s7jd2ndOby0vhgefo+kQ5aZK5+eNVX8Q9FZYTRfrIUgM/7G2BUGauucgH |
|
58 |
+V0QvuaZBS/g6Q00fhUolcfXqPgADFRml6WWmSwbHyqg5iCVyf5SwZMEYgIG0MclOQmjb08XY5WqUdBBraOd98TW9+QDo4rstK8RQbf/TrtnHg2yQURvqsl1KgEVUHtuAYLYRE5p40uD3vvugPvAeARNXft93Mst5re8YNEhtoqxGNphJm1Wp6sO3CqAu8LV6dhBmebCJ |
|
59 |
+dzsFcTD+cg6oMkSKvvMI9Haj9DtrI2IIpUrZE6xFgfdrvVZeIrtSP8/P1fgbbknZ45e4I5nTA7nt7ftRfq7cPH8knyjRCUNS7yHSirY5sDj7ew3baqbO01f5X1jbbRrbRpR2w10FXmtnGgwtzKaURBJsFpqCVqFLgnj+GM/2NbwjZLhcuJPP+iiyd4QWOu5iJ9YL/1Mt |
|
60 |
+FAR6xqdD1Qeena17gr2ThGabCBgY7MLFMnwUCLNmk5TTO/aR79f4zp+dqO/8qELqjv+Ri6RRn04TMALUxkULGu3BfRE90sTLd0rddr6TPRVQNw8XXsbtWNYLN4UBg9FMZBGTWJm3yfH5NqkKKpdGvYYlRja99GnDRNaBXznF5K+WRE2FhpQrHtjzpCk+qIr8bbV8k1VX |
|
61 |
+BfjroSOp+lc2KUoL5qxF1VP3NswrkD2C+AQao2Ajxpi6J92C+ThyX+/z7uhmTvrFpoJtGVios4ioU/WzfCBUoMGXububvi6wNKHiUFqdPsMZAykSipcxXAabw5qYvzXHsgFKGXg4C07hSHEhuDua7Tpsy5hDSUnfqHqge7fobxbcbFsG5y1fOYiTWnmSA+zlmH9RJRe+ |
|
62 |
+DsG1dmGenCjOJ4E19Amc8EemVcqVRiQjO29N+2SdGPmYHKK9OYOt7qhrhnQiySqtj42Lj8ZA8Emvy63QjGoRR9k64OKg/IoQRErJpfUDgwjuYThPmRh8AhOs+vUQOvhwmzc7OZncasTipygix0fsygCanXNTBCnOUpiJcJqY+I7dFCl5MH2rPh2qpzPR+zTOEXBX4Xjn |
|
63 |
+VRzJf7tXMF6XuWWOyNA8dPH9HcZTFTLeGXS7juzUwMDMXGDUWHoIhIAOSehSqgXfCrOhXGh6dE9GJATUan5ccSCj+ZUkJS9cWsQr2Gipbi9S56ZXuJl+n2okBOZCuYvd1HXMfq6eGodLLugA9cdPNsjHuBpXT5kgXicxnJfD7CPIALJ98q9dmSI4HDyXq91vACMVcdTE |
|
64 |
+yTy45yRgUXRnk5dPMFgRETIuo9pHu9hu3UTK+yhB5rv3zWCl2DwZp6fX4sXqv+Ox9+dIMZu697X+VwAVP8EVvfgQ5mbspxd/6Goawoh+FI1qTMeJ/dixXfXMq5yo/EGSAfRfm/WbmRrMy2FojT2o4w66NdS4wzT7KeYEwslNrChvMHSV0D76AKAtMYLaF9eq65UnfTSM |
|
65 |
+UxGPjMCtgl3NnghivWrGTaukpbAb9lQueRlY7skqUxvQFopG3BEPRcwi7wgK6rSzmSiKMIl637jlnv55rvNzou9QaZ9Jj2xoIr1b8EQT6Er/NRbKc6DVeet/Wik8i3HjtiXXI4z6sheyqTq3wm1EaQt3mPbcKZVLf6bpDxeNEzk5L4cbbqP7/1tDnk3BBBL5H88rUr0X |
|
66 |
+wfEUjqzb18jd69NASqC1VrammQijSwlzNxgRsVa7ouLqwF6yQWIV7lKDqNBCZoc1owlxVncmD3kdTLrv9zpdbL1QmdX4MKdVpiuM/N8gSwvcJ43j39cHR2FmqtgUXl1RtTnjHlSwT6xiC59BCeoO/JZxvyAX7WRBltuT3WFEP2vhFjoqRC6717XVJYsyApQakle2r2NP |
|
67 |
+2cANBO25aGX72ZOsUwDXnAQgIDnOlVF3pTEDum1hPG/5vPMdmptR+NGE566XgfdT7A0qDyXRChicqdLO4Gv+nCh1QshPd6x8ZT/BhEqvIu3AysJtZPfn+osnvNJQLlPyGFYKTbenC3IKOWBJg6xfau2N9aOGa9F1cdpUj6uJ1KqhnsTjSQnMbqDQ9OwH88U2225MQ1e8 |
|
68 |
+5fMeMhxgtxIqfO2cm9GtN+sAkwT+6D1ShH0+l6xWnGGA0fIXJnjPbVl0dPWzx3KndCpaY8R5mCw2YDbeWB01l+Ia6AZuuGiItYa4B+aC/zpgi1UseJDdo6uGOPHn1fCQzoWOHWPQwq5DwYEC6mLklJmorQRZPRSdqbH/lsqlLo33p2D5o6RnGrWRJKeitrsfpTd/HRos |
|
69 |
+9jerY4LO9xyr0RpTPGyP1beNiUUytRWPpu0R9p2CdIDTN6XH2CVdhfm80OVnB3cJg/Mmio6Ak++F7cH3JrxoGewUGcikwlPPMbPVG1eXLbuPDQOhAgEzBnW9huaNhaEGWhqE6uqDO12fCKVlOETZyN8djkHO4IjGbfsbIZZGlj64yrxS1qsh+QTiY4kOY4/6GKSy9suJ |
|
70 |
+tA2+WuoWDwZGHNGrlBKp/6Mg6lVaIPBHkaMKwdPXuX3ZAOPysEb2/vfm/Kio5tMq/QJR8c6qPvH33qKdQu01CjSmYwnoPvHFUsqe8L5Q4wAPp4tif0HPHEGycx+yGJ1aGJbGt3SYFtSO3li6zKemwFXKrCC+4/c6C1/H+TRG4lFb+6Kjwzza4LC/1ZmjjjxEtKnISHiv |
|
71 |
+eDq2WR00YACQhXypstUe2utXHDXs7vMY2hG+3/uEDdX9B11KkdiPJTzCy706WxrSL1PgnyzYyWgQyKfSNp0f5/HOfPuLv/dvp5EwJEAzUh+ciiYlxyQPB3dlkJ5WzYhcgpPq6P77dIY0/+2nFOYEm9XWwkK2RRkud3EijAijo3VhEdKtIh2O7F/pRkd0Omjl/ROLK97a |
|
72 |
+gJcNWMnPeayOXpqC7dxuNyPKZe6P4mRskdEOKKvQygdR4aBXamz9onPsGUS8jkxP4a0kSzym7dtZ4GBMXPcEp7h7JZYJxyMlFJOFK16mWVwwUD7pdBlfvMN5QtYTYyFI1ZNaFjVA5gM78QikKZoVTONFDq1KZiRSMzNQZx5QConAFRmd3CVgXxvqsRwoQOapqNF3PxiH |
|
73 |
+Bi5o8rt25t+kn/tORQ8bQj3sGxZWrEyME6aQIR4V8HuvhQZZPsnguuJAIUFScZzXL6bC2S2oJ4xzQ43NY1rEj617b70jxHliPA91Xap2NKhDZLJfHehu7Xmi4yAYqqQ2Ovjw44T0WLuAeHKZDyI9C49Mhu2igsbo+w7p/vVtszP5sbZSt6Fnz6kJ5k4k3YmbjkRZGjpz |
|
74 |
+iiPPhDeVZmIgqMmM18XgUoXAjWFNs4knsXvFaAJ7ysH7n4o7ItgX1A+ZDq/uiLceugjtbh7PGpXLMBRQf0xNbv+NL8U976O/ItbTt3bVapv/pt2jxruDXWI9SiuqSX2UkdjXNMiShnGBNoZZHe20jqlGwdzYeMmigwq78DEYwB7yNb9ECF+zipXtr7HNkUE77SvlEdDo |
|
75 |
+BdMP4IU9+ydcAD0Vz5jx2EbrBqd0wditW7z/lodv453vq3xKxtvEkS82PR/PFL5E5sA26kf/FbeIuoAeDB28pL9jV5CzTfmdHUydQ+3k2QnC2dM0tE+Wpg/2gJKP6tGnJlL3KwPAQ0UL3d3ic40pZZq/dFBDGtVNFJwEpVrCFPvrVG554TMlnwxRgHJlgUdanDCM6CpH |
|
76 |
+ijft7Bs90iaBMJDgbjXAqrRov0PFpFq6JQPU6YhQ4jgseoi3bdJg3OVP/vUgNYUbGf7axpNChn0YAYyqD7LOnKsGwHrFxDDQavacwZamTE50OqOU5OzQNsCY7IVyw7E9TGiNi9hgKvP4ax4zVCNOZCDqHKaDIESjxmr6W9BCQV49CwY/oQMTGeuAXN4vAgbl6zvi4dpF |
|
77 |
+MxukTq2TreYzTReIqIPHtWmusAV0zlDJKqGTk2UcsnxvxDMxlvY32c00dpfy9NklIZ6WuNOzD5uNHbZ6W9sGxmd8iFOKKbjXCCwCDsT3m6zb0yR79ATmU1A4ylsXA+IZaEOl5jNJtsLmx7p/rB4wY5t6wrcn/EkUhoyqpriC5OAMdbJTHrMlMQRq0VwRUrZ0gmHVWbfr |
|
78 |
+UbOQ9DllkvEuOUFd5f33FHCDCsdx/G57kELLkgeGS3peIV3+nLiEq91sXmu1E5lRWd1Zbvw/N5nHdF0agZIW9pn2P/ukwg6Jm9yAQrTCCMRDEuWcXyNvAwg/G96g2OxUAgRPhJ84sxIFEHz61MZCgR2Hzc+fJii1SYCYifenQm0p1jZ6TCN/+Y322+A87NMYbxXB/90a |
|
79 |
+2cm680V0tdgow+CoyvlzN+0F/R+JXb6ae0QxiSKgzGx8tIDwicWXO1OUos0deXaVxAfG5WKHVeUzZ7pTHD80matrLDM9y0HtHFlOcS/lT9wt6qepzcEYD3PYrOELv80FPJicG7DF2oRR9n3VTXFRhak3Bd57RvKsEpvk5zQXb3RgipcxdGJoe9g680rBpetmRqRtVAOn |
|
80 |
+kWmSzehinZZ3V9PKgonrT+ZPuBfdR1pGEQqlIDkRvJoazmrinF8ZiJ3gi9cE1gflvW8KHqDOELpdsGO5jugN4R2o8meMrC15lHKQlUO0GXjWNh2JcVqnU2MpynXQ4yW3JLLXw+Ti1+sRs8Xg+SIDaH5uIxmI9VufQTUdSLnATpMM6MlgOA6YoNruiHOWNRcG2aswITrf |
|
81 |
+z6uqovBie+Tbfce0Z38Jd9gc9fyetvpIkYNA4NTEeGMbdIP56webwWemLiSy+ZLRKeRPuMxkQeLgLSdtRMCwSSd5cbRrMcOVneUvroUVdRlPG53poTf4nn4H5h9Sm8bQ6XMeu0IoCI5Zb3F6xzh7mOqnP791gwEBwcZQpK1jIGHlhFDh7KFTa7Mpl4doQZrKQyA3Edfl |
|
82 |
+dbnrbrPaI/Wg1pNr4LBnSarsBMIhzkXcKFM9SeOU8eydCHPULzBFaQUByGFzcQBExZGS4THQ+UD6ymyeVfuPo0x2WOKhPH8JYLq39J+6ngslmsywCVQa5ln5tH+CS8dWlnzElnH4bH7ZIwcU96Jo+hcgLdVOHLHWNDrZy8XoZ/gjytpXywqJHit85incPmx+ha/PGR25 |
|
83 |
+mdpbpo8oYKDBOn2tJXJVcCVnlQKSo3EoGiIGM9oSJmhYggub3kuVw4kgd2CdgJYuH48BEczASPHHI9CZBoAqQO7UPHT+eHukYE+Z9uffaa59sx5TGxYWtDa02xbF28pCb5tMdh9UMX9+491IKuEkG06JmykDtPrUXChfDr1iJGbPe8wC8WyDO7ocMztHi7tQ5hi0OFu7 |
|
84 |
+1+HYcIWfb1QRvsUm9vUr6O2lyoxotYFmcQOcJK+g2FhIXJrzWx4z9C8zSnLEo3BtP+dK819fFfKqZkB5wYsbQbQtwcBJkz8ffTDLzP2W4iIkzDRbXmMwetgUitFWmUIoj+43aOSdwstytjHPIf/UZEI7oiYyLnmeW9NHCwCrnh4cUZ2O/RJv0wOTJk8sjkezbgXcd4B0 |
|
85 |
+TGgOI6+5B5ro4TwNpGvBrIggOIWJ4HwCaVYrDTUR17EjQ4uiBcq+n5j/3BmQHrGVVcm19FR6PCNDePC/OPZ9eZqy+JWHO1u3qnquebCr7rALXOLYHCDnuUEBpmKOTagNX45xTa00vkazfPZM2L0gASGteER7/g8f5omaENAuWJGyIx+jd+qHfFZ5dvCoB0hZRcF6diaW |
|
86 |
+JqqM84KSMk7UOFmZuksigkQu9SdstSPDBIrerQVxGkCmJau9zg+/UlCERUCKwVecMZttpOnLQZl3DeFf4vlvp6iOlwmBIE9YmF0RSq6NJwp6rckqKS9xCITcJVXR7eT3uMX9j2aduJS3ZuN0F00/NZ3IT3aor6XFmFQOXzXCA8XIWb+U10OcYRe+cQgYMw9f/yP0GS3i |
|
87 |
+paMwLsb6Ter0Y9nHcJfMUdihhX3AJfYqfteB5Jf2SUUJmrS7zCKuXVHW/YqU4GHUCXj6DwpdOUH2DoQ3R8ccp9sF2MsfRfh67hk1SBJDWL1IzTn17zgM2ukT3JIqqd3lyn65o25jAAfLz31Ny7FM+5UFDeetxsV0nFopbqIBl2KNda4qQfzSNjVZ50bo7ko2JB8Arwuk |
|
88 |
+d+QfTQrtgmRJ9roCLc99SVNZVnJYrgHnofmRq/DNfjeAFoa15Qn7wuEQDpI50QOR6PC1G3U3FB8/p/i0gbg0haud0yks7MddWPsPMBgjLRI373Q0nl6O7zlB7cGJW3cntkYrFX1Hb0bTmrnFTJ965ewYH4dybLDEU7yhts8s/lf0SAthw5yy2b1fFjPCg4PI+RLco1fK |
|
89 |
+Kv/mFHw+1rZdRzQyiChZiSlNCvmZw2BCY0t/qccgFqiZCl6YEA3fO0SHHLze2r996oA3sACqS/78PciK3YYUkJ0wr27tjEbgJusBwwGppn8nvxqa1m+J7WgKygW+l8J3MBePqd+nsfzPe0TE866Y4SPu2oGRShBDukJAsO32baBI9nKpcKzvHmFttpzKFiTzyx3y6gJl |
|
90 |
+dAvJf86o4JmkJCWIuxoxZ2fIa+JrTP1IYfNRVeWs0/c13pzLaV2S8M8uBOlUyuDk3YKBL4Ks/KOcfH41H5q5bMlw0XPL7TmXysRPssyvso3TBPrtqp7qgUdhIrXfMIqhk/mXTWJOUZzEYblv8N3FVWKrtcYd9fOKkbiCYrq69ULDmVhb/mwKTcjP3iKeE9VIC4ctv+/F |
|
91 |
+0fuyrbAAyH6aGYarDeQrtb70v7dr3uuuQUkF0S5OKd0uL7ZZ0jQ9ALZv9+BN/5H7QbB/218qh75RtMGTeH5S+Zh/OBKcGGU9ryfeTjDJdGaOxzCTseq/FcCOAX22864GjwkEEvolU8uW9h/c+w8c7yDFjZCvz+zYxmoeyF0NjXOwLtA7/KGub7PVmzw7K2siF4wxZ90A |
|
92 |
+PPQrbnM8pF6dGDST0Em2U9vJo1wThKFH0yWepdfvreDYhd6H3X7T7rb/MxlURUV8RKMZXZS1rIJg7gKn3BI6Yqc5sn/JFu7MD7r9Xuh8g2vzEqPHTF6GBU6KE5IfzVBivqrqp6/D05WqX+B68HxEeu9eKtPLYaFyX/fNwpqPct7dYubR3o/rw6RivfXrup7p+dQZCfRz |
|
93 |
+1snFYAlzrYG31pBPGo9ygS0zk92Y8keOxsbhaOCJKP44gunjVoZHuLYUC6P+kHcSBQErUPpDAcFH5Q8a7mSJNon3VSlWZvbq4pcYi3G+kpq+oNb8aeB1guANX6Zjpak+AHf5aOH98r2G5yPx8j63Ez5pcaqz6bd0uzfwv67o4xE1NbT9Gn6Phe8FUZMjDLdQp9axVbfN |
|
94 |
+RJmkRvLgBYx5NE89g9kDq4POV5x5hXg5oHBI8wMJJNgecvMtevYJo2TYgFzVVwuZWY0wM5mDvIx7j/qkWH4oYQd/Kom/XCvIDfbf3OKpDVE2nxphkAofL9juCf88jdxE8JSuatBlnjVX3WAUegHeiriUMHMIYgL3jzdwatPmkA/RP5ziePasoHVSGOMPKlCXauh2mIY1 |
|
95 |
+PSp+C5cF4f8waTbcGj6GAdXBvmfpXKZnHmppZCQk2PuAaU47ClTP35cfPQ0Cgdx3+7YQ+vG+GqJgeYj8s3BfXWA+5569PaTHXl1keoHNiZEeSLVH2QRBWuzK/ZAyl7ix+Cw4bgA90p2lqyoLcNK6vXSOUqXwo/Uw31XmTUAUokmo07bhGP41ePz1xWIinyAeOZ8LujK6 |
|
96 |
+uLoX39sR+hqKWNJfGhVQBT1XlWPch+8VmXkzgROrsx/1E6tayTcx31j2I/Zht4hV45XAohpzSw5pAGnXTUNXKueypAOxAtX44j+PtbZNigtlfsalW8GpFx9p0RJG42Vc17NtAr93W4OzWSjYbbVIOtP7Jzk/z14oH5Rtp+f/w0/9agbht7oNetWlNZwro2DOrXdbWTkd |
|
97 |
+BY9Cu6/1BW5ej51ehE8gJhDidrRibpP8rkkEuKw8wBWRNIaSRbVVxGqy8gPAWeY18r0MSC1eailBGiP8BLs3+pbyhyy5BvNXlH7EMchouJoPBuxnUBoJ7fYPxS1a7GFuUZoYfXDQJA1rNa7hY6zI8V0gsNcnEE1CTasbbr2RmRARDyJaPCHVcI8Mb5byAoJuaiMdoZ9r |
|
98 |
+oJFVpTbInIyXYhvS3qvWyA+uyjCzxZI/cfJXxRvNJjr/gs++gEbmL5Wh+NnuSuwIFXtn5JcF8pM8oB0jUV5Q8fM8mkqKhKGPaqQlS49YlN2wC8z9vLzOq0Zx9JYGetZnV9WxUgRqHGNTwWz4+UIqUET/3Yd6yJjIN5mqz7xLv7PdrePL8xbePcdomt0x0TJJ4upZ/IZX |
|
99 |
+VcKFQcXW+dh9XpiM5KRy5YpefMZTSUrAeYjiNkxVtESXrjQkTliOHLXqIO4dmbzeZm6MUFZBga9tCB1OIQ1UYu/DzV2xvcpLhtHJfh4eh7HhUnK9XpAB+friar2Xme96fQZGTm7m9tu9bMJkmfDroYf0LHz4ugDB5wKexmLHhxy5nThdUNaulVHWfFeqg/cBArvjDaXu |
|
100 |
+WGovSfBWs4bJqTu+jGCvrGlOBy+ZQ3xdjhr/PeQ2N55uzPyuW6T+ieieENCEj0x1QwVRFTOW0PSqGbRF+Te6mrMBB13DsxmuYTg//3Bs2clOzWfNBTGwrThW/Z9wp7hgZTKcXGOkfRvm7s1nKUezFbroND5Y/RKhriJbQX+U5m0aBLJfuDgqVQ4J+uine573kOXQWHZB |
|
101 |
+CeYEx8UUNHqxHz5kcbCBcmkOwe7cuWGPCOxMkEn5I8bEJIot8n8NmLelFBM73biMD4HDpKuV4yWPw7R1hUxlFhVFsjk/AePBwRxRd1K/fGOP6ukSjp9Mk5ol9jVgejVRq15cFgtVaenLmv+Yl0x+YXAsyOlViVYyI/DNZAa38LL4hQkvV6KUA+A+14/dEA5xI08A6+FG |
|
102 |
+rBkmYq2JEgbEUrcmWUpLgqQuRcaQuOpEHF31xhIFB9bj88y2o6VuhvX7lXlikCCUZulxAe8V9rjZrdVHoOBZXAlQsfZXPaTEOUKDoHdAjidOISXpwmthD2zqcQ6NsZ1Jobnaxwrzg4dUrpVg54y3iG8jk67/hkqVS8nddwsR1ut30arKIDJxbcaTJgS6ycugZxOd8P1p |
|
103 |
+Cr4a89EW2cjn933EhRhHj0slBcWnEhKKgoY2r5tIJyshJkyPS76oylLcyKNE27HCyeWW4jVigrB+PRP3PxI00Ruv15Vezqaqy1rZ8N6mOWvgkARwqCVqrCaCA4FhoOfNHZk5kqY47ox6flLcBEkqZNyo/dF+nX58OnC/TJv5xLLyrTmfVxrcAF1dMBHTfkpCiFw9iHBj |
|
104 |
+wHCEq4t3Bma1lKzXqmWgTn0Azy0YyOZZaFMK5Zrh2PdIYz/QSsT2EaVO0jkoO2ELViRx0XG6+Qk6MeIeVPJAFpUir+c6QLYGm/AHKE9vftKUpAH3RN8iDF3g3A+TtCmzzptMYfGNFtNC9B8m4tYE/dC7qwDviU8a4MQOWyEjbkHxyOiSRLGOGRxvH2iNDwYiKOmqafKJ |
|
105 |
+OYg2cztyQ5CYFkNk6W7tvbX20J1LFvgQkRNS0plKtDYXKcf1TBFTTHazQsI8FCs8nYfTt0GfhHe+2pxKZHXBP9p3ztqw7y5ZIoACqyB0r4SuOQL+R3VPkaGsV8QVmGU03CXjHViHCIK5pqIF/It4ay8yjxsAmw5E+PRrYESIkW9B4HlQJOFc7JzBd6EdSffQ+on3BCrL |
|
106 |
+lwW2U6l/J9PuNWyKvYRK4Ch90yU/ElcTFbwB1ZssmTyYag8Vq3sxn1JbAQ5gICW+4cfx+H4PsgtmX7du1JRpsHgvaoV8FQURWuXdJfLbQUntvj351RSzXEZ80oLbutp/L52XXZwduTB79FazTnXyorrfcB1B/YS8NVs3UMlEWB2ved/yHCwP3AhtuhXM74WtzivwLTpw |
|
107 |
+Xag/ZXmrlB9Di+7einoSGnuAAQbpLs+FmOGISz+Zik8quZttGlVrewhT9+YYcHmk3KSFgLPKGnkKKK8IFsqK0VOav/xmzFy+ghG2B6+RjxcgPk2Hlvmh/oTy/S7nuQZ1XiGvbCGELRtZH2X14vG7J8ebjNtzTXbsbKdAKiukCihlDYsSWu1+ILBSGFbewkkVy/wEwbS6 |
|
108 |
+3xLxC4Yv37AiQ+pzRQEbW8Dps3RzKaXWVLUQ5BHXpiEfj9S1r3lyeQ4jvrDACLYDOv/Ce2cGqqFo3edrVQKopIei4lbIw8urJzD2lRm9a8oVZDPXuiqX3OwPjAQgDvq8lK644FQ5V6DUrWD3DF15UbVyteH1/SzBXXc5K+QVo1uUVxCOMsua0QRSM93mAQnOJ73o8ibi |
|
109 |
+xGiB3D5FqOOUua6zeiP+f1YlsGqnD3JC0Ojl/0XJZ7gurw/I/E1rVNPumTM86tWbQ8BEvaeUtQy4aCuX8Vt10/UR1WvGhDUJrqemXTOs8c5FRSHRx3uaB2vGeHVgzY/U11+MUuiHPid3pRdcf6M0ih6UghagFkxuQ96drVejVfdrPiqjoCvxN5xtTLa7Auxr9AdeNndS |
|
110 |
+RhrpU1xylvFHAYXjDZZxPthfmOCAs5loCp5M0/8e0RLb+DMeQdcq+9PrVzzTHexIxz1U/PB8EReD2K1Zv5L8RU5k5O6F7gAAAADkdmRDwGEr/QAB8XaA4AMAVj6fBLHEZ/sCAAAAAARZWg== |
|
99 | 111 |
EOF |
... | ... |
@@ -4,5 +4,5 @@ DEST_DIR=$1 |
4 | 4 |
|
5 | 5 |
mkdir $DEST_DIR || exit 1 |
6 | 6 |
|
7 |
-(base64 -d | tar jxf - -C $DEST_DIR --strip-components=1 --transform="s/paper_template/$DEST_DIR/g") <<EOF |
|
7 |
+(base64 -d | tar --xz -xf - -C $DEST_DIR --strip-components=1 --transform="s/paper_template/$DEST_DIR/g") <<EOF |
|
8 | 8 |
|
9 | 9 |
new file mode 100755 |
... | ... |
@@ -0,0 +1,53 @@ |
1 |
+#!/bin/zsh |
|
2 |
+export PATH=$HOME/bin:$PATH |
|
3 |
+ |
|
4 |
+# Load resources |
|
5 |
+ |
|
6 |
+xrdb -merge $HOME/.Xresources |
|
7 |
+ |
|
8 |
+# Set the background color< |
|
9 |
+ |
|
10 |
+xsetroot -solid black |
|
11 |
+xsetbg $HOME/.xmonad/cheatsheet.png |
|
12 |
+if [ -e $HOME/Pictures/backgrund.png ]; then |
|
13 |
+ xloadimage -onroot -quiet $HOME/Pictures/background.png |
|
14 |
+fi |
|
15 |
+conky -bd |
|
16 |
+ |
|
17 |
+xscreensaver -no-splash & |
|
18 |
+ |
|
19 |
+ |
|
20 |
+# Set up an icon tray |
|
21 |
+trayer --edge top --align right --SetDockType true --SetPartialStrut true --expand true --width 10 --transparent true --tint 0x000000 --height 17 & |
|
22 |
+synergys |
|
23 |
+ |
|
24 |
+# notifications |
|
25 |
+ |
|
26 |
+dunst & |
|
27 |
+ |
|
28 |
+# dropbox |
|
29 |
+ |
|
30 |
+dropbox start & |
|
31 |
+btsync |
|
32 |
+ |
|
33 |
+# notes |
|
34 |
+ |
|
35 |
+tomboy & |
|
36 |
+ |
|
37 |
+# mixer |
|
38 |
+ |
|
39 |
+qasmixer -t & |
|
40 |
+ |
|
41 |
+# Fire up apps |
|
42 |
+ |
|
43 |
+ |
|
44 |
+$HOME/github_repos/shairport/shairport -a srv2 -o pulse -d | swap_variable SHAIRPORT_PID |
|
45 |
+ |
|
46 |
+sonata --hidden & |
|
47 |
+ |
|
48 |
+if [[ -x /usr/bin/nm-applet ]] ; then |
|
49 |
+ nm-applet --sm-disable & |
|
50 |
+fi |
|
51 |
+ |
|
52 |
+eval `ssh-agent` |
|
53 |
+exec xmonad |
0 | 54 |
new file mode 100755 |
... | ... |
@@ -0,0 +1,49 @@ |
1 |
+#!/usr/bin/python -u |
|
2 |
+from __future__ import print_function |
|
3 |
+ |
|
4 |
+import sys |
|
5 |
+import itertools |
|
6 |
+ |
|
7 |
+def file_iter(fil): |
|
8 |
+ line = None |
|
9 |
+ line = fil.readline() |
|
10 |
+ while line != '': |
|
11 |
+ yield line |
|
12 |
+ line = fil.readline() |
|
13 |
+ |
|
14 |
+def row_iter(file_iter, split): |
|
15 |
+ for line in file_iter: |
|
16 |
+ yield line.split(split) |
|
17 |
+ |
|
18 |
+ |
|
19 |
+def chunk(itr, chunk_amount=25): |
|
20 |
+ lst = itertools.cycle(itertools.chain([0]*chunk_amount, [1]*chunk_amount)) |
|
21 |
+ def grouper(key): |
|
22 |
+ return lst.next() |
|
23 |
+ return (list(x[1]) for x in itertools.groupby(itr, grouper)) |
|
24 |
+ |
|
25 |
+def tabularize(fil, count, split): |
|
26 |
+ itr = row_iter(file_iter(fil), split) |
|
27 |
+ for chnk in chunk(itr, count): |
|
28 |
+ maxlens = [map(len,x) for x in chnk] |
|
29 |
+ maxlens = [max(x) for x in zip(*maxlens)] |
|
30 |
+ for line in chnk: |
|
31 |
+ print(' '.join(x.ljust(maxlens[idx]) for idx,x in enumerate(line)).rstrip()) |
|
32 |
+ |
|
33 |
+if __name__ == '__main__': |
|
34 |
+ import argparse |
|
35 |
+ parser = argparse.ArgumentParser() |
|
36 |
+ parser.add_argument('-c', '--count', nargs='?', default=25, type=int) |
|
37 |
+ parser.add_argument('-s', '--split', nargs='?', default=None) |
|
38 |
+ parser.add_argument('inp', nargs='?', default='-') |
|
39 |
+ args = parser.parse_args() |
|
40 |
+ |
|
41 |
+ inp = sys.stdin |
|
42 |
+ if args.inp != '-': |
|
43 |
+ inp = open(args.inp) |
|
44 |
+ |
|
45 |
+ with inp: |
|
46 |
+ try: |
|
47 |
+ tabularize(inp, count=args.count, split=args.split) |
|
48 |
+ except IOError, e: |
|
49 |
+ if e.errno != 32: raise |
0 | 8 |
new file mode 100755 |
... | ... |
@@ -0,0 +1,18 @@ |
1 |
+#!/bin/bash |
|
2 |
+# |
|
3 |
+# Watches the folder or files passed as arguments to the script and when it |
|
4 |
+# detects a change it automatically refreshes the current selected Chrome tab or |
|
5 |
+# window. |
|
6 |
+# |
|
7 |
+# Usage: |
|
8 |
+# ./chrome-refresh.sh /folder/to/watch /some/folder/file_to_watch.html |
|
9 |
+ |
|
10 |
+TIME_FORMAT='%F %H:%M' |
|
11 |
+OUTPUT_FORMAT='%T Event(s): %e fired for file: %w. Refreshing.' |
|
12 |
+ |
|
13 |
+while inotifywait -q -r --timefmt "${TIME_FORMAT}" --format "${OUTPUT_FORMAT}" "$@"; do |
|
14 |
+ CHROME_WINDOW_ID=$(xdotool search --onlyvisible --class google-chrome | head -1) |
|
15 |
+ xdotool key --window $CHROME_WINDOW_ID 'ALT+1' |
|
16 |
+ xdotool key --window $CHROME_WINDOW_ID 'CTRL+r' |
|
17 |
+done |
|
18 |
+ |
0 | 19 |
new file mode 100644 |
... | ... |
@@ -0,0 +1,7 @@ |
1 |
+export LESS_TERMCAP_mb=$'\E[01;31m' # begin blinking |
|
2 |
+export LESS_TERMCAP_md=$'\E[01;38;5;74m' # begin bold |
|
3 |
+export LESS_TERMCAP_me=$'\E[0m' # end mode |
|
4 |
+export LESS_TERMCAP_se=$'\E[0m' # end standout-mode |
|
5 |
+export LESS_TERMCAP_so=$'\E[38;5;246m' # begin standout-mode - info box |
|
6 |
+export LESS_TERMCAP_ue=$'\E[0m' # end underline |
|
7 |
+export LESS_TERMCAP_us=$'\E[04;38;5;146m' # begin underline |
0 | 2 |
new file mode 100644 |
... | ... |
@@ -0,0 +1,19 @@ |
1 |
+# Requires pandoc |
|
2 |
+ |
|
3 |
+pandoc_view() { |
|
4 |
+ input="$2" |
|
5 |
+ if [[ "$input" == "" ]]; then |
|
6 |
+ input="-" |
|
7 |
+ fi |
|
8 |
+ pandoc -s -f "$1" -t man "$input" | man -l - |
|
9 |
+} |
|
10 |
+ |
|
11 |
+dump_html() { |
|
12 |
+ pandoc_view html "$1" |
|
13 |
+} |
|
14 |
+ |
|
15 |
+dump_md() { |
|
16 |
+ pandoc_view markdown "$1" |
|
17 |
+} |
|
18 |
+ |
|
19 |
+ |
0 | 20 |
new file mode 100644 |
... | ... |
@@ -0,0 +1,32 @@ |
1 |
+# Drudge Report Reader |
|
2 |
+# requires my rss2json script, my interface to python-goose, pandoc and my rss zsh plugin |
|
3 |
+check_drudge() { |
|
4 |
+ rss2json http://www.drudgereportarchives.com/rss/popular.xml | jq '[.[0].entries[] | {title:.title, link:.link}]' |
|
5 |
+} |
|
6 |
+ |
|
7 |
+read_drudge() { |
|
8 |
+ if [[ "$1" == "1" ]]; then |
|
9 |
+ check_drudge | jq -r '.[0].link' | xargs goosify | dump_html |
|
10 |
+ return 0 |
|
11 |
+ fi |
|
12 |
+ |
|
13 |
+ unset choice |
|
14 |
+ data=`check_drudge` |
|
15 |
+ cmd='echo $data | jq ".[].title"' |
|
16 |
+ if [[ "$1" == "" ]]; then |
|
17 |
+ echo $data | jq '.[].title' | nl | head -n 10 |
|
18 |
+ elif [[ "$1" == "all" ]]; then |
|
19 |
+ echo $data | jq '.[].title' | nl |
|
20 |
+ else |
|
21 |
+ echo $data | jq '.[].title' | nl | head -n "$1" |
|
22 |
+ fi |
|
23 |
+ |
|
24 |
+ echo -n "your choice? " |
|
25 |
+ choice=-1 |
|
26 |
+ read choice |
|
27 |
+ if [[ $choice == "" ]]; then |
|
28 |
+ return |
|
29 |
+ fi |
|
30 |
+ echo $data | jq -r '.[].link' | sed -n "${choice}p" | xargs goosify | dump_html |
|
31 |
+} |
|
32 |
+alias current_news='read_drudge 1' |
0 | 33 |
new file mode 100644 |
... | ... |
@@ -0,0 +1,14 @@ |
1 |
+#compdef symbcalc |
|
2 |
+ |
|
3 |
+_symbcalc() { |
|
4 |
+ local curcontext="$curcontext" state line |
|
5 |
+ typeset -A opt_args |
|
6 |
+ |
|
7 |
+ _arguments \ |
|
8 |
+ '1: :->template' |
|
9 |
+ |
|
10 |
+ case $state in |
|
11 |
+ template) |
|
12 |
+ compadd `basename -a $SYMBCALC_TEMPLATES/* | sed 's/\.tmpl$//'` |
|
13 |
+ esac |
|
14 |
+} |