Athens: a great tool for taking notes and organising knowldge

Overview

AthensSyncer

Athens is a great tool for taking notes and organising knowldge. But it is a bummer that you cannot use it accross multiple devices. Well no more this aggressive script will get the job done albeit not in the prettiest fashion.

Operation

You can setup this syncing to happen automatically on startup and keep on happening as you make changes to your notes but there are some steps you must take first to get things setup first, these are:

Make sure to change the paths as appropriate for your machine
  1. Setup a repo on github (or any remote version control using Git)
    • If you don't know how to do this check here for some guidance
  2. Setup git in your CLI so that you are able to commit, push, etc.
    • If you don't know how to do this look here or here
  3. Clone this repo for ease of access and use
    • If you don't know how to clone a repo look here
  4. Clone the repo you setup
  5. Copy the athenSyncer.gitignore file in this repo to the repo you just cloned, with the name .gitignore
  6. Point Athens DB to the folder containing your cloned repo
    • If you already have a DB you want to use start working find it and paste it into the folder.
    • Be warned this might make your images not appear in Athens but this can be fixed later manually
  7. Run the main.py in this repo on your machine passing to it the full path to your cloned repo folder
    • python3 FULL/PATH/TO/THE/main.py FULL/PATH/TO/THE/REPO/YOU/CREATED/EARLIER

Do the steps above on all machines you wanna sync your Athens DB

To get this to happen on automatically on startup do the following

Linux

  1. Add the command to your startup commands
    • This command: python3 FULL/PATH/TO/THE/main.py FULL/PATH/TO/THE/REPO/YOU/CREATED/EARLIER
    • For example in PopOS! you can do this here Linux Image

Windows

  1. Open a Command line and enter where pythonw3
  2. Go to that directory in your File Explorer
  3. Locate pythonw3.exe
  4. Press Win + R
  5. Type "shell:startup" and hit Enter
    • This open a window of File Explorer at %USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
  6. Create a shortcut of pythonw3 in the directory opened in step 5.
  7. Right click the shortcut you created and click Properties
  8. In the "Target" field enter the following after what is already in there
    • FULL/PATH/TO/THE/main.pyw PATH/TO/THE/REPO/YOU/CREATED/EARLIER

Todo

  1. Use subprocess instead of os
  2. Fix cmd sometimes pops up on windows when you are writing and it syncs
  3. Git has stopped me from commiting a couple times but the program eventually just committed after I stopped writing and it caught up, look into this
  4. Implement a queue so that instead of commiting at every Athens save, make a queue and just push the last commit instead of push each one
  5. Add pics to Windows startup process
If you like this consider starring it.
If you like this idea ask the Athens team to integrate it with Athens.
I was inspired to make this after a chat with Aneesh Makala, a colleague of mine.
An extension to detect if the articles content match its title.

Clickbait Detector An extension to detect if the articles content match its title. This was developed in a period of 24-hours in a hackathon called 'H

Arvind Krishna 5 Jul 26, 2022
Hspell, the free Hebrew spellchecker and morphology engine.

Hspell, the free Hebrew spellchecker and morphology engine.

16 Sep 15, 2022
A generator library for concise, unambiguous and URL-safe UUIDs.

Description shortuuid is a simple python library that generates concise, unambiguous, URL-safe UUIDs. Often, one needs to use non-sequential IDs in pl

Stavros Korokithakis 1.8k Dec 31, 2022
REST API for sentence tokenization and embedding using Multilingual Universal Sentence Encoder.

MUSE stands for Multilingual Universal Sentence Encoder - multilingual extension (supports 16 languages) of Universal Sentence Encoder (USE).

Dani El-Ayyass 47 Sep 05, 2022
Maiden & Spell community player ranking based on tournament data.

MnSRank Maiden & Spell community player ranking based on tournament data. Why? 2021 just ended and this seemed like a cool idea. Elo doesn't work well

Jonathan Lee 1 Apr 20, 2022
StealBit1.1 and earlier strings and config extraction scripts

StealBit1.1 and earlier scripts Use strings_decryptor.py to extract RC4 encrypted strings from a StealBit1.1 sample(s). Use config_extractor.py to ext

Soolidsnake 5 Dec 29, 2022
Vastasanuli - Vastasanuli pelaa Sanuli-peliä.

Vastasanuli Vastasanuli pelaa SANULI -peliä. Se ei aina voita. Käyttö Tarttet Pythonin (3.6+). Aja make (tai lataa words.txt muualta) Asentele vaaditt

Aarni Koskela 1 Jan 06, 2022
PyMultiDictionary is a Dictionary Module for Python 3+ to get meanings, translations, synonyms and antonyms of words in 20 different languages

PyMultiDictionary PyMultiDictionary is a Dictionary Module for Python 3+ to get meanings, translations, synonyms and antonyms of words in 20 different

Pablo Pizarro R. 19 Dec 26, 2022
"Complexity" of Flags of the countries of the world

"Complexity" of Flags of the countries of the world Flags (png) from: https://flagcdn.com/w2560.zip https://flagpedia.net/download/images run: chmod +

Alexander Lelchuk 1 Feb 10, 2022
You can encode and decode base85, ascii85, base64, base32, and base16 with this tool.

You can encode and decode base85, ascii85, base64, base32, and base16 with this tool.

8 Dec 20, 2022
Paranoid text spacing in Python

pangu.py Paranoid text spacing for good readability, to automatically insert whitespace between CJK (Chinese, Japanese, Korean) and half-width charact

Vinta Chen 194 Nov 19, 2022
a python package that lets you add custom colors and text formatting to your scripts in a very easy way!

colormate Python script text formatting package What is colormate? colormate is a python library that lets you add text formatting to your scripts, it

Rodrigo 2 Dec 14, 2022
py-trans is a Free Python library for translate text into different languages.

Free Python library to translate text into different languages.

I'm Not A Bot #Left_TG 13 Aug 27, 2022
Fuzz a language by mixing up only few words.

afasi Fuzz a language by mixing up only few words. Status Beta. Note: The default branch is default. Use Examples Version General Help Translate Help

Stefan Hagen 2 Dec 14, 2022
AnnIE - Annotation Platform, tool for open information extraction annotations using text files.

AnnIE - Annotation Platform, tool for open information extraction annotations using text files.

Niklas 29 Dec 20, 2022
A python tool to convert Bangla Bijoy text to Unicode text.

Unicode Converter A python tool to convert Bangla Bijoy text to Unicode text. Installation Unicode Converter can be installed via PyPi. Make sure pip

Shahad Mahmud 10 Sep 29, 2022
Python Lex-Yacc

PLY (Python Lex-Yacc) Copyright (C) 2001-2020 David M. Beazley (Dabeaz LLC) All rights reserved. Redistribution and use in source and binary forms, wi

David Beazley 2.4k Dec 31, 2022
This is a text summarizing tool written in Python

Summarize Written by: Ling Li Ya This is a text summarizing tool written in Python. User Guide Some things to note: The application is accessible here

Marcus Lee 2 Feb 18, 2022
A pipeline for making highlighted text stand-alone.

title emoji colorFrom colorTo sdk app_file pinned decontextualizer 📤 green gray streamlit main.py false Decontextualizer As a second step in improvin

Paul Bricman 26 Dec 17, 2022
An implementation of figlet written in Python

All of the documentation and the majority of the work done was by Christopher Jones ([emai

Peter Waller 1.1k Jan 02, 2023