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.
Fixes mojibake and other glitches in Unicode text, after the fact.

ftfy: fixes text for you print(fix_encoding("(ง'⌣')ง")) (ง'⌣')ง Full documentation: https://ftfy.readthedocs.org Testimonials “My life is li

Luminoso Technologies, Inc. 3.4k Jan 08, 2023
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
Skype export archive to text converter for python

Skype export archive to text converter This software utility extracts chat logs

Roland Pihlakas open source projects 2 Jun 30, 2022
A Python package to facilitate research on building and evaluating automated scoring models.

Rater Scoring Modeling Tool Introduction Automated scoring of written and spoken test responses is a growing field in educational natural language pro

ETS 59 Oct 10, 2022
Python Q&A for Network Engineers

Q & A I am often asked questions about how to solve this or that problem, and I decided to post these questions and solutions here, in case it is also

Natasha Samoylenko 30 Nov 15, 2022
Open-source linguistic ethnography tool for framing public opinion in mediatized groups.

Open-source linguistic ethnography tool for framing public opinion in mediatized groups. Table of Contents Installing Quickstart Links Installing Pyth

Qualichat 7 Jun 02, 2022
Extract knowledge from raw text

Extract knowledge from raw text This repository is a nearly copy-paste of "From Text to Knowledge: The Information Extraction Pipeline" with some cosm

Raphael Sourty 10 Dec 03, 2022
strbind - lapidary text converter for translate an text file to the C-style string

strbind strbind - lapidary text converter for translate an text file to the C-style string. My motivation is fast adding large text chunks to the C co

Mihail Zaytsev 1 Oct 22, 2021
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
box is a text-based visual programming language inspired by Unreal Engine Blueprint function graphs.

Box is a text-based visual programming language inspired by Unreal Engine blueprint function graphs. $ cat factorial.box ┌─ƒ(Factorial)───┐

Pranav 104 Dec 24, 2022
Um simulador de caixa registradora com database usando arquivos .txt

🛒 Caixa Registradora V2 ❓ - Como usar? Execute o caixa-registradora.py, nele vai ter um menu interativo, você pode cadastrar diversos produtos em um

Gabriel 0 Sep 25, 2022
An online markdown resume template project, based on pywebio

An online markdown resume template project, based on pywebio

极简XksA 5 Nov 10, 2022
LazyText is inspired b the idea of lazypredict, a library which helps build a lot of basic models without much code.

LazyText is inspired b the idea of lazypredict, a library which helps build a lot of basic models without much code. LazyText is for text what lazypredict is for numeric data.

Jay Vala 13 Nov 04, 2022
Word and phrase lists in CSV

Word Lists Word and phrase lists in CSV, collected from different sources. Oxford Word Lists: oxford-5k.csv - Oxford 3000 and 5000 oxford-opal.csv - O

Anton Zhiyanov 14 Oct 14, 2022
Export solved codewars kata challenges to a text file.

Codewars Kata Exporter Note:this is not totally my work.i've edited the project to make more easier and faster for me.you can find the original work h

Oussama Ben Sassi 4 Aug 13, 2021
This is REST-API for Indonesian Text Summarization using Non-Negative Matrix Factorization for the algorithm to summarize documents and FastAPI for the framework.

Indonesian Text Summarization Using FastAPI This is REST-API for Indonesian Text Summarization using Non-Negative Matrix Factorization for the algorit

Viqi Nurhaqiqi 2 Nov 03, 2022
This repository contains scripts to control a RGB text fan attached to a Raspberry Pi.

RGB Text Fan Controller This repository contains scripts to control a RGB text fan attached to a Raspberry Pi. Setup The Raspberry Pi and RGB text fan

Luke Prior 1 Oct 01, 2021
Little python script + dictionary to help solve Wordle puzzles

Wordle Solver Little python script + dictionary to help solve Wordle puzzles Usage Usage: ./wordlesolver.py [letters in word] [letters not in word] [p

Luke Stephens (hakluke) 4 Jul 24, 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