Commit Graph

442 Commits

Author SHA1 Message Date
Rane
e7f5ce6046 Fix VimwikiBackLinks on Windows. See Issue #413.
This is a temporary fix until refactoring of path handling is complete.
2019-04-06 10:43:09 -06:00
lyokha
0303021abd Fast aligns check
The optimized table formatting algorithm was still O(n) because
calculating aligns required traversal to the separator line on the top
of a table. This heuristic algorithm calculates aligns in O(1) in the
best case by looking at cells in two rows above.

Say, if two above rows are

|      uau | uauyaya         | ya      |
|       ua | uaua            | uaaua   |
| <cursor> |                 |         |

then the aligns can be figured out without need to find the separator
line. If aligns cannot be figured out after this fast check then the
algorithm falls back to O(n) with searching for the separator line.
2019-04-04 21:30:14 +03:00
Лёха
ae3db7a079 Do not format current table line directly in get_rows()
This formatting is needed in the optimized table formatting algorithm
for shrinking the current table line to try the best to avoid
re-formatting the whole table. However, this breaks cursor motion and
may also affect other table related behaviors. The fix is to move this
formatting to get_aligned_rows(). Now table rows are not affected by any
means, because the current row is only replaced temporarily for the
formatting purpose only and gets reverted as soon as the check is
finished.

Fixes #656.
2019-04-04 00:13:00 -07:00
Henry Qin
3c0ae2ff97 Revert "table alignment: break out of loop when separator found"
This reverts commit 23d273d547, which
fixes #655.

Description of fixed problem:
1. When looping through rows, if a separator was found, all subsequent
   rows would not get an assigned alignment.
2. This breaks `s:get_aligned_rows` because it calls `s:fmt_sep` and
   `s:fmt_row`, both of which expect `aligns` to have a value for every
   row number.
2019-04-03 11:44:36 -07:00
Rane Brown
4928132e5f Use shiftwidth to calculate diary index header indentation 2019-04-03 11:58:27 -06:00
Rane Brown
80a94cd8c7 Correctly indent diary section links when list_margin is 0 2019-04-03 10:48:23 -06:00
Alexey Radkov
e0fffb470a Separator line in a table requires special treatment (#651)
Fix #650 – horizontal table delimiter treated wrong
2019-04-01 23:13:24 +02:00
Rane Brown
4f5d4c9400 Change the tagfile name.
This changes the tags file used by vimwiki to '.vimwiki_tags' to prevent
conflicts with other tools that may generate a tags file using the same
name such as gutentags.
2019-04-01 09:46:41 -06:00
Rane Brown
41aa647aba Add option to set a character which replaces spaces when creating links.
The wikilocal option links_space_char will be used to replace any spaces
when creating a new wiki link and page. This only affects link creation
with a visual selection.
2019-03-31 21:19:50 -06:00
Rane Brown
3396e87dbe Fix problems with commands not taking a count and mapping behavior.
Commands such as :VimwikiIndex and :VimwikiDiaryIndex did not previously
take a count and the doucmentation was inconsistent/incorrect for the
behavior of these commands. Fixes #543.
2019-03-31 20:00:37 -07:00
Steven Stallion
3b9aa6b162 Support file exclusion in link generation 2019-03-30 21:10:14 -05:00
Rane Brown
047947cbbe
Merge pull request #635 from sstallion/sstallion/autogenerate-tags
Support automatic generation of links and tags
2019-03-30 19:56:57 -06:00
Steven Stallion
0e664a6230 Merge branch 'dev' of git://github.com/vimwiki/vimwiki into sstallion/autogenerate-tags 2019-03-30 20:34:57 -05:00
Henry Qin
3f7f85cfc6 Add command and map to jump to the next unfinished task.
Introduce the command `VimwikiNextTask` and the mapping `gnt` to jump to
the next unfinished task.
2019-03-30 12:45:19 -07:00
Michal Cizmazia
b849a411e3
Add toc_link_format option
Add an option for setting the format of the links in the Table of Contents:
- Extended (the current and default)
- Brief (new format for the Vimwiki markup)
2019-03-29 21:28:11 +01:00
Steven Stallion
fc158ba744 Support automatic generation of links and tags 2019-03-28 20:11:47 -05:00
Greg Anders
e56c26c7ba Add an option to conceal preformatted text blocks
This merges PR #641.
2019-03-28 14:50:25 -07:00
Rane Brown
f5cf991115
Merge pull request #634 from sstallion/sstallion/headers
Adjust generated header behavior for TOC, links, tags, and diary (oh my!)
2019-03-26 11:57:24 -06:00
Steven Stallion
6c2f9f999d Adjust generated header behavior for TOC, etc. 2019-03-26 12:03:09 -05:00
tinmarino
dfccfb1951 Add option : g:vimwiki_table_reduce_last_col. Used to not expand table last cells in order to avoid large, useless wraps 2019-03-23 11:23:58 -03:00
Eric Langlois
8f5d38365b Added optional extra caption levels to diary index.
Added the option 'diary_caption_level', which controls the presence of
captions in the diary index linking to headers within the diary pages.

Possible values:
-1:  No headers are read from the diary page.
 0:  The first header from the diary page is used as the caption.
       There are no sub-captions.
 1:  Captions are created for headers of level 1 in the diary page.
 2:  Captions are created for headers up to level 2 in the diary page.
 etc.

When the value is >= 1, the primary caption of each diary page is set to
the first header read from that page if it is the unique lowest-level
header.
2019-03-20 14:09:57 -07:00
Steven Stallion
eb00d30d9b Initial commit 2019-03-19 10:33:08 -05:00
Rane Brown
c8d09d7c9e
Merge pull request #629 from gpanders/dev
Allow customization of header level of TOC
2019-03-18 17:20:30 -06:00
Лёха
e0f4ab8c5e Revert implementation of function s:get_cell_aligns()
This commit reverses a change to s:get_cell_aligns introduced by
bdcfca1e5c.
2019-03-18 14:43:43 -07:00
Steven Stallion
ad8e1d30bf Add g:vimwiki_create_link option to prevent link creation.
Adds a new global option named create_link, which allows the user to
control :VimwikiFollowLink behavior when attempting to follow a
non-existent link. The original behavior of creating a new link is
preserved. However, by setting this option to 0, new links will not be
created when pressing return over regular text. Closes #528.
2019-03-18 14:37:12 -07:00
lyokha
ad6a3bceb6 the cause of the linear slowing down was fixed 2019-03-18 17:49:13 +03:00
lyokha
0c82d9dcb8 Merge remote-tracking branch 'upstream/dev' into dev 2019-03-18 13:13:30 +03:00
Henry Qin
efcc3f1fa5 Merge branch 'wiki-path' into 'dev'. Closes #573.
Introduce a `%wiki_path%` variable which can be used in HTML template
files to output the path of the wiki file being converted to HTML.
2019-03-17 18:19:49 -07:00
Henry Qin
e6d6830db7 Merge branch 'colorcodes' into 'dev'. Closes PR #616.
This colors all CSS color codes found alone in inline code blocks to the
color they mention.
2019-03-17 18:09:06 -07:00
Hugo Hörnquist
2f87f92060 Better foreground for colorcodes. 2019-03-17 22:40:34 +01:00
Henry Qin
8941508e35 Allow AddHeaderLevel and RemoveHeaderLevel to take counts 2019-03-17 10:43:42 -07:00
lyokha
88a6820e9e updated for the new aligns feature 2019-03-15 16:07:52 +03:00
Alexey Radkov
fa6342c454
Merge branch 'dev' into dev 2019-03-15 15:38:22 +03:00
lyokha
5e4a89c898 faster table format on InsertLeave; faster s:get_rows() 2019-03-15 15:31:28 +03:00
Henry Qin
abd12d4479 Merge PR #377 from https://github.com/schmeisers/vimwiki 2019-03-14 18:08:27 -07:00
Greg Anders
bb40826def Allow customization of header level of TOC
Instead of forcing the TOC to always be at header level 1, allow the
user to specify via the option g:vimwiki_toc_header_level what level
they want.

This defaults to 1, so if the user does nothing then the old behavior
will remain the same.
2019-03-14 08:34:52 -06:00
Alexey Radkov
af8cdc4d62
Merge branch 'dev' into dev 2019-03-14 14:09:30 +03:00
lyokha
a74e0821b0 resolved conflicts in tbl.vim 2019-03-14 13:36:51 +03:00
Hugo Hörnquist
08ec02a755 Alternative where text color is inverse of background. 2019-02-19 21:04:57 +01:00
Hugo Hörnquist
21f5069e48 Code-blocks auto-color. 2019-02-19 20:45:10 +01:00
Nico
a7160310c9 Patch for issue #585 - implement suggested improvements 2019-02-01 17:43:05 +01:00
Nicolas Brailovsky
0f38192b03 Patch for issue #585, fix anchor links for multiple extensions 2019-02-01 17:43:05 +01:00
Fredrik Arnerup
69aa609941 Don't include trailing period in link 2019-02-01 17:43:05 +01:00
Hugo Hörnquist
bda3a59f91 Made headings link to themselves.
Made each heading link to itself, by placing an <a> tag inside each
<h[1-6]> tag.

Also adds class="header" to each header, allowing for the CSS rule
    .header a { ...  }
to remove all styling from the inner links, allowing the outputed
document to look like before.
2019-01-30 21:13:29 +01:00
EinfachToll
1cffbdbf3d Fix: Don't double a ' character in header in TOC
When building the TOC, every ' in a header got doubled. According to git blame, I did this doubling explicitely, but I have no idea why I did this.
2019-01-25 16:45:11 +01:00
EinfachToll
fdc367f725 Check all user settings for correct type, range etc. 2019-01-19 21:05:27 +01:00
EinfachToll
6257c8fa54 Revert "Allow to specify additional chars for lists"
This reverts commit 75819ca23a.
2019-01-17 21:57:42 +01:00
EinfachToll
35d1f23b92 Revert "Allow list symbols to be configured per wiki"
This reverts commit 79c295a92f.
2019-01-17 21:57:40 +01:00
EinfachToll
54e064f5c4 Revert "Fix bug"
This reverts commit 2346b7e299.
2019-01-17 21:57:28 +01:00
EinfachToll
65b0c97c6d Revert "Update the links when renaming markdown wikis"
This reverts commit 599a0e9083.

Sorry, we can't simply change the syntax of something as basic as a
link, even if the old syntax is wrong. We need to keep Vimwiki
reasonably backwards compatible.
2019-01-16 20:56:49 +01:00
Michael F. Schönitzer
2346b7e299 Fix bug 2019-01-04 01:19:26 +01:00
Michael F. Schönitzer
79c295a92f Allow list symbols to be configured per wiki 2019-01-03 21:02:21 +01:00
Michael F. Schönitzer
75819ca23a Allow to specify additional chars for lists
See also #390 and #479 for earlier attempts
2019-01-03 21:02:21 +01:00
Raphael Feng
599a0e9083 Update the links when renaming markdown wikis
Two reasons whey the links in markdown wikis are not updated:
1. The markdown link pattern is wrong, should be []() rather than [][];
2. The logic of getting wiki local var cannot get correct wiki index as:
    a. the renamed file's buffer is removed and %:p would return empty
    b. the function that gets the wiki local var depends on buffer's %:p
    value to find the wiki it belongs to and it would always return -1
    and result in the default option values instead the user's option

The fix is
1. fix the markdown link pattern regex;
2. keep the renamed file's buffer open during the period of updating the link
2019-01-03 13:00:19 +01:00
sreejith994
2366523001 Fixed updation of links when renaming wiki files in subdirectories 2018-12-21 11:08:14 +01:00
EinfachToll
d9b6d77e90 Accept '.foo' and 'foo' as value for the ext option 2018-12-17 20:27:15 +01:00
EinfachToll
645ae61dc3 Fix error when trying to make a link out of '-'
Fix #582
2018-12-14 21:03:46 +01:00
EinfachToll
a72c14da1c More reasonable behavior for [-] and [X] list items
A parent [-] list item should have only [-] items as children.
2018-12-08 21:13:04 +01:00
EinfachToll
c398f5cd81 Remove code duplicate 2018-12-08 21:06:30 +01:00
EinfachToll
fa36bf3838 Don't check a [-] list item when its parent is [X] checked 2018-11-30 17:02:38 +01:00
EinfachToll
a653e2d8c2 HTML converter: trim strings correctly
The old version didn't remove trailing spaces.
2018-11-25 17:56:43 +01:00
EinfachToll
349d551181 Diary: make + in visual mode work correctly 2018-11-25 17:55:43 +01:00
EinfachToll
dcd1c0a364 Make gl* work again
The problem was that map() also changed the given list in-place, that's
not what was intended.
2018-11-19 21:02:37 +01:00
EinfachToll
2fb0e17adb glx on a list item creates a checked checkbox
... instead of an unchecked one.
2018-11-17 20:07:48 +01:00
EinfachToll
12349b8cb6 Remove duplicated code 2018-11-17 20:07:09 +01:00
EinfachToll
2e523b308f Check if there is a TOC header before trying to update it 2018-11-17 20:05:58 +01:00
EinfachToll
6f6023610c Don't jump to the TOC on C-o etc.
Before, the cursor would jump to the TOC a lot when pressing <C-o> etc.,
because it is changed every time the buffer is saved.
Use :keepjumps to make it less intrusive. Sadly, the cursor still jumps
to the TOC when you press u and C-r, but it seems there is no way around
it.
2018-11-12 21:54:52 +01:00
EinfachToll
bddd644fbb Use $HOME instead of ~/ in paths
Apparently, the latter doesn't work on all platforms.
Ref #565
2018-11-07 22:02:30 +01:00
EinfachToll
90722a4703 Make an error message more clear 2018-11-01 21:12:14 +01:00
EinfachToll
7969810b49 Fix losing highlighting after VimwikiAll2HTML
Apparently, switching buffers in connection with disabled events caused
the highlighting to disappear. Solution: use the :wa command to save all
buffers. A disadvantage is that now also non-Vimwiki buffers are saved,
but I think that is bearable.
2018-10-27 17:01:52 +02:00
Michael F. Schönitzer
a32a06f3b8 Follow up to 5f76208 2018-10-25 23:39:45 +02:00
Michael F. Schönitzer
a244246641 Merge branch 'dev' of github.com:vimwiki/vimwiki into dev 2018-10-25 23:27:15 +02:00
Michael F. Schönitzer
5f762082d2 Fix bug: change links when renaming pages 2018-10-25 23:26:35 +02:00
Benjamin Brandtner
7668985b43 Fixed system file handlers for windows
Fixes #560
Opening external files containing spaces should now work on cmd and powershell.
2018-10-22 21:25:56 +02:00
EinfachToll
bd88ea968b Better error handling when opening a file of which a swapfile exists
Ref #569
2018-10-16 22:25:33 +02:00
EinfachToll
76f51f1dba Nicer error message when linking to not registered wiki 2018-10-15 07:36:41 +02:00
Hugo Hörnquist
28727b3971 Add %wiki_path% template variable. 2018-10-11 14:25:55 +02:00
Steven Stallion
d7d94e2160 Initial commit 2018-09-29 20:23:26 +02:00
Fredrik Arnerup
f639c0a342 Clean URLs that don't have slashes
Will fix normalization of links like [[local:./foo.txt]]
Also, allow schemes to end with a number, so that e.g. [[wiki1:foo]]
will normalize as expected.
2018-09-19 12:12:32 +02:00
Michael F. Schönitzer
2185815b00 Fix problem with open swap-file 2018-07-27 02:49:47 +02:00
Steven Schmeiser
10f502a698 table align - catch up to dev 2018-07-09 13:51:18 -04:00
Steven Schmeiser
23d273d547 table alignment: break out of loop when separator found 2018-07-09 10:05:30 -04:00
EinfachToll
786aa470e3 Remove the user-mappable function and use commands instead. 2018-06-26 21:38:55 +02:00
Michael F. Schönitzer
50c95f1bef Remove all protocols and tlds on URL-cleaning
Also make removal of protocol, tld and 'www' more robust against
fails-positives by considering the position in the url.
2018-06-17 16:10:44 +02:00
Michael F. Schönitzer
4d4e88bfa2 Improve heuristic for cleaning urls in link descr. 2018-06-17 15:31:57 +02:00
Nick Borden
966a94bd47 Diary links should use markdown syntax when appropriate (#500)
When markdown syntax is enabled, generated links should use markdown
link syntax.

Fix #499
2018-05-28 21:24:29 +02:00
EinfachToll
d5c6cee5eb Make VimwikiMakeDiaryNote etc work outside a wiki buffer
Fix #497
2018-05-23 18:28:03 +02:00
EinfachToll
9a8854756e Refactoring: simplify and remove some regexes 2018-05-20 15:18:05 +02:00
EinfachToll
057fa39303 :VimwikiMakeDiaryNote makes a new note in the current wiki
... like the doc says, instead of always using the first wiki.
Also, fix the menu entry, which always led to the wrong diary.

Fix #482
2018-05-17 20:06:27 +02:00
Michael F. Schönitzer
d73c1e4ed6 Remove useless statement 2018-05-08 10:56:10 +02:00
Michael F. Schönitzer
b5dcd1ebeb Allow wikis in subfolders of other wikis 2018-05-08 10:56:10 +02:00
Zhuang Ma
c8b02e4bc5 Use markdown link syntax for the TOC
Ref #483
Fix #200
2018-05-01 21:22:07 +02:00
Ben Burrill
1176f60ec6 Allow any visual mode to be used to create a link
The only real condition we care about is whether the selection is
contained within a single line.  It is practical to do something like
V<CR> to link a whole line, and AFAIK there is no reason for why that
doesn't work.
2018-04-22 20:58:39 +02:00
EinfachToll
3f8bb1261f Make some functions script-local 2018-04-20 07:13:21 +02:00
EinfachToll
c1dbf90c29 Remove foldmarkers; general reformatting 2018-04-20 07:03:53 +02:00
EinfachToll
90dc1e5871 Make ]] work when cursor is above first header
Ref #462
2018-04-17 08:53:08 +02:00
EinfachToll
3556de54e1 Small refactorings 2018-04-17 07:15:23 +02:00
EinfachToll
cdc37162a9 Escape only '"' in links
Fix #467
Ref #474
2018-04-16 20:40:18 +02:00
Petrus
65c4ffacca fix missing custom_wiki2html_args default key
Ref #475
2018-04-13 11:03:21 +02:00
EinfachToll
86a8604c4e Remove recently introduced code duplication 2018-04-08 20:41:27 +02:00