Giter Site home page Giter Site logo

scamacho23 / liszt Goto Github PK

View Code? Open in Web Editor NEW
25.0 25.0 23.0 1.6 MB

Save snippets of information quickly through the command line

Home Page: https://liszt.readthedocs.io

License: GNU General Public License v3.0

C 99.87% CMake 0.13%
c command-line-tool liszt note-taking-app open-source-project

liszt's People

Contributors

adelfranco avatar amildahl avatar ashishjayamohan avatar bwoltz avatar ebatelaan avatar flinkflonk avatar guyeternal avatar jcustin avatar jmprathab avatar juliannogueira avatar matthewc avatar pointbazaar avatar scamacho23 avatar supremestdoggo 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  avatar  avatar

liszt's Issues

Lots of memory leaks

๐Ÿ› Describe the bug

Liszt has some memleak issues:

  • whenever scanf is used, valgrind reports that Liszt leaks some memory (this one may be a stdio issue)
  • whenever wordfree is used, valgrind reports two memory leaks
  • the commands -clar and -cln have a number of memleak errors, notably invalid read sizes and invalid frees
  • the commands -ln and -lar have a number of memory leaks

๐Ÿ’ฃ Steps to reproduce

Use the commands with valgrind to see what happens.

Default note functionality

Hide default note.

When user changes note away from default note, prompt user to "add a name to your note before leaving."

Copy all memories from default into a new note with their new name, and then clear memories from default.
OR
Rename default note with that name, make it unhidden, and create a new hidden default note.

Add note issue

I tried to add a note and then change that note, but it gave me this error:

Traceback (most recent call last):
  File "/usr/local/Homebrew/Library/Taps/scamacho23/homebrew-quicknote/main.py", line 128, in <module>
    main()	
  File "/usr/local/Homebrew/Library/Taps/scamacho23/homebrew-quicknote/main.py", line 117, in main
    ff.change_note(args[1:], quicknote_cache) 
  File "/usr/local/Homebrew/Library/Taps/scamacho23/homebrew-quicknote/filefunc.py", line 95, in change_note
    cache_info[0] = name
IndexError: list assignment index out of range

Accidental memory additions annoying to remove

If you add a bad memory (i.e. enter in the wrong info), it's slow to remove what you entered. Maybe remove_memory with no row_number should just remove the last memory saved to the current note?

Remember add bug

When I tried to add a memory, I put single quotes around it (as suggested by the picture) but then the text wouldn't save.

Only works for OS X

Nothing too complex. Just make this program portable to other operating systems (Linux shouldn't be hard).

Develop testing harness

Right now, the only way to test Quick Note is by using it. It would be highly beneficial to develop some sort of testing harness (probably written in shell) in order to test the functionality of the software

Refactor to PEP-8 style

โš ๏ธ Is your feature request related to a problem? Please describe

  • It is better to have a standard coding convention for the entire project.

๐Ÿ’ก Describe the solution you'd like

  • PEP-8 is the official Python library coding style. It makes sense to stick to this as most IDEs and tools can enforce this standard.

๐Ÿคš Do you want to develop this feature yourself?

  • Yes
  • No

Update the VERSIONS.md file

Add documentation for the VERSIONS.md file, just detailing what work is being done and what has been done, from version to version

One word memories not saving

Whenever I add one word memories such as:

"remembre hello",

it does not log hello as a memory.

PLEASE HELP THIS IS OF THE UTMOST IMPORTANTS

pls help

Make more projects

Make more projects on the 'projects' tab. The 'Remember Software' one doesn't need to encompass everything.

Shorten length of commands

The commands for Quick Note are very long and can be hard to type repeatedly. Think about shortening them

Documentation Lacking

Overall documentation is pretty lacking. Also, updating the readme would be a good idea (just generally include more information about the project, etc.

Add file not working properly

When you add a file, it adds it in your current working directory, as opposed to the .quicknote directory where it should be added. The path.isfile() function maybe is working, but it's not entirely clear.

Improve the install.py file

Add anything else that needs to be set up when the install.py file is run. Also, the user will have to run

python3 /path/to/install.py $USER

in order for this to run

EDIT: The install.py will need to add a default memory file, which can be called default.
The command for that could be as simple as

open('/Users/$USER/.quicknote/.default', 'w+')

EDIT #.2: There should also be some kind of message associated with the installation

Export note minimal value

Export note only allows users to export notes as .txt files. Maybe this should be the case, but it requires some thought

Clean up .gitignore ?

I'm really impressed by this Project, how well it follows best practises, has CI and template PRs/ template Issues setup.

However i noticed that your .gitignore is full of stuff which is totally unrelated to this project and only
serves to confuse people and/or slow git down.

Example:

# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal

# Flask stuff:
instance/
.webassets-cache

Django is a Python web framework and this is a C Project.

If you want, i can try to clean it up for Hacktoberfest ๐Ÿฅณ . Just assign me the Issue.

Integration with readthedocs.org

โš ๏ธ Is your feature request related to a problem? Please describe

  • Integrate with readthedocs.org for hosting the documentation.

๐Ÿ’ก Describe the solution you'd like

  • This can be implemented with the help of sphinx

๐Ÿคš Do you want to develop this feature yourself?

  • Yes
  • No

Seg Fault on note create or list

๐Ÿ› Describe the bug

I attempted to install and use lst, but it seg faults immediately on the -l or -a options. I've reproduced this on a mac running Catalina and one running Mojave, and when installed via brew and when installed via downloaded package.

โš ๏ธ Current behavior

$ lst
Liszt is an open-source note-taking software designed for personal use.

If you need help in general, type 'lst -help' or 'lst -h'
If you need help with a specific command, type 'lst -h <name_of_command>', such as for help with adding memories ('lst -h -') or removing a note ('lst -h -rm')
To view your version of Liszt, type 'lst -version' or 'lst -v'

Liszt uses the GNU General Public License v3, so you can edit, distribute, and otherwise meddle with any of the source code.
The only thing you can't do is take this software and make it closed-source and try to sell it. Liszt was designed to be free for everyone, forever.

Checkout Transcendental Etudes by Franz Liszt!
$ lst -l
Segmentation fault: 11
$ lst -a
lst error: command '-a' not recognized. Please try again.
(hint: did you include the necessary arguments for this command? Run 'lst -h' to find out)
$ lst -a foo
Segmentation fault: 11

$ lldb lst -- -a foo
(lldb) target create "lst"
Current executable set to 'lst' (x86_64).
(lldb) settings set -- target.run-args "-a" "foo"
(lldb) r
Process 76140 launched: '/usr/local/bin/lst' (x86_64)
Process 76140 stopped

  • thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
    frame #0: 0x00007fff6e1bee52 libsystem_platform.dylib_platform_strlen + 18 libsystem_platform.dylib_platform_strlen:
    -> 0x7fff6e1bee52 <+18>: pcmpeqb (%rdi), %xmm0
    0x7fff6e1bee56 <+22>: pmovmskb %xmm0, %esi
    0x7fff6e1bee5a <+26>: andq $0xf, %rcx
    0x7fff6e1bee5e <+30>: orq $-0x1, %rax
    Target 0: (lst) stopped.

โœ… Expected behavior

I expected when I run lst -l, it will show an empty list of notes. And then when I run lst -a foo, it will add a note called foo.

๐Ÿ’ฃ Steps to reproduce

$ brew tap liszt-music/liszt
$ brew install lst
$ lst -a

or alternatively:
select pkg file in github, download pkg, open pkg
$ /Library/Liszt/1.1.8/lst -a foo

๐Ÿ“ท Screenshots

๐Ÿ“ฑ Tech info

Darwin kathleen 19.6.0 Darwin Kernel Version 19.6.0: Thu Jun 18 20:49:00 PDT 2020; root:xnu-6153.141.1~1/RELEASE_X86_64 x86_64

and

$ uname -a
Darwin mudita 18.7.0 Darwin Kernel Version 18.7.0: Thu Jun 18 20:50:10 PDT 2020; root:xnu-4903.278.43~1/RELEASE_X86_64 x86_64

Import_note usage unclear

What kinds of files can be imported? Just .txt files? Or, what should be allowed as importable files?

Command-line arguments faulty

The program currently assumes that the user has a bash alias remember='python3 /path/to/program/location'

This is not portable. Make it so.

Expand README.md

Add more information to the README.md file. It's pretty lacking as of now

Add version history

Add the ability to write 'remember --version' and the current version of Quick Note will be returned

Prompt when adding new note after a clearing all notes

๐Ÿ› Describe the bug

After -cln command, inputting an -a command prompts the user to "name current note before switching notes." Since no memories were added to the hidden default note, no prompt is necessary.

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.