Page 1 of 1

Calcurse - CLI Organizer

Posted: Tue 01 Sep 2009, 10:07
by aragon
Home: http://culot.org/calcurse/
Version: 3.0
calcurse is a text-based calendar and scheduling application. It helps keep track of events, appointments and everyday tasks. A configurable notification system reminds user of upcoming deadlines, and the curses based interface can be customized to suit user needs. All of the commands are documented within an online help system.
Compiled and tested in 4.31

aragon

Posted: Thu 15 Oct 2009, 15:18
by aragon
updated to 2.7. see main post.

aragon

Posted: Fri 04 Jun 2010, 19:09
by aragon
updated to 2.8. see main post.

aragon

Posted: Wed 30 Jun 2010, 09:15
by chrome307
Thanks Aragon for this handy utility :)

Posted: Tue 10 May 2011, 21:40
by neurino
Very nice, I compiled it in Wary 511, upx'd binary.

Posted: Tue 03 Jul 2012, 11:17
by aragon
uploaded actual version to first post.

aragon

calcurse-3.1.4

Posted: Sat 24 Aug 2013, 11:42
by charlie6
Hi,
nex website:http://calcurse.org
last edited: see next post for additional usefull infos
to binding-keys and keyboard controls lovers...
here is calcurse-3.1.4 compiled on wheezy-3.5.2.5 (debian-7.0 flavour) → works on wheezy-3.5.2.7 as also on dPup-raring-3.9.9.X.

Using it in place of osmo since quite 2 weeks...

To start it do in terminal (i.e. LXTermibal ; if only urxvt present, see next post)

Code: Select all

#agenda
as the pet has a script «agenda» in it.
last edited: of course, works also just doing in terminal

Code: Select all

#calcurse

One might also activate the /usr/local/bin/defaultcalendar.txt present in the pet as also drop its .txt tail to use calcurse in place of osmo.

warnings:
-this is a console GUI application. One has to read the binding keys code at the bottom of the console GUI to know what to do for full satisfaction.
-no after-sales-support to be awaited from me ... :?

download link:http://www.datafilehost.com/d/886b3905

calcurse-3.1.4 cli organizer compiled for wheezy

Posted: Sun 25 Aug 2013, 04:11
by charlie6
Hi again,
in addition to the above post:
- the above pet uses wheezy-3.5.2.5 features: LXTerminal instead of urxvt.
For use with urxvt, edit /usr/local/bin/agenda as follows:
replace the line

Code: Select all

exec /usr/bin/lxterminal --geometry=100x55 --command='calcurse' --title='AGENDA ( !! QUITTER =presser q + ENTER + o )'
by

Code: Select all

exec /usr/bin/urxvt -title 'AGENDA ( !! QUITTER =presser q + ENTER + o )' -geometry 100x55 -e calcurse
- the second screenshot shows a mismatch between displayed week number in top-right calendar (week count from 1 to 53) and bottom-left current date (week count 0 to 52 - read man strftime web page for details).
This is not due to calcurse, but only to configure settings (key binding C) present in /root/.calcurse/conf file.
The Calcurses binary counts from 1 to 54.
To match with it, just manualy edit this line in /root/.calcurse/conf file:
was:

Code: Select all

format.notifydate=%a %d %b %G w%W
new:

Code: Select all

format.notifydate=%a %d %b %G w%V
-localization: de, en, es, fr, nl, pt_BR, ru

le frenchy va nous aider !

Posted: Sat 28 Jun 2014, 05:27
by Pelo
Comment entres-tu les tâches ? How do yo add tasks ? au boulot !
Merci Monsieur :)

Posted: Fri 19 Apr 2019, 01:43
by rufwoof
Linux without a ssh server is like tea without milk (a little bitter)

I use hashbang.sh for my (free) ssh server, which provides IRC, mail, even a https socks (to hide your IP from remote servers and hide your activity/connections from your ISP (local state)). hashbang sets you up with a tmux session by default, so you can detach (ctrl-b d), logout, and then later log in again and reattach to the exact same session - which is nice for leaving IRC channels open. A ssh server is also handy for storing your calendar/events for calcurse, as that can then be accessed/sync'd/used from different devices.

Guess I should be using rsync, however the script I use to pull down my calendar (appointments), use it (calcurse) and then re-upload again ... storing in a encrypted form is :

Code: Select all

#!/bin/sh
cd /root/.calcurse
scp your-hashbang-userid@ny1.hashbang.sh:~/apts.gz.gpg /root/.calcurse/apts.gz.gpg
if [ -f /root/.calcurse/apts.gz.gpg ]; then
	gpg --yes --batch --passphrase=yourpassword apts.gz.gpg
	gzip -d apts.gz
	rm apts.gz.gpg apts.gz >/dev/null 2>&1
	sync
	/usr/local/bin/calcurse
	sync
	echo Syncing to server ... please wait
	gzip apts
	gpg --yes --batch --passphrase=yourpassword -c apts.gz
	scp /root/.calcurse/apts.gz.gpg your-hashbang-userid@ny1.hashbang.sh:~/apts.gz.gpg
	rm apts.gz apts.gz.gpg >/dev/null 2>&1
else
	echo problems gettings apts file via ssh
fi
With hashbang you are set up with a ssh key, so no passwords involved in copying (scp) to/from the server. The 'yourpassword' in the above is a password you choose to encrypt the apts (calcurse appointments) file. Puppy being a single user desktop generally has no issues with other users potentially seeing that password in the likes of ps, as you're the only user.

What I tend to do for my desktop is to have the browser (I prefer Firefox Quantum) running on one desktop, another desktop for music (I like audacious), and a third desktop for tmux i.e. ssh'd into your ssh server - for quick/easy access to mail, calendar, irc ... etc. I use Barry's EasyOS, and I run those desktops inside the Easy Container, which is isolated from the main system (local data/docs are secure/separated from online activities/risk).

calcurse removing todo

Posted: Sat 22 Jun 2019, 11:54
by rufwoof
EDIT: Found that in general use that with the TODO panel totally removed it could leave remnants visible in that screen area after some activity. So I've modified the code to leave the TODO panel still present, but is inaccessible and has a panel label of "not available" (n/a). i.e. tabbing between panels just jumps between the calendar and appointments panels.

For Fatdog (see http://murga-linux.com/puppy/viewtopic. ... 88#1030788) the new/later sfs version has already been uploaded. (I usually install such sfs's using

unsquashfs -f -d / calcurse-no-todo.sfs

that forcibly extracts the contents to the specified directory i.e. / in the above example).

=======

For me, the todo panel in calcurse just gets in the way. I don't use it as I use a separate text file for my todo's. So I opted to remove (see above edit - 'replace') the calcurse todo panel and my calcurse now looks like ...

Image
(clickable thumbnail)

To achieve that in the calcurse source code wins.c I changed
if (slctd_win == TOD) -> if (slctd_win == APP)
and in ui-todo.c I commented out
/* listbox_display(&lb_todo, hilt); */
re-ran make and make install and now its as per the above image.
A crude, but simple change, that works for me.

i.e. around line 250 of wins.c now looks like this

Code: Select all

/* TAB key was hit in the interface, need to select next window. */
void wins_slctd_next(void)
{                                                             
        if (slctd_win == APP)  /* Rufwoof was TOD */       
                slctd_win = CAL;
        else
                slctd_win++;                                     
}
and around line 280 of ui-todo.c now looks like this

Code: Select all

/* Updates the TODO panel. */     
void ui_todo_update_panel(int hilt)
{                                                                       
        /*             
         * This is used and modified by ui_todo_draw() to avoid quadratic
         * running time.                                             
         */                                                          
        llist_item_t *p = LLIST_FIRST(&todolist);
  
        listbox_set_cb_data(&lb_todo, &p);                    
/*      listbox_display(&lb_todo, hilt); Rufwoof hide the todo window */
}
With the todo panel inactive, when you want to move a appointment from one day to another its quicker/easier as you just have to tab to the calendar, select (arrow keys to) the relevant date, tab to the appointments panel, select the appointment to be moved and press 'd' (delete) to remove that entry (press y to confirm that if you have delete confirmation turned on in the calcurse configuration), then tab back to the calendar and switch to the date where you want the appointment moved to, tab into the appointments section and press 'p' to paste the deleted appointment.