scamacho23 / liszt Goto Github PK
View Code? Open in Web Editor NEWSave snippets of information quickly through the command line
Home Page: https://liszt.readthedocs.io
License: GNU General Public License v3.0
Save snippets of information quickly through the command line
Home Page: https://liszt.readthedocs.io
License: GNU General Public License v3.0
Liszt has some memleak issues:
Use the commands with valgrind to see what happens.
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.
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
Have the program send update requests every so often
Just a bug with the code. Filenames not being entered correctly into the file_list
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?
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.
Nothing too complex. Just make this program portable to other operating systems (Linux shouldn't be hard).
'memorymanager' is a terrible name. It makes it sound like we are designing some kind of garbage collector for C++.
Right now, archived notes aren't a thing. Once they do become a thing, make sure that clear notes is different between them.
The rename note function improperly appends names to the filelist such list-note prints a weird update.
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
This doesn't totally vibe with the style of the software, but something to consider
This doesn't work as is.
Save memories to different files โโ kind of like notes
Pretty self explanatory. Add the ability to password protect notes.
There is a LOT of repeated code. Make some helper functions! (especially with file reading/writing)
Add documentation for the VERSIONS.md file, just detailing what work is being done and what has been done, from version to version
Add a file that explains how people can contribute, make changes, pull requests, etc.
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
Display can't be changed. Make it so default does oldest first but can give a flag to do in reverse?
Errors caused if user tries to remove the current note
Make more projects on the 'projects' tab. The 'Remember Software' one doesn't need to encompass everything.
Add at the top how many memories there are
(maybe save this at the top of the file?)
Display this with remember --list
Right now, if the user inputs bad inputs for some Quick Note methods, the python will throw an error (which is not good). Instead, Quick Note should catch these.
The commands for Quick Note are very long and can be hard to type repeatedly. Think about shortening them
It could even be called .default
!
Specifically, the issue is that several methods repeat code, so it would be best to
decompose out helper functions to use.
Overall documentation is pretty lacking. Also, updating the readme would be a good idea (just generally include more information about the project, etc.
Can I complete the usage section in the readme?
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.
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
Add a webpage (through a different repo and account) โโ make a quicknote account
Export note only allows users to export notes as .txt
files. Maybe this should be the case, but it requires some thought
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.
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.
$ 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
_platform_strlen + 18 libsystem_platform.dylib
_platform_strlen: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.
$ 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
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
What kinds of files can be imported? Just .txt files? Or, what should be allowed as importable files?
The program currently assumes that the user has a bash alias remember='python3 /path/to/program/location'
This is not portable. Make it so.
It's currently not possible to remove an individual memory โโ add this functionality!
Make this software available through download outside of just cloning the repo. Maybe use a website?
Add more information to the README.md file. It's pretty lacking as of now
Add the ability to write 'remember --version' and the current version of Quick Note will be returned
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.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.