A CLI tool to easily save, access and organize daily notes.
The name derives from the Standup meetings since its initial purpose was to cover my need for keeping my Standup notes in a convenient way.
Notes are organized in categories.
When a new note is added, stup
creates a markdown file and places it under the category's directory in a sub-directory with a path based on the date.
CATEGORIES_ROOT_DIRECTORY/CATEGORY/YEAR/MONTH/YYYY-MM-DD.md
# For example, the notes of a category named "programming" April 18th, 2020 are saved under
CATEGORIES_ROOT_DIRECTORY/programming/2020/04/2020-04-18.md
This allows users to retrieve any notes added on a specific date or in a specific period for a specific or for all categories.
# Fetch notes for all categories
$ stup show @ 2020-04-18
# Fetch notes for a specific category for previous week
$ stup log previous-week -c programming
# Fetch notes for all categories for a specific period
$ stup log --from 2020-04-01 --to 2020-04-15
For the moment, the installation is manual until this issue is resolved.
So you have to clone the repository and place the executable stup
script in a directory included in your $PATH
variable.
git clone https://github.com/iridakos/stup
cd stup
# Given that `~/.local/bin` is included in your $PATH variable
cp ./stup ~/.local/bin
The script has been tested in:
but it should be running without problems in other Linux Distros as well.
If you face any problems though, feel free to open an issue reporting your Distro and its version.
Before you start using stup
you have to configure it with:
stup --configure
Follow the wizard to define:
stup
will be saving your notesedit
commandlog
and usage
)It also asks you if you want to edit the file and change the defaults in case you omit some arguments.
* You can use stup
with just a default category but in case you want to add your notes structured for example per project or per any type of section you want, you have the option to create and use multiple categories (see below).
To add a new note use the add
command.
$ stup add @ yesterday -n "A note" -n "Another note"
The full version of the command:
stup add @|--at|-@ <when> -n|--note "<note text>" -c|--category "<category-name>"
where:
<when>
: specifies in which date the notes should be added. Its value can be:
today
, tomorrow
, yesterday
in which case you can omit the @
|--at
|-@
optionYYYY-MM-DD
, for example: 2020-04-12stup
by default will save the notes in the current date<note-text>
: the text of the note, for example: "Reviewed PR related to..."-c
or --category
: is the category option (optional). If omitted, notes will be saved to your default category
<category-name>
: the name of the category in which the notes will be added# Implying today (if you don't define the date, the add action defaults to current date)
$ stup add -n "A new note"
# Explicit with date alias 'today' omitting the `@` option
$ stup add today -n "A new note"
# Explicit with date alias 'today'
$ stup add @ today -n "A new note"
# Explicit without the 'today' alias (suppose the date is April 17th, 2020)
$ stup add @ 2020-04-17 -n "A new note"
All of the following commands are equivalent.
# Explicit with date alias 'yesterday'
$ stup add @ yesterday -n "A new note"
# Explicit with date alias ommiting the `@` option
$ stup add yesterday -n "A new note"
# Explicit without alias (suppose the date is April 17th, 2020)
$ stup add @ 2020-04-16 -n "A new note"
All of the following commands are equivalent.
# Explicit with date alias 'tomorrow'
$ stup add @ tomorrow -n "A new note"
# Explicit with date alias omitting the `@` option
$ stup add tomorrow -n "A new note"
# Explicit without alias (suppose the date is April 17th, 2020)
$ stup add @ 2020-04-18 -n "A new note"
$ stup add today -n "Reviewed PR ..." -n "Merged to master..."
# Add a note to a category named 'blocking'
$ stup add -c "blocking" -n "Can't continue unless"
To view your notes on a given date, use the show
command.
$ stup show
The full version of the command is:
$ stup show @ <when> -c|--category "<category-name>"
where:
@
or --at
or -@
: is the date option
<when>
: specifies which date's notes should be shown. Its value can be:
today
, tomorrow
, yesterday
in which case you can omit the @
optionstup
by default will show you your yesterday's notes<category-name>
: the name of the category whose notes will be shown. You may omit this option if you want to see notes from all the categories.If you don't specify a category and you have more than one, the default behaviour is to show notes only from the categories that have notes the specified day.If you prefer though to show the "empty" categories as well, you may use the --include-empty
.
Notes:
the default action of stup
is to show you your notes so you may write the command without the show
directive (see the examples).
if you request to view your notes on a date that you haven't added anything, stup
will ask if you want to see the notes of the latest date on which something was added before the one you specified.
For example, if it is Monday and you didn't add any notes during the weekend, when you type stup yesterday
you'll be prompted to see the notes added on Friday.
All of the following commands are equivalent.
# Imply "show" as action and "yesterday" alias as date
$ stup
# Imply "yesterday" as date
$ stup show
# Explicit date set to "yesterday" date alias
$ stup yesterday
# Explicit date (given that current date is April 17th, 2020)
$ stup @ 2020-04-16
All of the following commands are equivalent.
# Imply "show" as action
$ stup today
# Show today's notes for the category "meetings"
$ stup today -c "meetings"
# Show today's notes for the category "meetings" by explicitly setting action to "show"
$ stup show today -c "meetings"
# Show notes on April's Fool Day
$ stup show @ 2020-04-01
# Show today's notes added in category "pull-requests"
$ stup show today -n "pull-requests"
To list your notes for a given period, use the log
command.
$ stup log previous-week
The full version of the command:
$ stup log --from <from-date> --to <to-date> -c <category-name>
# or using an alias
$ stup log <week|previous-week|month|previous-month|year|previous-year>
where:
<from-date>
: is a date alias (today
, yesterday
, tomorrow
) or a specific date using the format YYYY-MM-DD
, for example: 2020-04-18
<to-date>
: is also a date alias (today
, yesterday
, tomorrow
) or a specific date using the format YYYY-MM-DD
, for example: 2020-04-18
-c
or --category
: is the category option (optional). If omitted, you will view the notes of all categories
<category-name>
: the name of the category whose notes you want to seeIn the second version of the command, you can use the temporal aliases that will be translated to proper from/to dates.
In both cases, you may skip the log
literal given that you set either an alias or one of the from
and to
flags.
$ stup log week
# or
$ stup week
$ stup log previous-week
# or
$ stup previous-week
$ stup log --from 2020-01-15 --to 2020-02-01
# or
$ stup --from 2020-01-15 --to 2020-02-01
$ stup log --from 2020-01-15 --to 2020-02-01 -c blocking
# or
$ stup --from 2020-01-15 --to 2020-02-01 -c blocking
$ stup log --from 2020-01-15 -c blocking
# or
$ stup --from 2020-01-15 -c blocking
To search your notes, use the search
command.
$ stup search 'jira' previous-week
The full version of the command:
$ stup search <search-text> --from <from-date> --to <to-date> -c <category-name>
# or using an alias
$ stup search <search-text> <week|previous-week|month|previous-month|year|previous-year> -c <category-name>
where:
<search-text>
: the text you want to find in notes<from-date>
: is a date alias (today
, yesterday
, tomorrow
) or a specific date using the format YYYY-MM-DD
, for example: 2020-04-18
<to-date>
: is also a date alias (today
, yesterday
, tomorrow
) or a specific date using the format YYYY-MM-DD
, for example: 2020-04-18
-c
or --category
: is the category option (optional). If omitted, you will search the notes of all categories
<category-name>
: the name of the category whose notes you want to seeIn the second version of the command, you can use the temporal aliases that will be translated to proper from/to dates.
$ stup search "jira" week
# or
$ stup week search "jira"
$ stup search "reviewed" previous-week
# or
$ stup previous-week search "linux"
$ stup search "cli" --from 2020-01-15 --to 2020-02-01
# or
$ stup --from 2020-01-15 --to 2020-02-01 search "cli"
$ stup search "SSD" --from 2020-01-15 --to 2020-02-01 -c blocking
# or
$ stup --from 2020-01-15 --to 2020-02-01 -c blocking search "SSD"
$ stup --from 2020-01-15 -c blocking search "SSD"
# or
$ stup --from 2020-01-15 -c blocking search "SSD"
To manually edit notes added in a specific date use the edit
command.
$ stup edit yesterday
The full version of the command as below:
stup edit @|--at|-@ <when> -c|--category "<category-name>"
where:
<when>
: specifies in which date the notes should be added. Its value can be:
today
, tomorrow
, yesterday
in which case you can omit the @
|--at
|-@
optionYYYY-MM-DD
, for example: 2020-04-12stup
by default will edit the notes in the current date-c
or --category
: is the category option (optional). If omitted, you will edit the notes of your default category
<category-name>
: the name of the category in which the notes will be addedNote: If there are no notes for a specific date and category, you will be asked if you want to create and edit the file anyway.
# Omitting category option, implying the default one
$ stup edit yesterday
# Editing yesterday's notes for the category with name "blocking"
$ stup edit @ yesterday -c "blocking"
# Omitting category option, implying the default one
$ stup edit @ 2020-03-24
# Editing notes saved on March 24th, 2020 for the category with name "blocking"
$ stup edit @ 2020-03-24 -c "blocking"
To copy notes from one date to another use the copy
command.
$ stup copy --from today --to tomorrow
The full version of the command:
stup copy --from <copy-from-date> --to <copy-to-date> -c|--category "<category-name>"
where:
<copy-from-date>
: is a date alias (today
, yesterday
, tomorrow
) or a specific date using the format YYYY-MM-DD
, for example: 2020-04-18
yesterday
<copy-to-date>
: is also a date alias (today
, yesterday
, tomorrow
) or a specific date using the format YYYY-MM-DD
, for example: 2020-04-18
today
-c
or --category
: is the category option (optional). If omitted, notes will be copied between the default category of the two dates specified
<category-name>
: the name of the category to which the notes will be copiedstup
will prompt you for each line to be copied:
stup copy
- Worked on some PRs
>>> Copy this note [y,n,q,a]?:
$ stup copy
$ stup copy --from 2020-01-15 --to 2020-02-01
$ stup copy --to tomorrow -c blocking
To add a new category to save notes into use the following command.
$ stup add-category --category-name "<category-name>" --category-description "<category-description>"
where:
<category-name>
: the name of the category to be created. This is going to be a directory so make sure it's a valid directory name.
<category-description>
: the description of this category. Even though this is optionally set, it is highly recommended to be defined. Whenever stup
shows your notes, the title of each category will default to the category name if the category doesn't have a description.
# Without a description for category with name mobile
$ stup yesterday
Displaying notes for Friday, April 16th 2020.
>>> mobile
- A note
- Another note
- ...
vs
# With mobile's category description set to "Mobile related notes"
$ stup yesterday
Displaying notes for Friday, April 16th 2020.
>>> Mobile related notes
- A note
- Another note
- ...
To set a new description or change the existing description of a category use the following command.
$ stup set-category-description --category-name "<category-name>" --category-description "<category-description>"
where:
<category-name>
: the name of the category whose description will be set. If you omit this options, you will change the description of your default category.<category-description>
: the description to setTo see all your categories use the list-categories
command as shown below:
$ stup list-categories
# or the equivalent
$ stup --list-categories
To change the order of your categories (affecting the order with which the notes are shown) use the order-categories
command as shown below:
$ stup order-categories
# or the equivalent
$ stup --order-categories
This command opens the categories registry file in your editor and you can change the order by moving the category names up and down.
New features that are on the top of my list for stup
:
You can find more information about what is planned to be implemented browsing the GitHub repository's issues labeled as new feature
git checkout -b my-new-feature
)git commit -am 'Add some feature'
)git push origin my-new-feature
)This tool is open source under the MIT License terms.
Thanks goes to these wonderful people (emoji key):
Bohdan Potměkleč |
Brendan Hagan |
Giannis Poulis |
Nikhil Mutalik |
sylvandb |
This project follows the all-contributors specification. Contributions of any kind welcome!
元器件交易网http://doc.xuehai.net STUP06I - STUP5G4 VBR: 6.8 - 440 Volts PPK: 400 Watts FEATURES: * 400W surge capability at 1ms * Excellent clamping capability * Low zener impedance * Fast response time: t
YDOOK: vue3.0: vue-cli4.5: stup()与 各类钩子函数详细使用教程 1. vue3.0 钩子函数与 vue2.0 钩子函数的区别与对比: vue3.0 钩子函数在 vue2.0 的基础上增加了 stup() 函数,该函数的作用声明周期时间发生在 vue2.0 钩子函数的 beforeCreate() 函数 和 created() 函数执行之前执行。创建的是data和me
子组件 <template> <p>{{ props.msg }}</p> <button @click="handleClick">点击我调用父组件</button> </template> <script setup lang="ts"> const props = defineProps({ msg: {type: String, dafult:()=>"默认值"} //
路漫漫其修远,我将上下而求索。 **自今日始,开启程序员修炼之路,不可一日之懈怠。leetcode每日刷一道算法题以及每日博客写当日修炼心得。** 今天,刷了第一题,出现了很多粗浅的错误,用惯了IDE,发现自己手写代码没提示的情况下很low,这使我很是羞愧,方法和属性傻傻分不清,数组的长度是属性length而非length();对数组进行循环嵌套遍历时,对index考虑不够周到,很大意的出现
Stup is a linux terminal interface that simplifies daily note management. The program is a bash script. I find it helpful mainly because as a terminal interface it simplifies note taking to its extrem
@背景 ios cocoapod环境安装使用pod stup指令遇到的问题。 @错误日志 error: RPC failed; curl 18 transfer closed with outstanding read data remaining fatal: The remote end hung up unexpectedly fatal: early EOF fatal:
生成webservice 客户端stup 命令 java -Djava.ext.dirs=.\lib org.apache.axis.wsdl.WSDL2Java -p com.boco.sso.webservice AuthorizationAddService.wsdl
病毒文件名:stup.exe 文件路径:C:\PROGRA~1\TENCENT\Adplus\stup.exe(多数情况下) (注:有可能是SOSO的地址栏插件,如果在以上路径找到了,那就是病毒了,要没有,就是SOSO) 说明:此病毒文件可能通过QQ、MSN、邮件传播,多数情况下默认保存在QQ的TENCENT文件夹下;如果机器是通过公司局域网上网的话,运行该病毒将会阻止病毒机与路由器服
病毒文件名:stup.exe 文件路径:C:\PROGRA~1\TENCENT\Adplus\stup.exe(多数情况下) (注:有可能是SOSO的地址栏插件,如果在以上路径找到了,那就是病毒了,要没有,就是SOSO) 说明:此病毒文件可能通过QQ、MSN、邮件传播,多数情况下默认保存在QQ的TENCENT文件夹下;如果机器是通过公司局域网上网的话,运行该病毒将会阻止病毒机与路由器服
#实习# #腾讯# #面试# 投了简历沉没20天没信息,本来以为凉了,结果又被捞起来了 面试流程: 1.自我介绍 2.面试官介绍工作部门是做火影忍者手游的,有没有了解过 3.擅长编程语言是什么,c语言掌握程度怎么样(语言和具体工作室有关) 4.简历上项目写的是javaweb的项目以及大创科研项目,直接跳过项目没有问,上来就是两道算法,语言任选 5.两个算法题目 问题一:设计实现memmove函数,
鼠鼠 国内周五 3/22号早上10点面完的,本来约的是1个小时,最后深挖简历,一堆场景题,加上计网八股,最后两道算法题,一共面了1个半小时。 反问环节,面试官给的评价是需要更加深度思考,多考虑考虑不同场景下会遇到的问题,对个人提升会比较大。最后夸我总体不错,比较优秀(客套感觉) 网上看到不同的帖子说🐧如果面试完,还是面试链接状态,就是面试官还没提交面评。 是不是凉了啊,应不应该发个邮件问问,因为