xbc5 / emacs-notes Goto Github PK
View Code? Open in Web Editor NEWLicense: GNU General Public License v3.0
License: GNU General Public License v3.0
In otherwords, capture a URL with some notes.
On conflict, I am forced to unlink and manually relink notes. It would be nice if it would resolve all conflicts with a fuzzy selector, highlighting the words as its done.
This is annoying: it should only ask if there's unsaved buffers.
No description provided.
Use like Telescope in Vim to open a note in a split.
A keymap that stages and commits all files; a keymap to reset to HEAD.
You have never (once) used the Git history, the commit messages do not matter at all. You only use itas a checkpoint, and a means to reset to HEAD.
A simple one liner with a quick keymap. If there's no text, then take the title of the note, and use [idea|bib]: do {{ title }}
;
Make this easy and quick, and also push changes. Background this if you can.
For example, when inserting a node in a list it will be here => - []
, but after running node insert it will be here => -[]
. This will continue indefinitely, eating up negative space on the line.
Also do any other popular shortcuts that you use, like org-ref.
Org-roam which key text is a little crowded, they use the full symbol names, and some are simply +prefix. Fix this, and use short descriptive names.
Point them to img/
and diag/
. See org-link-set-parameters
which also allows you to set a completing functioin when manually entering mylink:
. The primary issue I've had is determining which function to use for :follow
-- I've tried org-link-open-as-file
, but that does not open images inline, instead it opens a temporary buffer that you can cancel with q.
In addition, you will need to sed all org files: s|file:../img/?|myproto:|g
, because currently all images use a relative path (they're all in img, on the same level, so it's a pretty simply fix).
Think about this.
Org does not insert a trailing space at the bottom of each section, and it makes the text hard to read.
See if there's an option for it. Perhaps see if there's a formatter for org (or write your own function), that you can run on save.
The current method of fuzzy searching (helm-bibtex) for an empty spot (only to select create) is silly.
Include header props in all captures.
Create an article capture: :NOTE_TYPE: article
; also add :ARTICLE_KIND: game|movie
. For movies and games, take a URL and use the downloader implemented in #42 to embed an image. Additionally, optionally accept a URL for a trailer or gameplay footage. Optionally, see if you can create an agenda item with it, using the same variables, and link it back to the article -- for example, a TODO, using the article kind.
Also add a RATING
prop, which is nil or 0 by default. If 0, then 1/10 is the lowest we should go. Perhaps consider a :EXPERIENCED: true
(e.g. played/watched/bought/read) prop, so that we can get precise when doing a table view.
You should modify all notes and templates to include NOTE_TYPE
.
Consider also using a UUID instead of a date string. If you have to change the file name, then you probably have to completely rename it, unless you want to RegExp it (date and all).
Note: do not add the title to the file names of encrypted files. Related to #47.
Save all buffers periodically, or when they lose focus -- or both. This prevents the annoying "save" prompts at shutdown.
The current roam config creates buffers with numbers only (date), this is useless for traditional buffer selection. We need a way to get the org title from each buffer, I am sure that there is an org or roam function that does it.
You are using helm for bibtex and ivy elsewhere -- do you need both?
<SPC-X>
isn't good enough.
Map it to <M-I>
: if a single char is highlighted at point, then highlight a word, else use the current selection (more than one char).
This will allow you to quickly add words for linking, and use a manual selection for problem words.
Try to think how you can incorporate this into a search function: e.g. doing /
for a word, hitting n
, then using .
to repeat the link on desired words throughout the buffer. Or perhaps you can create a function specialised for this task.
Use:
org/perm
for perm org notes;org/source
for "bib" notes;org/agenda
for agenda items;org/refs
for the bibliography files;This means that all perm notes will have the implicit @perm
tag, making it easier to select non-bib notes without using negative tags.
If you want sources and agenda items to be roam files, you will still need to set the roam directory to ~/org
. Additionally, you will need to update capture templates to add the perm
or source
slugs.
Perhaps make this a modification or option for existing captures; or simply a dedicated one.
Create a new, custom refiler so that:
Error: Symbol's function defintion is void: org-ref-cite-insert-ivy
.
After inserting a citation, it acts weird and throws up a file explorer (dired I think).
For example, a textual or tag search. You should be able to edit it by selecting it. Possibly create one if not found, such that it will instigate the agenda file selection process, and capture template.
Also make keymap for creating a local graph (of current node) that shows only neighbours (instead of the full graph).
See #11.
Also get rid of the annoying confirmation.
org-agenda-files
is not set after loading -- it is set to some other random values. If you get this working, you will need to use this for my/pick-agenda-file
under org/util.el
too, so that the function will work when you change agenda config options too.
Create a function to download, save, and insert an image into the current buffer -- i.e. make it easy to attach an image to the current note.
Put all images into a single directory so that #41 is easier to implement.
Name the files category-noun-number.ext
: game-foo-1.jpg
. This may prevent collisions, and also make it easier to fuzzy find.
Don't forget to strip metadata.
Starting this will kick-off some other package loads, and won't require you to open a roam buffer just to get some features.
Right now they use the F keys, and this is stupid.
This means using a package to apply timestamps (creaton; modification) to all notes and agenda items. Create a workflow to review and improve notes.
Possibly create a TODO! tag, for notes that you've encountered that need serious editing, but you can't do it at that moment.
So that when restarting Emacs after config changes, we don't have to reopen files, and reset buffer layout.
Create a dblock that filters nodes by tags/names, and displays them as an index list. Additionally, display some brief information about the note -- it should lift that brief information from the =BRIEF= header property.
Also, sometimes you will create a custom brief that makes more sense within that context. Display both:
- Foo
- [*] embedded brief
- custom brief
Mark one of them up so it's obvious which one is which.
Here is an example of an index
- foo: this is a brief;
- bar: this is another brief;
Create a fuzzy finder, select the entry, open it in a mini-buffer, so that you can edit it quickly and close it.
You most likely want the ability to add a list item to such nodes -- add a multi-step confirmation: select node; select edit type (add list item; add list item with url; add plain text) etc.
Firstly, look for packages that do this job: e.g. ryuslash/git-auto-commit-mode.
CAVEAT: once you save, it's in your git commit history. You save a lot.
Use the file name in the commit: "created|modified foo.org" or "created|modified title" if you intend to use the title in the file name as per #43. I prefer the second.
Truncate long file name with ellipses, and put the full name in the body.
Trigger the commit on save. You will need to handle multiple files in some cases, which means that you will need to think about how to title the commit.
This is incompatible with #26 -- so choose one or the other.
Consider applying automatic commits to some directories, but not others (e.g agenda, but not concept).
No description provided.
Pasting BibTeX entries and manually validating them is tedious.
Try:
Create a function that fuzzy selects an image from the file system. Implement #40 first. Put all images within a single directory so it's easier to pick.
No longer necessary; GPG encryption no longer wanted.
e.g. the shortened hn:foo links. Keep the RFC one. You will need to sed your docs. Also get rid of lowercase rfc, use RFC instead.
Stop using completion for it.
When linking a word in a document I have to viw<leader>ri
, perhaps create your own text object, and have it accept a number so that you can easily link multiple words.
Perhaps a TOC or something.
This means make helm-bibtex recognise them. This allows you to quickly find bib entries.
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.