Git Product home page Git Product logo

calendar-vim's Introduction

calendar.vim

calendar.vim creates a calendar window you can use within vim. It is useful in its own right as a calendar-inside-vim. It also provides hooks to customise its behaviour, making it a good basis for writing new plugins which require calendar functionality (see :help calendar-hooks for more information).

Installation

You can install calendar.vim in the usual way, by copying the contents of the plugin, autoload and doc directories into the equivalent directories inside .vim.

Alternatively, if you manage your plugins using pathogen.vim, you can simply clone into the bundle directory:

cd ~/.vim/bundle
git clone git://github.com/mattn/calendar-vim

Or, using submodules:

cd ~/.vim
git submodule add git://github.com/mattn/calendar-vim bundle/calendar-vim

Usage

Bring up a calendar based on today's date in a vertically split window:

:Calendar

Bring up a calendar showing November, 1991 (The month Vim was first released):

:Calendar 1991 11

The above calendars can alternatively be displayed in a horizontally split window:

:CalendarH

Bring up a full-screen:

:CalendarT

Fast mappings are provided:

  • <LocalLeader>cal: Vertically-split calendar
  • <LocalLeader>caL: Horizontally-split calendar

For full documentation, install the plugin and run :help calendar from within Vim.

calendar-vim's People

Contributors

bw1 avatar dpwright avatar gauteh avatar hotoo avatar itchyny avatar kainokikaede avatar mattn avatar mvarelaf avatar osleg avatar pabloariasal avatar syohex avatar ta1kt0me avatar tc-mint avatar thinca avatar wikimatze 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

calendar-vim's Issues

Quick navigation

Great package! I happily use it to help me navigate my vimwiki diary entries.

Just a suggested feature, inspired by the itchyny/calendar.vim plugin -- quickly navigating between dates using the h and l keys. I implemented this in my own .vimrc somewhat clumsily as follows:

au FileType calendar nmap <buffer> l /\( \\|\d\)\d\(+\\|*\\| \)<CR>:noh<CR>
au FileType calendar nmap <buffer> h lNN:noh<CR>

Maybe you (or somebody) can build this in as an option into your package, with a cleaner implementation?

Error when switch tab

Error detected while processing BufLeave Auto commands for "*Calendar":
E121: Undefined variable: b:sav_titlestring
E15: Invalid expression: b:sav_titlestring
Press ENTER or type command to continue

Open calendar with today date

I have managed to open the calendar with Calendar [[Year] Month] syntax but it is still better to push "t" to display today date. Is there i way to open the caledar so i dont have to push 't' each time?

custom sign hook should use diary_extension

From 6de5eaa415f5fd01ac3c77de2fbf07c798cb3317 Mon Sep 17 00:00:00 2001
From: Gaute Hope <[email protected]>
Date: Mon, 20 Aug 2018 15:42:31 +0200
Subject: [PATCH] diary: use g:diary_extension in default calendar sign hook

---
 autoload/calendar.vim | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/autoload/calendar.vim b/autoload/calendar.vim
index 824f877..f369b82 100644
--- a/autoload/calendar.vim
+++ b/autoload/calendar.vim
@@ -1073,7 +1073,7 @@ endfunc
 "*   year  : year of sign
 "*****************************************************************
 function! calendar#sign(day, month, year)
-  let sfile = g:calendar_diary."/".printf("%04d", a:year)."/".printf("%02d", a:month)."/".printf("%02d", a:day).".md"
+  let sfile = g:calendar_diary."/".printf("%04d", a:year)."/".printf("%02d", a:month)."/".printf("%02d", a:day).g:calendar_diary_extension
   return filereadable(expand(sfile))
 endfunction
 
-- 
2.18.0

Filename became directory

Hi sir, my when i do :Calendar and pick a date, the file name is written as directory like this: /diary/2022/03/17.md

here is my configuration:

vim.g.calendar_diary = "~/.config/dev/personal/diary"

Expected result: /diary/2022-03-17.md

Please specify what license applies to the plugin

This plugin is included in Debian's vim-scripts package, and we assumed at the time the plugin is licensed compatible with Vim. However, since there's no explicit declaration, that was an invalid assumption. Please clarify the situation so we can determine if or how the packaging needs to be changed.

Customize filenames/extensions

Hi -- I love calendar-vim. Two requests:

  1. Would it be possible to specify the filename of the text files? At the moment, they are just the date number (e.g. 19.md) and rely on the directory structure for context. But when searching files outside the directory context, I get a lot of files all named the same thing (19.md, 19.md etc.). Could there be an option for ISO dates for filenames (YYYY-MM-DD)?

  2. Could we also select file extension? My files are markdown, but I prefer a .txt extension rather than .md, because preview handlers handle that better, especially on mobile.

Thanks.

Autodoc/calander.vim

Great plugin!
I had to put calander.vim into ~/.vim/autoload to get it working. I don't think this is mentioned in your README.

All the best,
Tom

New release

Hi Mat, your lastest release is over one year ago, can you create a new one?

Specify the output path of the diary feature

Hi Yasuhiro,

thanks for your plugin, it is exactly the one I have been looking for. When I'm on a day in the calendar view window and press it will save the notes for the day in $HOME/diary. Is it possible to add an option which let me decide where I want to have this folder. Of course I can use a symlink for this but I want to have the configuration in my vim settings.

Best regards from Berlin,

Matthias

sync with google calendar with googlecl api

Is there any plan for calendar-vim to sync with google calendar in the future? I love this plugin and I'm using google calendar too, I wish that will be combined together ๐Ÿ‘

How to keep cursor stil when jump among months

In the calendar, when I press <left>, the months are shift down and the cursor is move to the "<Prev" in the nav bar. What I want is the position of cursor doesn't change. It is not the option of "calendar_focus_today". With this option set to 1, the cursor still change because it keep tracing today until the date is out of window.
Take an example. Now the cursor is in the date 2.1. then I press <left>, then the cursor stays still and it points to 1.1 .(maybe it does moves a little because the difference of months).

conflict with folding

If adding folding in .vimrc:

set foldenable
set foldmethod=indent

the calendar will have folding and look not nice!

typo: doc/calendar.txt

calendar.vim is available on GitHub:
http://github.com/mattn/calendar.vim

==>

calendar.vim is available on GitHub:
http://github.com/mattn/calendar-vim

Add Command to Jump to next/prev Calendar Entry

Looking through the help I was wondering if we might add a normal mode command (from the Calendar entry file, not the Calendar) to jump to the next and previous day's entry, so one might scan through days as they do through open buffers or through the jump list.

(I'm putting this here in case you think it's worth an enhancement rather than a PR from me, which will probably not happen for some time. If that's inappropriate, please let me know. Thanks!!)

[Question/Request] Highlight days with a diary note in bold font

Hi,

First of all, thanks a lot for calendar-vim! I use it together with the vimwiki diary and it is very useful.

calendar-vim marks days with an associated diary note with a plus sign +; it marks weekends in bold font; and it marks the current day with an asterisk *.

Is it possible to change this format? The + and * signs clutter my calendar window, making it hard to distinguish which days have notes and which don't at a first glance. I would prefer to mark days with a diary note in bold, and to not mark weekends as special days.

Thanks a lot in advance.

[Question] Hide calendar from selectable buffers

Hi there,

Thanks a lot for this plugin, love how convenient it is. I was working over my dotfiles config and wondering if anyone had some 'fix' for this little annoyance:

I often use Vimwiki with multiple split buffers, calendar on the side. When selecting previous or next buffers, it often end up with the calendar. Not sure how NERDTree manages to do this.

I know it's probably a 0.5/10 in the priority list and this is 100% nitpicking. I just thought it was the best place to ask.
Thanks!

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.