diary

Text-based journaling program
git clone https://git.in0rdr.ch/diary.git
Log | Files | Refs | Pull requests | README | LICENSE

README.md (3915B)


      1 # Diary
      2 This is a text-based diary, inspired by [khal](https://github.com/pimutils/khal).
      3 Journal entries are stored in text files.
      4 
      5 ## Quickstart
      6 
      7 1. Set the EDITOR environment variable to your favourite text editor:
      8     ```
      9     export EDITOR=vim
     10     ```
     11 
     12 2. Run the diary, with the folder for the text files as first argument:
     13     ```
     14     diary ~/.diary
     15     ```
     16 
     17    Instead of this, you can also set the environment variable `DIARY_DIR` to
     18    the desired directory. If both an argument and the environment variable are
     19    given, the argument takes precedence.
     20 
     21    The text files in this folder will be named `yyy-mm-dd`.
     22 
     23 3. Use the keypad or VIM-like shortcuts to move between dates:
     24 
     25     ```
     26     e, Enter  edit current entry
     27     d, x      delete current entry
     28 
     29     t         jump to today
     30     f         jump to or find specific day
     31 
     32     j, down   go forward by 1 week
     33     k, up     go backward by 1 week
     34     h, left   go left by 1 day
     35     l, right  go right by 1 day
     36     J         go forward by 1 month
     37     K         go backward by 1 month
     38 
     39     N         go to the previous journal entry
     40     n         go to the next journal entry
     41     g         go to start of journal
     42     G         go to end of journal
     43 
     44     s, S      sync selected day/Month with CalDAV server
     45     i         import entries from .ics file
     46     E         export entries to .ics file
     47 
     48     q         quit the program
     49     ```
     50 
     51 ## Detailed Usage, Configuration and End-User Documentation
     52 See [man diary](https://diary.in0rdr.ch/man) for the complete documentation.
     53 
     54 Demo and Keybinding Cheat Sheet available at https://diary.in0rdr.ch
     55 
     56 ## Install from Package
     57 Pre-built packages can be installed from the [Open Build Service
     58 (OBS)](https://software.opensuse.org/download.html?project=home%3Ain0rdr&package=diary)
     59 * Install the `diary` package for a stable release
     60 * Install the `diary-nightly` build to use a more recent but possibly unstable
     61   version from the master branch
     62 
     63 ### Arch Linux OBS Repository Bug
     64 The Arch Linux repository on the OBS is broken, see
     65 [#69](https://github.com/in0rdr/diary/issues/69) and
     66 [#9953](https://github.com/openSUSE/open-build-service/issues/9953).
     67 
     68 To use the repository on Arch Linux, use `downloadcontent.opensuse.org` instead
     69 of the [suggested](https://software.opensuse.org/download.html?project=home%3Ain0rdr&package=diary)
     70 name `download.opensuse.org` in the `/etc/pacman.conf`:
     71 
     72 ```
     73 [home_in0rdr_Arch]
     74 Server = https://downloadcontent.opensuse.org/repositories/home:/in0rdr/Arch/$arch
     75 ```
     76 
     77 ## Build from Source
     78 1. The compilation step requires development libraries for `ncurses`,
     79    `libcurl`, `libxml2` and `liblttng-ust`. These packages might have a
     80    slightly different naming scheme depending on the distribution. To compile,
     81    run:
     82 
     83    ```
     84    make
     85    ```
     86 
     87    Note: for \*BSD users run gmake.
     88 
     89 2. Install the binary (optional):
     90 
     91    ```
     92    sudo make install
     93    ```
     94 
     95    By default this will copy the binary to `/usr/local/bin`. To use a different
     96    path prefix, type `sudo make PREFIX=/usr install` to use `/usr/bin` for example.
     97    You can uninstall diary with `sudo make uninstall`.
     98 
     99 ## Nix Build/Install Documentation
    100 [./docs/NIX.md](./docs/NIX.md)
    101 
    102 ## OBS Build Documentation
    103 [./docs/OBS.md](./docs/OBS.md)
    104 
    105 ## Test Documentation
    106 [./docs/TESTING.md](./docs/TESTING.md)
    107 
    108 ## Development & Contributions
    109 For a list of contributors see the [AUTHORS.md](./AUTHORS.md).
    110 
    111 * All source code is available in this repository. Contributions are always
    112   welcome! Pull requests at https://pr.in0rdr.ch/repos/diary
    113 * A [Kanban
    114   board](https://board.in0rdr.ch/public/board/adedb4a1f31d1e5116b600c1c9dc225db8675d125f071758913a9570c383)
    115 documents plans, todos and decisions for further development of the project.
    116 
    117 ## Community and Support
    118 For question and support visit
    119 [#p0c/libera](https://web.libera.chat/gamja/#p0c) on IRC.
    120 
    121 ## License
    122 This work uses the MIT License. See [LICENSE](./LICENSE) for details.
    123