4 ms·
I've been doing something very similar to this for the past year and a half. I was inspired by one of my coworkers who has a long running list of notes in a goo
by war1025 6y ago
I've been doing something very similar to this for the past year and a half. I was inspired by one of my coworkers who has a long running list of notes in a google doc.
I run "vim `date -I`", which opens a file for the current day in the form `YYYY-MM-DD`. I keep it in a git repo that I commit and push to every time I add a note.
I separate topics using `===` surrounded by blank lines. When I go back to update a topic I already wrote something about, I separate it with `--` surrounded by blank lines.
The main thing this ends up being useful to me for is that I put off filing my timesheets until the end of the month, and then when our accounting lady gets after me, I can go back and actually write down semi-accurate notes on what I did each day.
- jhardy54 6y agoThanks for the tip! For anyone else who misread the `date` command and used a lowercase L, here's the command in monospace. It's an uppercase I. vim $(date -I)
- blackrock 6y agoTry this alias. alias jim=' \ journaldir="/home/myusername/journal/" ; \ jfile="log_`date -I`.txt" ; \ jfilepath="$journaldir$jfile" ; \ echo "Creating log: $jfilepath" ; \ vi $jfilepath ; ' Instructions: (1) Copy to your .bash_aliases file. (2) Edit the journaldir, and replace myusername with your name. (3) Create a journal directory somewhere for #2. (4) Source it. source ~/.bash_aliases (5) jim will open up today's note in Vi. Try it out, and let me know.
- mabil 6y agoI have something similar, with the folder syncing to google drive, you could encrypt if you want to before hand but I never got to it, I separate one file per month. alias journal="vim ~/workspace/google-drive/journal/$(date "+%Y-%m")" Then in vim I have this mapping, by pressing F2 it opens a new line at the end of the file so you can just start typing. I add goals to the beggining of the week with the F3 map. nnoremap <F2> Go<NL><Esc>i<Esc>"=strftime("\%A, \%Y-\%m-\%d \%H:\%M:\%S")<CR>po - nnoremap <F3> Go<NL><NL><Esc>iWeek <Esc>"=strftime("\%V ")<CR>p<Esc>i goals:<CR> - Monday -> Press F3 -> like a bujo, review what is still relevant and move to next week or drop it. Week 10 goals: - [ ] check connectivity with service x, splunk and service Y, from new environment - [ ] xxxx Then whenever I will change context in my mind I just go back to the open buffer and press F2. I normally start my day looking at what happened over the other remote branches, and update my weekly goals task list Thursday, 2020-07-09 08:25:52 - emails / slack Thursday, 2020-07-09 08:36:13 - support x person Thursday, 2020-07-09 10:00:00 - dog break Thursday, 2020-07-09 10:00:00 - HN Then at then end of the year I create a folder `archive/201X/` and move all the files under it. I had a calendar event reminding me to review what happened over the week on Friday afternoon, but that is just lying to myself. I got to do once or twice over the last couple of years, that is something I need to improve on which is the whole point of article, review it while it is fresh and learn from it. edit: code format
- blackrock 6y agoNeat. I'll try this out. I had never remapped a key in Vi before. Check out my other alias, in the sibling comment. I improved on it.
- blackrock 6y agoOr, here's an even better alias. alias jim=' \ journaldir="$HOME/journal" ; \ year="`date +%Y`" ; \ yearpath="$journaldir/$year" ; \ [[ -d "$yearpath" ]] || mkdir -p $yearpath ; \ jfile="log_`date -I`.md" ; \ jfilepath="$journaldir/$year/$jfile" ; \ header="# log_`date -I`\n\n# Highlights:\n\n" ; \ [[ -f "$jfilepath" ]] && echo "Opening log: $jfilepath" || { echo "Creating new log: $jfilepath" ; echo -e "$header" > $jfilepath ; } ; \ vi $jfilepath ; ' Copy this to your .bash_aliases file. It's fully automatic. It'll create the directories automatically. This will now create a /home/user/journal/YEAR/journalfile.md. It's now separated by year, so that you can run this forever, and have a maximum of 365 files per year directory. This is a markdown file. And in the header variable, I had it fill in the new file with some basic headers. You can edit this yourself to add more. Try it out, and let me know.
- gtt 6y agojim date: illegal option -- I on macos
- blackrock 6y agoIt seems Bash on Mac doesn't work quite the same as Linux. Try this instead. It works for me. Let me know. Copy it to your ~/.bash_aliases. And source it. alias jim=' function _jim() { journaldir="$HOME/journal" year=`date "+%Y"` today=`date "+%Y-%m-%d"` yearpath="$journaldir/$year" [[ -d "$yearpath" ]] || mkdir -p $yearpath jfile="log_$today.md" jfilepath="$journaldir/$year/$jfile" header="# Log: $today\n\n# Highlights:\n\n" [[ -f "$jfilepath" ]] && echo "Opening log: $jfilepath" || { echo "Creating new log: $jfilepath" ; echo -e "$header" > $jfilepath ; } vi "$jfilepath" }; _jim'