GithubHelp home page GithubHelp logo

makenote's Introduction

نسخه فارسی این سند

makenote

a command line tool for making diary or journals.

installation

there are a few methods for installation

using pip

easiest way is to install it using pip:

  1. install package
pip install makenote

for some new Gnu distros you need to use pipx.

pipx install makenote
  1. add ~/.local/bin to path if needed. (help)

build for pip

  1. build the package
pip install setuptools wheel
git clone 'https://github.com/ekm507/makenote'
cd makenote
python3 setup.py bdist_wheel
  1. install the package
pip install ./dist/*.whl

usage

adding notes

to add note to a specified notebook, run this:

makenote [-t <notebook_name>] <note_text>

in which note text is the note you want to be added.

for example:

makenote I am reading page 754 of the book

if you run this tool with no text, it will get note text from a simple prompt editor. write your text and then hit Alt+Enter or ctrl+D.

$ makenote

it was a great day.
I had a pizza with my friend. (ctrl+D)

1728 - Tue, 10 Bah 1402 18:55:25 - journals - note saved!

if you do not specify notebook name, then note will be stored in default notebook which is journals. you can change it in config file.

creating notebooks

this tool uses different notebooks for storing notes.
for example you can classify your notes in "journals", "tasks", "work", etc.

to create a notebook, run this:

makenote --create <notebook_name>

in which <notebook_name> is the name of notebook you want to be created.

listing notebooks

to get a list of notebooks you have created, run this:

makenote --list

showing records

to see the notes you have stored in a notebook, run this:

makenote --show

if you do not specify notebook name, the default notebook will be shown. you can specify it with -t switch:

makenote --show -t <notebook>

getting help

run command below to get a list of switches:

makenote -h

configuration

a file named makenote.conf is copied into makenote install dir. you can edit this file to get what you want.

export all notes

database files are stored in path specified in config file. which by default is below:

~/.local/share/makenote/databases/

for backing notes up, just copy the files somewhere safe.

for restoring, just copy the database into the database path again.

makenote's People

Contributors

ekm507 avatar mamdasn avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

makenote's Issues

افزودن نماگرفت

یک نماگرفت مناسب باید در کنار ویدیو به صفحهٔ اول پروژه افزوده شود.
پیشنهاد:
Screenshot_20221125_184925

add ability to merge databases

Hi!
it might be a common practice to run makenote on two devices and add notes on different databases.
makenote should have a way to merge them into one bigger file which has data from both of them.
since time entries in tables are promised to ordered, merged results shall be ordered as well.

برنامه‌ریزی برای رفتن به نگارش ۲٫۰

نیاز به ویژگی‌های جدیدی در میک‌نوت دارم اما این ویژگی‌ها تغییرات بزرگی در نرم‌افزار ایجاد می‌کنند که باعث ناسازگاری می‌شود.

‫تغییراتی که در میک‌نوت ‪۱٫×‬ نخواهند بود و نیاز به نگارش ۲٫۰ است:

  • رابط کاربری خط‌فرمان و سوییچ‌های متفاوت
  • تقویم شمسی پیشفرض
  • تغییر در ساختار پایگاه‌داده به‌منظور جدا کردن فایل‌های دفترچه‌های یادداشت از هم، افزودن یادداشت‌های ستاره‌دار و توضیحاتی برای هر دفترچهٔ یادداشت و هر امکان دیگری که نیاز به تغییر پایگاه داده دارد.

لازم است برای رفتن به نگارش ۲٫۰ برنامه‌ریزی کنم.

breaks on clean install; because the db directory does not exists

jadi@funlife ~/makenote (master) [1]> makenote first run
Traceback (most recent call last):
  File "/opt/homebrew/bin/makenote", line 6, in <module>
    from makenote import cli
  File "/opt/homebrew/lib/python3.11/site-packages/makenote/cli.py", line 29, in <module>
    migrate_if_needed(config_filename)
  File "/opt/homebrew/lib/python3.11/site-packages/makenote/convert_old_db_to_new.py", line 144, in migrate_if_needed
    convert_diaryFile(diaryFileDir)
  File "/opt/homebrew/lib/python3.11/site-packages/makenote/convert_old_db_to_new.py", line 130, in convert_diaryFile
    if 'diaryFile.db' in os.listdir(database_directory):
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: '/Users/jadi/.local/share/makenote/databases'

Should check the existence of the directory first and create it if not exists.

import and export Method

hi , in importing and exporting data from one machine to another machine, i think it's not a good method

it's not better to add a option to script like -e or -i

example:
-- $ makenote -e[--export] location

and app automaticlly create a csv file in path that user typed?
and in other machine using command

-- $ makenote -i[--import] location

we can import data from csv file to db file

in more advance way we can also let users select the type of export file like : csv,txt,tsv and ...

in this method user actully can use data in other apps as well

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.