GithubHelp home page GithubHelp logo

orgzly / orgzly-android Goto Github PK

View Code? Open in Web Editor NEW
2.7K 80.0 303.0 37.85 MB

Outliner for taking notes and managing to-do lists

Home Page: https://www.orgzly.com

License: GNU General Public License v3.0

Java 35.43% Kotlin 64.57%
android org-mode productivity outliner orgzly todo tasks notes mobile

orgzly-android's Introduction

Orgzly

Orgzly is an outliner for taking notes and managing to-do lists.

You can keep notebooks stored in plain-text and have them synchronized with a directory on your mobile device, SD card, WebDAV server or Dropbox.

Notebooks are saved in Org mode’s file format. “Org mode is for keeping notes, maintaining TODO lists, planning projects, and authoring documents with a fast and effective plain-text system.” See http://orgmode.org for more information.

Get it on Google Play Get it on F-Droid

End-user documentation

Find out more here: https://github.com/orgzly/documentation

Building & testing

If you don’t use Android Studio and wish to build and test the app from command line, the standard set of Gradle tasks is available. For example:

  • ./gradlew build builds the project and generates APK files
  • ./gradlew connectedAndroidTest runs instrumented unit tests

Make sure you turn off animations for the device you’re testing on.

License

The project is licensed under the GNU General Public License version 3 (or newer).

orgzly-android's People

Contributors

aancel avatar amberin avatar andipabst avatar artbristol avatar bemyak avatar benmoran avatar bjonnh avatar bplaxco avatar colonelpanic8 avatar czan avatar debanjum avatar drmfinlay avatar emakei avatar endi1 avatar fresheed avatar halvorlu avatar karlicoss avatar licaon-kter avatar lvic avatar mackieloeffel avatar mamins1376 avatar nevenz avatar oujunhao avatar psamim avatar pxsalehi avatar ropery avatar sarg avatar sodel-the-vociferous avatar tulth avatar xiaoruoruo 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  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  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  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  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  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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

orgzly-android's Issues

Add support for code blocks

This is a big one, I know.

I work with a lot of code, and I often include snippets in my Org files

#+BEGIN_SRC c
some_c(code);
#+END_SRC

I don't think you should add syntax highlighting (although that would be awesome), as Org itself doesn't do it (unless you open the snippet in a separate buffer), but a fixed width font would suffice in view mode.

Also note that there are others, like BEGIN_EXAMPLE.

Fold/unfold all doesn't work during sync?

Hi,

I just installed and started using Orgzly with my existing Org notes in Dropbox. It seems to work great, but the fold/unfold-all button doesn't seem to do anything while a sync process is underway, even for files that have already completed syncing. After the sync process completes, the button works.

Thanks for your work!

Too easy to delete a note and no way back

Currently deleting a note is made very easy while offering no undo ability.

There are two ways out of this:

  1. The easy one: ask for confirmation.
  2. The hard one: implement an undo action or an archive mechanism.

It's true that dropbox keeps many past versions of the notebook but it will be convenient to recover from an accidental delete inside the app.

Make all buttons visible in long-press mode

Sometimes I need to restructure items and I'm using Move option but it is hidden under "three dots button". Would be useful if you can make visible all of the options in "long-press" mode, like move, cut, paste, delete.
And, of course, I think when multiple items selected you can allow to cut, to move, to copy. Now this features available only for one selected item at a time

Dropbox sync not working

I linked Ozgzly to my dropbox account (I can see in my Dropbox settings that is is linked), but when I try to sync I get the message "Sync Not linked to Dropbox".

I am using the latest version 1.4.11 from the Google Play Store on MIUI.

Improve conflict status visibility

Please add some indication that the current notebook has sync conflicts, not only the notification at the global notebook list but a local one for the current file. Currently it's too easy to miss the fact that the current file is in conflict and carry on with editing.

Also show some toast indicating a sync action was successful or not.

These are easy changes that will improve sync user experience.

Both local and remote notebook have been modified

Now what?

I could minimize the chance of this happening by setting auto-save in emacs, make sure dropbox is always running with a big warning if network can't connect.

On the orgzly side it would make sense to sync both before and after adding a new note.

But still, conflict is inevitable. The only way forward now seems to be to clear the database and start over. I guess I'd prefer some options like diff, merge, rename, remote wins, local wins.

This is happening on my first day of use; The very first time I tried adding a note with orgzly. I guess more experienced users have discovered a practice to avoid the situation. Please share how you do it.

Update

Clear database is not a great idea. You lose all your settings.

Occurs to me that if org files were simply saved on Google Drive as a text file that the system would take care of synchronization. Is that what others are doing?

make notebooks sortable

hi,

there is no possibility to sort notebooks on main overview page.
perhaps you can make that possible!

thanks in advance

Honor 'nologdone' setting

In Org, one of the in-buffer settings is "nologdone", which removes logging (CLOSED property) for a file. One of my notebooks is a shopping list, so I don't need to have the "CLOSED" property for any of the entries.

If the log settings are too much, a notebook-local setting in Orgzly to disable adding "CLOSED" for a single notebook would be enough.

no reminder notifiction for scheduled items

hi,
i do not receive any reminder (no ringing, no vibration) for appointments nor tasks that have to be done soon.

is it currently possible and i have to config my phone or must it first implemented?
phone: xperia x with android7.

best
mtz

Add build instructions to README.org

I am not an Android developer and it was a bit of struggle to set up environment for the project.
There are two problems:

  • ./gradlew build fails on lint
  • Tests are flaky on real device.

Could you please document:

  • how to build the target apk
  • how to run tests

German Umlaute after Sync

I have nothing changed on my smartphone or computer, so i think it is because the last update of orgzly. when i changed entries with orgzly and sync to file i have damage "german umlaute".

Good: Datei löschen
Now: Datei l\303\266schen

Please check this.

Render arbitrary unsupported links in a more readable way

Great to see this is open source now! Right now unsupported link types are displayed literally, as text, making them very hard to read usually. They could be rendered as just the title of the link. There could also be an option to click them and see what the link reference is, but that's less critical probably.

[Discussion] Syncing methods

Given that we take notes in long text files the probability of conflict between copies in different devices is larger than for people using a more structured (from the POV of the synchronizer) card-oriented app, say, trello, keep, etc.

Many people longs for auto-syncing but that's just a way of ameliorating the problem. If you spend several hours offline (I do, I don't have a phone, just a tablet with wifi and long daily commutes), the divergence between versions easily builds up and becomes a PITA to merge with such basic tools like the ones provided by Dropbox. Nevertheless, I agree that if you're 99% online, then auto-syncing is a Pareto-principled solution.

These days I tend to use Pocket Git or SGit (now MGit). It's a couple of additional taps but also conflict resolution at its best. Also, it's very efficient in terms of battery utilization, since it doesn't need to run in background all the time.

How are you syncing orgzly notes?

Add option to disable separation of content from heading

As discussed in #12 it would be nice to have an option to control the whitespace between the heading and content of a note similar to the option Separate notes with an empty line. Personally, I prefer to only have a blank line between headings and multiline content.

Support org attachments

First, thank you so much for open-sourcing this awesome app 👍

This is a feature request and not an issue. I did ask for this in orgzly g+ page.

Here is a little reference video for org attachments:
https://www.youtube.com/embed/KMlp9HUJI3s?ecver=1

My basic use case is using the phone camera to capture a picture of a document and attaching it to a task. Similar to what you can do with evernote, for example. Here is a video of this feature in evernote in action:
https://youtu.be/QGj7Sq0Qlxk?t=58

Cheers!

Implement auto synchronization

Please, add auto synchronization for remote repositories.
Manual synchronization isn't comfy. also sometimes it could be cause of synchronization conflicts.

Widget to open a specific notebook

See for example OI Shopping list as an application that supports this. I use this feature in OI shopping list to have a number of different checklists that I can open with one click.

I fondly imagine that being able quickly open checklists like this and organize them on a screen makes one more likely to use them, as it reduces the cognitive load of having to click through some tasks.

One might also want to be able to jump to a particular node with a tree.

Clocking / Time Capture

Hi,

I use Org mode not to only to organize, but also to clock my tasks. While MobileOrg claimed to provide this functionality, it has never worked for me. Is support for clock in and clock out on your roadmap? If so, when would it become available approximately?

Best wishes,
k0105

PS:
Amazing that you open sourced Orgzly. Made you my number 1 choice instantly. Thank you very much.

Support for org encryption

It would be really amazing to have support for org encryption. Usually people have also lists with sensible data.

Allow sorting of items

Orgzly is the best app in its category. And one of task where Orgzly is useful is learning new languages. So sometimes I want to sort items under certain label because it is easy to find words I should learn. For example, I have a category "New words":

  • New words
    -- day
    -- work
    -- example
    -- temperature

In this example would cool to have a possibility to sort all items under "New words" alphabetically (or any other type of sorting you can imagine).

Automatic synchronization

Problem: I often wind up in a situation where my phone's and Dropbox's org files are out of sync. What could remedy this a lot would be a combination of

  • automatically pulling from Dropbox (or whatever repo is configured) every, say, hour
  • automatically pushing changes to Dropbox (or whatever repo is configured) whenever I add anything on the phone

Both could be configurable options, of course.

Zooming/focusing into bullets

I love deep nesting in an outliner, and this requires being able to hide all the other notes on a page and full-screen the notes I'm focusing on.

Ideally this is implemented in a similar style to WorkFlowy.

Note: This should probably also be implemented at the same time as internal links. The zoom level could be defined by the CUSTOM_ID method for internal linking, which then allows easy zooming to other parts of the org file.

Support for agenda view

Is there any agenda view functionality in Orgzly equivalent to 'C-c a a' in Org-mode?
To get the agenda of the coming week with a daily view, it seems that creating a search with:
.i.done s.1w g.day
or
.i.done a.7d
might be different ways to provide an agenda view. However, agenda (a) and grouping (g) seems to be not implemented. Is there a plan to support agenda views? and is there anyone working on this? If not, is extending the search with (a) and (g) the way to go?

I would be interested in working on this!

Capture options for bookmarking

When capturing a bookmark in Firefox the result is a title with the webpage title and content with a link. If I highlight something on the webpage, the result is title and content with text, i.e. no link. Would it be possible to have a capture option for this type of uses? Or some other solution that would enable to keep both the link and the highlighted content.

Synchronization with internal storage not intuitive

I assume after importing from local storage you have to set the link and force load/force load first.

Below is what I tried:
Create a new file untitled.org in /storage/emulated/0/DCIM/test
Add /storage/emulated/0/DCIM/test as repository.
Import untitled.org.
Add a note foo.
there is no option to save. //I would expect it while editing, not in main menu
(if you click on the magnification glass, b.untitled is in the query field -> confusion)
select sync.
the file has not changed.
Back in orgzly main menu there are 2 timestamps on untitled: first one from when the file was imported, second one from when we tried to sync. Next to it it says in red "Notebook has no link and one or more remote notebooks with the same name exist."
Longpress on the note, select set Link. So far there is No Link, select your repository.
Sync again, second timestamp is updated to current time, error message to "Link and remote notebook exist but notebook hasn't been synced before"
confusion :-)
try main menu, longpress, force save
It works!
Add more notes and sync works!
Manipulate file externally and sync works!

Thank you

I want to thank you for writing Orgzly and making it free software. I've been using Emacs and Org for several years now, and I have tried using the old MobileOrg implementation now and then, but it was always cumbersome, and now doesn't work with Dropbox's recent API changes. Orgzly is just amazing, has a great UI, and seems to just work great! I'm so happy that I can directly use my Dropbox-synced Org files on my phone now, with support for Org-mode features. And now that it's free software, I can use it with confidence that it won't disappear someday, just like I know I can depend on Emacs. Thanks for undertaking the Herculean effort to make this work on Android!

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.