sponsor Vim development Vim logo Vim Book Ad

Viki/Deplate : A personal wiki for Vim

 script karma  Rating 1080/328, Downloaded by 17794    Comments, bugs, improvements  Vim wiki

created by
Tom Link
script type
VIKI Forum (questions, feature requests): http://sourceforge.net/projects/deplate/forums/forum/700962
Bug tracker: https://github.com/tomtom/viki_vim/issues
Markup: http://deplate.sourceforge.net/Markup.html (http://deplate.sourceforge.net/markup.txt)
Demo: http://vimsomnia.blogspot.com/2010/11/vikitasks-viki-demonstration-personal.html

This plugin adds wiki-like hypertext capabilities to Vim. You can use viki as a "minor" mode (i.e., as an add-on to any other mode) or as a full-fledged wiki mode. There is also an add-on plugin for "wikifying" latex documents by turning some latex commands into wiki names. If viki is properly configured, activating a reference to an image, a webpage etc. will view that resource in an external viewer.

From http://sourceforge.net/projects/deplate/ you can download a ruby based tool to convert viki markup to html, latex, or docbook. On its homepage (http://deplate.sf.net) you can read a more detailled specification of the markup.

Use the hypertext facility with any filetype. Just type :VikiMinorMode and all wiki names and URLs will be highlighted.

In full mode, viki becomes a personal wiki (http://c2.com/cgi/wiki?PersonalWiki). The full wiki mode included syntax highlighting (for headings, lists, tables, textstyles etc.), folding support, and additional key bindings (i.e., you can press <c-tab> or <s-c-tab> to move the cursor to the next/previous viki name). By default, the viki filetype is enabled for all files with a .viki suffix. The viki markup is explained at http://deplate.sourceforge.net/Markup.html (http://deplate.sourceforge.net/markup.txt)

In case you missed out on wikis, a wiki is a simple way of creating hypertexts. In its very basic form creating a hyperlink is as easy as writing a word in CamelCase or by enclosing a word in brackets--as in [[destination]] or [-destination-]. A wiki is a simple tool to organize ideas, notes etc. See http://en.wikipedia.org/wiki/Wiki for details.

- vikitasks (vimscript #2894): Distributed TODO lists
- hookcursormoved (vimscript #2037): Enhanced detection of hyperlinks to inexistent destinations.
- vxfold (vimscript #3004) by Marko Mahnič: Provides org-mode like fold cycling
- VOoM (vimscript #2657): A two-pane outliner with support for viki

Also available via git
install details
Open the vba file and type:

    :so %

See :help vimball for details. Also, make sure to read |viki-customization|. If you have difficulties to install this plugin or if you use vim 7.0, please make sure to use the current version of vimball (vimscript #1502).

- tlib (vimscript #1863)

Optional enhancements:
- hookcursormoved (vimscript #2037): Enhanced detection of hyperlinks to inexistent destinations.

This plugin relies on the use of filetype plugins. Your .vimrc file should thus contain these lines:

    set nocompatible
    filetype plugin indent on
    syntax on

By default, vim doesn't allow to |abandon| a modified buffer unless |hidden| is set. If get a "cannot abandon buffer"-message, please read the help on |g:vikiHide| and |abandon| to find out how to avoid this problem.

There is also a ruby-based tool for converting viki markup to html, latex, or docbook. Download deplate from the sourceforge project site: http://sourceforge.net/projects/deplate/

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
viki.zip 4.09 2016-01-26 7.0 Tom Link - viki#fileword_suffixes: Also search for files with theses suffixes in |viki#CollectFileWords()|.
- Don't use :HiLink
- NEW :Vikifind command
- Vikifind: add matches for file basename only
- viki#Find(): When matching file names, allow use of [ _-] as whitespace; require trag >= 1.3
- viki#GetInterVikiDef(): optional argument: include_files
- VikiAnchor_rx(): use "\n"
- viki_viki#SetupBuffer(): Setup &path
- remove _tplugin.vim
- Improved viki#DirListing()
- Moved g:vikiOpenFileWith_ANY related code to tlib_vim
- Moved tinykeymap-related code to listitem_vim
- Require tlib >= 1.15
- Improve :Vikifind etc.
- g:vikiOpenUrlWith_ANY: FIX xdg string
- various minor changes
- s/TLibTrace/Tlibtrace/g
- s:GetHead: disable iconv
- viki#DirListing(): "filter" doesn't exclude dirs
- FIX maps in "major mode"
- Disable debug message
- syntax/*.vim: More conceal definitions
MD5 checksum: 4921508fcf82aac578f7740d28ed151d
viki.zip 4.08 2014-11-03 7.0 Tom Link - Incoporate changes from pull request 12
- viki#InterVikiDest(): Use g:vikiIndex (again)
- viki#InterVikiDest: FIX check if i_index exists
- viki_viki#CompleteExtendedNameDef(): Use match() instead of =~ (work-around)
- iskeyword+=192-255
- Allow digits in interviki names
- FIX #13: viki_viki#SetupBuffer(): remove "::" from interviki names for use in interviki_rx
- vikiBaseDirs: A list of directories where to look for "file words" and "hyper words"
- CollectVikiWords(): Use correct directory for hypewords
- Priority lists: Highlight #Y, #Z as comments (like #X)
- viki#DirListing(): Improve display for "**/*.*" pattern (requires proper rewrite)
- FIX #14: Move definition of g:vikiFoldMethodVersion back to plugin/viki.vim
- syntax: g:vikiIndentedPriorityLists can also be window- or buffer-local
- If the SetSyntax plugin is installed, set tw to 0 the cursor is over priority lists
- syn cluster vikiPriorityListGen
MD5 checksum: 059e1b085b663c1d2d498756fbba39f6
viki.zip 4.07 2014-04-02 7.0 Tom Link - Incoporate changes from pull request 12
- viki#InterVikiDest(): Use g:vikiIndex (again)
- viki#InterVikiDest: FIX check if i_index exists
- viki_viki#CompleteExtendedNameDef(): Use match() instead of =~ (work-around)
- iskeyword+=192-255
MD5 checksum: 64d81aebd79f239ea8be3a201e38cbef
viki.zip 4.06 2013-10-20 7.0 Tom Link - Help template
- FIX viki#DirListing(): correctly process file patterns
MD5 checksum: 0bdb3097b73a9855892d60124d0d581f
viki.zip 4.05 2013-10-18 7.0 Tom Link - Files region: replace listing only if it has changed
- Fix possible typo that breaks a default configuration on some systems - 'Please define g:vikiOpenUrlWith_http or g:vikiOpenUrlWith_ANY'
- In region header: allow space after <<
- Merge branch 'master' of https://github.com/NickHu/viki_vim
- addon-info
- tinykeymap: p, n: move to previous/next list item
- viki#GetIndent(): special handling of !!!|+++|???|### markers
- viki#GetIndent(): Fixed indentation for marker list items (???, !!!, +++, ###)
- Syntax: Accept tags (:word) and contacts (@name) anywhere in a priority list item
- Add accdb & mdb to g:vikiSpecialFiles
- g:viki#code_syntax (prepare for syntax highlighting in #Code regions)
- Don't call viki#UpdateHeadings() on InsertLeave events
- viki#UpdateHeadings(): Avoid superfluous checks
- FIX: Highlighting of symbols within strings and similar syntax groups
- viki#UpdateHeadings(): Restore the search register (@/)
- viki#OpenLink(): Use tlib#dir#NativeName() when opening directories
- Require tlib 1.05
- #Files: Files in the cd are inserted as [[basename.ext]!] not as [[basename.ext][basename.ext]!] when conceal is enabled
- #Files: glob can refer to an interviki
- #Files takes an optional "format" argument
- viki#Files: slightly improved file tree display; cache isdirectory() info
- NEW #Grep regions; <LL>vu and <LL>vU update #Files and #Grep regions; require tlib 1.06
- #Files, #Grep regions: separate multiple patterns with "|"
- Finally enable support for proper highlighting of #Code regions
- Use xdg-open with &
- g:viki#code_syntax: Always enable these filetypes for #Code; g:viki#code_syntax_map: map #Code syntax arg to vim filetypes
MD5 checksum: 8b08d2dd760471dd912511da3ad62818
viki.zip 4.04 2012-09-28 7.0 Tom Link - #Files: error when the region started/ended at last line
- Support for tinykeymaps plugin (move list item)
- Moved definitions of functions and global variables from ftplugin/viki.vim to autoload/viki.vim (fixes #5)
- Moved listitem_move to autoload/tinykeymap/map
- g:viki#cmd_no_fnameescape: Don't pre-process arguments for some file-viewer commands
- vikiPriorityLists syntax: Make date more explicit; allow dates in tags
- tinykeymap: listitem_move: Highlight the current line
- #Files: improved display of file properties; sort argument
MD5 checksum: e90c38e13fd9dc00edab65879dde2967
viki.zip 4.03 2012-08-27 7.0 Tom Link - #Files: Error when glob pattern started with [*?]
- #Files head: call iconv() if encodings differ
MD5 checksum: 44dbf4bf6d6a985e3b140781636f8fdc
viki.zip 4.02 2012-08-25 7.0 Tom Link - Define a viki#MinorMode(...) function again.
- Start a new fold at each heading (fixes #5)
- Add g:vikiNameSuffix to g:ft_ignore_pat (fixes #8)
- Conceal markup of extended links with names (fixes #7)
- Hide markup of extended links & use cchar (fixes #7)
- Improved #Files region: highligh as extended links; emulate tree
- Conceal extended links markup: allow modifiers
- If has('conceal') and extended markup is concealed #Files regions display only the filenames tail
- #Files: modfied display of deep file listings
- #Files: Make sure pattern is evaluated with respect to the buffer's directory
- #Files: Error when region begins on last line
MD5 checksum: 44dbf4bf6d6a985e3b140781636f8fdc
viki.zip 4.01 2012-04-20 7.0 Tom Link - Escape special character when loading "autoload/viki/enc_{&enc}.vim"
- Support for xdg
- Register 3gp as special file
- viki#SetAnchorMarks(): Hide errors
- :EditWrapper(): Fix slashes on windows
- g:vikiIndentedPriorityLists: if 0, allow priority lists not to be indented
- s:EditWrapper(): Correct filenames only if g:vikiDirSeparator == ''
- s:UpdateHeadings(): Use silent! when searching for headers
MD5 checksum: 918f9422bc3678ccd8c0eb71abad6f6b
viki.vba 4.00 2012-02-19 7.0 Tom Link - Use conceal to hide bold & typewriter markup and to replace some symbols
- concealed symbols: ARROWL, ARROWR
- Use conceal for ArrowTilde*, ARRORLR
- syntax: Properly highlight tskeleton placeholders in viki syntax
- Undo special treatment of TSkelPlaceHolder (this should be handled by tskeleton)
- viki#DirListing(): Don't insert an empty line if the listing is empty
- g:viki#autoupdate_files: Optionally update all Files regions when setting viki filetype
- viki#FilesUpdateAll(): call winrestview() only if the view has changed
- viki#Balloon(): Also show directory listings
- g:viki#use_texmath: if true, load syntax/texmath.vim
- g:vikiNameSuffix: Defaults to .viki
- g:vikiFamily defaults to viki
- g:vikiUseParentSuffix default to 1
- g:vikiHighlightMath defaults to 'latex'
- g:vikiSaveHistory defaults to 1 if &viminfo includes '!'
- g:vikiSpecialFilesExtra: Define extra file extensions in .vimrc
- g:vikiSpecialProtocolsExtra: Define extra special protocols in .vimrc
- If hidden is off and the buffer is dirty, query the user what to do
- Rename g:viki#autoupdate_files to g:vikiAutoupdateFiles
- Syntax: Enable highlighting of spell errors (thanks tlapicka)
- Cleanup (thanks tlapicka)
- If b:vikiTextstylesVer == 1: Syntax for vikiColor, vikiContinousColor, and vikiExample (proposed by tlapicka)
- docs: consistently use .viki as suffix.
- g:vikiFoldLevel: Set the foldlevel of viki files
- Use filetypedetect group for BufRead,BufNewFile events
- vikiUpperCharacters, vikiLowerCharacters: Improved definitions for utf8 & latin1
- Create ii text object by default.
MD5 checksum: 95f40e8f6c015161196620f5f6a7e5f1
viki.vba 3.20 2012-01-21 7.0 Tom Link - Use syn-conceal if available
- viki#SetAnchorMarks(): call QuickfixsignsSet('', ['marks']): specify "marks"
- Register docx, pptx, xlsx as special extensions
- viki_viki#SetupBuffer: Allow brackets in extended viki links
- compiler/deplate: Space was not escaped (thanks to E Peron)
- don't set fold* if vikiFoldMethodVersion<1
- .gitignore
- Don't check for has('vim_starting')
- Moved s:MatchList() to autoload/viki.vim
- New: viki#SelectListItem(), viki#ShiftListItem(), viki#MoveListItem()
- Use vimdedoc.rb to generate the help file from source
- Enable {fn} macros as hyperlinks
- VikiDefine: define interviki commands with command!
- Duplicate help tags (fix #2)
- vnoremap <buffer> <expr> ii for viki#SelectListItem('.')
- VikiFoldLevel(): Always check if vikiFolds == ""
- #Files region: allow optional "head" argument
- Configurable option for how to handle malformed viki names
- Make sure g:VIKIBACKREFS is a dictionary
- New VikiFoldLevel version 8: headings only, uses cached info about heading levels for speed-up
- Enable VikiFoldLevel() v8 to fold list items
- Enable VikiFoldLevel() v8 to inversely fold headings (H)
- Remove support for multiple folding methods (g:vikiFoldMethodVersion)
MD5 checksum: 18b8b9837ebb7451d56a90ccfc1de854
viki.vba 3.19 2010-11-11 7.0 Tom Link - Use tlib#balloon#Register() if available
- viki#Edit(): Switch to homepage only if we are in a viki-enabled buffer
- Run VimEnter command immediately if !has('vim_starting')
- Transcode balloon text (guess the file encoding based on the value of &fenc)
- Don't rely on g:vikiEnabled to be set when loading syntax/viki.vim
- Removed g:vikiEnabled variable (use g:viki#quit for checking when to quit)
- Act more graciously if g:vikiHomePage is empty
MD5 checksum: 64ebd14609764e98b91f1e233e121e32
Viki.vba 3.18 2010-03-31 7.0 Tom Link - g:vikiFoldMethodVersion defaults to 7 (a simpler method that relies on "=" though)
- Syntax for tasks lists
Viki.vba.gz 3.17 2010-03-09 7.0 Tom Link - FIX: g:vikiOpenUrlWith_ANY for Windows
- Moved definition of fold related variables to ftplugin/viki.vim
- viki_viki: Anchors in URLs can start with an upper case character
- viki#RestoreCursorPosition(): use winrestview() (reported by Marko Mahnic)
Viki.vba.gz 3.16 2010-02-20 7.0 Tom Link - CHANGE: Moved the definition of some variables from plugin/viki.vim to autoload/viki.vim (this could require some changes in after/* user configuration)
- viki#Balloon(), g:vikiBalloonLines: Display text from the target file in a balloon tooltip if &balloonexpr is set to viki#Balloon().
- Renamed VikiMode() to viki#Mode()
- Renamed viki#MakeName() to VikiMakeName()
- Renamed viki#Define() to VikiDefine()
- Removed g:vikiIndex (the index name has to be made explicit in VikiDefine()) in order to reduce startup time
- Set g:vikiMenuPrefix = "" in order to reduce startup time
- Registered eml as special file
- Define g:vikiSaveHistory in plugin/viki.vim (reported by Marko Mahnic)
- FIX: Handling of cursor positions (reported by Marko Mahnic)
Viki.vba.gz 3.13 2009-12-21 7.0 Tom Link - Extended viki links: decode %HH in local filenames (this may cause problems with file names containing an unencoded %)
- Require tlib 0.32
- viki#ExecExternal(): Escape !
- special file: xmind
- Make regexp for inexistent links case sensitive
- viki#HomePage()
- viki#GetInterVikis()
Viki.vba.gz 3.11 2009-03-20 7.0 Tom Link - Default values for g:vikiOpenUrlWith_ANY and g:vikiOpenFileWith_ANY on Macs (thanks mboniou)
- Correct default value for g:vikiOpenFileWith_ANY @ Windows
- Disabled regions' #END-syntax
- Don't define interviki commands if a command of the same name already exists.
Viki.vba.gz 3.10 2008-08-31 7.0 Tom Link From this version on, viki requires vim 7.2's shellescape() and fnameescape() functions.

- VikiOpenSpecialFile() uses fnameescape()
- FIX: automatically set marks (#m? type of anchors)
- Anchor regexp can be configured via g:vikiAnchorNameRx
Viki.vba.gz 3.8 2008-06-21 7.0 Tom Link - FIX: viki#MarkInexistentInElement() for pre 7.0.009 vim (thanks to M Brandmeyer)
- FIX: Make sure tlib is loaded even if it is installed in a different rtp-directory (thanks to M Brandmeyer)
- Added dia to g:vikiSpecialFiles
- FIX: Scrambled window when opening an url from vim (thanks A Moell)
Viki.vba.gz 3.7 2008-01-15 7.0 Tom Link - In a file that doesn't contain headings, return 0 instead of '=' as
default value if g:vikiFoldMethodVersion == 4.
- FIX: "=" in if expressions in certain versions of VikiFoldLevel()
Viki.vba.gz 3.6 2008-01-14 7.0 Tom Link - Forgot to define a default value for g:viki_intervikis.
Viki.vba.gz 3.5 2008-01-13 7.0 Tom Link - Don't try to append an empty anchor to an url (Thanks RM Schmid).
- New variable g:viki_interviki to define intervikis in ~/.vimrc without loading autoload/viki.vim
- Minor updates to the help file.
Viki.vba.gz 3.4 2008-01-05 7.0 Tom Link - Promote anchors to VikiOpenSpecialProtocol().
- viki_viki: Enabled #INCLUDE
- Put the poor-man's math highlighting into syntax/texmath.vim so that
it can be included from other syntax files.
- Cascade menu of intervikis
- FIX: don't register viki names as known/unknown more than once
Viki.vba.gz 3.3 2007-10-12 7.0 Tom Link - Use hookcursormoved >= 0.3
- Backslash-save command-line completion
- Mark unknown intervikis as inexistent
Viki.vba.gz 3.2 2007-10-05 7.0 Tom Link - viki_viki.vim: Wrong value for b:vikiCmdDestIdx and
- Moved :VikiMinorModeViki, :VikiMinorModeLaTeX, and
:VikiMinorModeAnyWord to plugin/viki.vim
Viki.vba.gz 3.1 2007-10-04 7.0 Tom Link - Slightly improved performance of s:MarkInexistent() and
Viki.vba.gz 3.0 2007-10-04 7.0 Tom Link - VikiFolds() rev4: The text body is set to max heading level + 1 in
order to avoid lookups and thus speed-up the code.
- g:vikiPromote: Don't set viki minor modes for any files opened via
viki, unless this variable is set
- Added support for 'l' vikiFolds to the default fold expression.
- Added support for the {ref} macro (the referenced label has to be in
the same file though)
- INCOMPATIBLE CHANGE: Moved most function to autoload/viki.vim; moved
support for deplate/viki markup to vikiDeplate.vim.
- The argument of the VikiMode() has changed. (But this function
shouldn't be used anyway.)
- With g:vikiFoldMethodVersion=4 (the default), the text body is at the
level of the heading. This uses "=" for the body, which can be a problem
on slow machines. With g:vikiFoldMethodVersion=5, the body is below the
lowest heading, which can cause other problem.
- :VikiEditInVim ... edit special files in vim
- Set the default value for g:vikiCacheInexistent in order not to
surprise users with the abundance of cached data.
- Require tlib 0.15
- Use tlib#progressbar
- Improved (poor-man's) tex/math syntax highlighting
- Removed norm! commands form s:MarkInexistent().
- FIX: Wrong value for b:vikiSimpleNameAnchorIdx when simple viki names
weren't disabled.
- Optionally use hookcursormoved (vimscript #2037) for improved detection of hyperlinks to
inexistent sources. If this plugin causes difficulties, please tell me
and temporarily remove it.
- Use matchlist() instead of substitute(), which could speed things up a
Viki.vba.gz 2.4 2007-08-26 7.0 Tom Link - The shortcuts automatically defined by VikiDefine may now take an
optional argument (the file on an interviki) (:WIKI thus is the same as
:VikiEdit WIKI:: and supports the same command-line completion)
- Read ".vikiWords" in parent directories (top-down);
g:vikiHyperWordsFiles: Changed order (read global words first)
- In .vikiWords: destination can be an interviki name (if not, it is
assumed to be a relative filename); if destination is -, the word will
be removed from the jump table; blanks in "hyperwords" will be replaced
with \s\+ in the regular expression.
- New :VikiBrowse command.
- FIX: wrong value for &comments
- FIX: need to reset filetype on color-scheme change (because of viki's
own styles)
- FIX: Caching of inexistent viki names.
- In minor mode, don't map keys that trigger a check for inexistent
- Don't highlight textstyles (emphasized, typewriter) in comments.
- Removed configuration by: VikiInexistentColor(),
g:vikiInexistentColor, VikiHyperLinkColor(), g:vikiHyperLinkColor; use
g:viki_highlight_hyperlink_light, g:viki_highlight_hyperlink_dark,
g:viki_highlight_inexistent_light, g:viki_highlight_inexistent_dark
instead. By default, links are no longer made bold.
- The new default fold expression (g:vikiFoldMethodVersion=4) support
only hH folds (normal and inverse headings based; see g:vikiFolds).
Previous fold methods can be used by setting g:vikiFoldMethodVersion.
Viki.vba.gz 2.3 2007-07-17 7.0 Tom Link - Require tlib >= 0.9
- FIX: Use absolute file names when editing a local file (avoid problem
when opening a file in a different window with a different CWD).
- New folding routine. Use the old folding method by setting
g:vikiFoldMethodVersion to 1.
Viki.vba.gz 2.2 2007-06-24 7.0 Tom Link - Re-Enabled the previously (2.1) made and then disabled change concerning re-entering a viki buffer
- Don't try to use cached values for buffers that have no file attached yet (thanks to Erik Olsson)
- Require tlib >= 0.8
Viki.vba.gz 2.1 2007-06-24 7.0 Tom Link - Cache inexistent patterns (experimental)
- s:EditWrapper: Don't escape ' '.
- FIX: VikiMode(): Error message about b:did_ftplugin not being defined
- FIX: Check if g:netrw_browsex_viewer is defined (thanks to Erik Olsson for pointing this and some other problems out)
- ftplugin/viki.vim: FIX: Problem with heading in the last line. Disabled vikiFolds type 's'
- Always check the current line for inexistent links when re-entering a viki buffer
Viki.vba.gz 2.0 2007-05-17 7.0 Tom Link - Got rid of multvals & genutils dependencies (use vim7 lists instead)
- New dependency: tlib.vim (vimscript #1863)
- INCOMPATIBLE CHANGE: The format of g:vikiMapFunctionality has changed.
- INCOMPATIBLE CHANGE: g:vikiSpecialFiles is now a list!
- Viki now has a special #Files region that can be automatically
updated. This way we can start thinking about using viki for as
project/file management tool. This is for vim only and not supported yet
in deplate. New related maps & commands: :VikiFilesUpdate (<LL>vu),
:VikiFilesUpdateAll (<LL>vU), :VikiFilesCmd, :VikiFilesCall,
:VikiFilesExec (<LL>vx), and VikiFileExec.
- VikiGoParent() (mapped to <LL>v<bs> or <LL>v<up>): If b:vikiParent is
defined, open this viki name, otherwise follow the backlink.
- New :VikiEditTab command.
- Map <LL>vt to open in tab.
- Map <LL>v<left> to open go back.
- Keys listed in g:vikiMapQParaKeys are now mapped to
s:VikiMarkInexistentInParagraphVisible() which checks only the visible
area and thus avoids scrolling.
- Highlight lines containing blanks (which vim doesn't treat as
paragraph separators)
- When following a link, check if it is an special viki name before
assuming it's a simple one.
- Map [[, ]], [], ][
- If an interviki has an index file, a viki name like [[INTERVIKI::]]
will now open the index file. In order to browse the directory, use
[[INTERVIKI::.]]. If no index file is defined, the directory will be
opened either way.
- Set the default value of g:vikiFeedbackMin to &lines.
- Added ws as special files to be opened with :WsOpen if existent.
- Replaced most occurences of <SID> with s:
- Use tlib#InputList() for selecting back references.
- g:vikiOpenFileWith_ANY now uses g:netrw_browsex_viewer by default.
- CHANGE: g:vikiSaveHistory: We now rely on viminfo's "!" option to save
- FIX: VikiEdit now works properly with protocols that are to be opened
with an external viewer
- FIX: VikiEdit completion, which is more usable now
viki.zip 1.13 2007-03-11 7.0 Tom Link - Intervikis can now be defined as function ('*Function("%s")', this
breaks conversion via deplate) or format string ('%/foo/%s/bar', not yet
supported by deplate)
- Task lists take optional tags, eg #A [tag] foo; they may also be
tagged with the letters G-Z, which are highlighted as general task (not
supported by deplate)
- Automatically set marks for labels prefixed with "m" (eg #ma -> 'a,
#mB -> 'B)
- Two new g:vikiNameTypes: w = (Hyper)Words, f = File names in cwd as
hyperwords (experimental, not implemented in deplate)
- In extended viki names: add the suffix only if the destination hasn't
got one
- A buffer local b:vikiOpenInWindow allows links to be redirected to a
certain window (ie, if b:vikiOpenInWindow = 2, pressing <c-cr> behaves
like <LocalLeader>v2); this is useful if you use some kind of
directory/catalog metafile; possible values: absolute number, +/-
relative number, "last"
- Switched back to old regexp for simple names in order to avoid
highlighting of names like LaTeX
- VikiEdit opens the homepage only if b:vikiFamily is set
- Map <LocalLeader>vF to <LocalLeader>vn<LocalLeader>vf
- Improved syntax for (nested) macros
- Set &suffixesadd so that you can use vim's own gf in some situations
- SYNTAX: Allow empty lines as region delimiters (deplate 0.8.1)
- FIX: simple viki names with anchors where not recognised
- FIX: don't mark simple (inter)viki names as inexistent that expand to
links matching g:vikiSpecialProtocols
- FIX: file names containing %
- FIX: added a patch (VikiMarkInexistentInElement) by Kevin Kleinfelter
for compatibility with an unpatched vim70 (untested)
- FIX: disabling simple names (s) also properly disables the name types:
Viki.zip 1.12 2006-09-23 6.0 Tom Link - Define some keywords in syntax file (useful for omnicompletion)
- Define :VIKI command as an alias for :VikiHome
- FIX: Problem with names containing spaces
- FIX: Extended names with suffix & interviki
- FIX: Indentation of priority lists.
- FIX: VikiDefine created wrong (old-fashioned) VikiEdit commands under
certain conditions.
- FIX: Directories in extended viki names + interviki names were marked
as inexistent
- FIX: Syntax highlighting of regions or commands the headline of which
spanned several lines
- Added ppt to g:vikiSpecialFiles.
Viki.zip 1.11 2006-04-20 6.0 Tom Link - Enable [[INTERVIKI::]]
- VikiEdit also creates commands for intervikis that have no index
- Respect "!" and "*" modifiers in extended viki links
- New g:vikiMapFunctionalityMinor variable
- New g:vikiMapLeader variable
- CHANGE: Don't map VikiMarkInexistent in minor mode (see
- CHANGE: new attributes for g:vikiMapFunctionality: c, m[fb], i, I
- SYNTAX: cterm support for todo lists, emphasize
- FIX: Erroneous cursor movement
- FIX: VikiEdit didn't check if a file was already opened, which caused
a file to be opened in two buffers under certain conditions
- FIX: Error in <SID>MapMarkInexistent()
- FIX: VikiEdit: Non-viki names were not quoted
- FIX: Use fnamemodify() to expand tildes in filenames
- FIX: Inexistent quoted viki names with an interviki prefix weren't
properly highlighted
- FIX: Minor problem with suffixes & extended viki names
- FIX: Use keepjumps
- FIX: Catch E325
- FIX: Don't catch errors in <SID>EditWrapper() if the command matches
g:vikiNoWrapper (due to possible compatibility problems eg with :Explore
in vim 6.4)
- OBSOLETE: Negative arguments to VikiMode or VikiMinorMode are obsolete
(or they became the default to be precise)
- OBSOLETE: g:vikiMapMouse
- REMOVED: mapping to <LocalLeader><c-cr>
- DEPRECATED: VikiModeMaybe
Viki.zip 1.10 2006-03-15 6.0 Tom Link - Pseudo anchors (not supported by deplate): jump to a line number, e.g. [[file#l=10]] or [[file#line=10]]; find an regexp, e.g. [[file#rx=\\d]]; execute some vim code, e.g. [[file#vim=call Whatever()]]; you can also define your own handlers: VikiAnchor_{type}(arg)
- g:vikiFolds: new 'b' flag: the body has a higher level than all
headings (gives you some kind of outliner experience; the default value
for g:vikiFolds was changed to 'h')
- FIX: VikiFindAnchor didn't work properly in some situations
- FIX: Escape blanks when following a link (this could cause problems in
some situations, not always)
- FIX: Don't try to mark inexistent links when pressing enter if the current
line is empty.
- FIX: Restore vertical cursor position in window after looking for
inexistent links.
- FIX: Backslashes got lost in some situations.
Viki.zip 1.9 2006-02-22 6.0 Tom Link - Register mp3, ogg and some other multimedia related suffixes as
special files
- Add a menu of Intervikis if g:vikiMenuPrefix is != ''
- g:vikiMapKeys can contain "\n" and " " (supplement g:vikiMapKeys with
the variables g:vikiMapQParaKeys and g:vikiMapBeforeKeys)
- FIX: <SID>IsSupportedType
- FIX: Only the first inexistent link in a line was highlighted
- FIX: Set &buflisted when editing an existing buffer
- FIX: VikiDefine: Non-viki index names weren't quoted
- FIX: In "minor mode", vikiFamily wasn't correctly set in some
situations; other problems related to b:vikiFamily
- FIX: AnyWord works again
- Removed: VikiMinorModeMaybe
- VikiDefine now takes an optional fourth argument (an index file;
default=Index) and automatically creates a vim command with the name of
the interviki that opens this index file
Viki.zip 1.8 2005-11-23 6.0 Tom Link - Fold lists too (see also g:vikiFolds)
- Allow interviki names in extended viki names (e.g.,
[[WIKI::WikiName][Display Name]])
- Renamed <SID>GetSimpleRx4SimpleWikiName() to
VikiGetSimpleRx4SimpleWikiName() (required in some occasions; increased the
version number so that we can check against it)
- Fix: Problem with urls/fnames containing '!' and other special characters
(which now have to be escaped by the handler; so if you defined a custom
handler, e.g. g:vikiOpenFileWith_ANY, please adapt its definition)
- Fix: VikiEdit! opens the homepage only when b:vikiEnabled is defined in the
current buffer (we assume that for the homepage the global configuration is in
- Fix: Problem when g:vikiMarkInexistent was false/0
- Fix: Removed \c from the regular expression for extended names, which caused
FindNext to malfunction and caused a serious slowdown when matching of
bad/unknown links
- Fix: Re-set viki minor mode after entering a buffer
- The state argument in Viki(Minor)Mode is now mostly ignored
- Fix: A simple name's anchor was ignored
Viki.zip 1.7 2005-10-31 6.0 Tom Link - g:vikiHomePage: If you call VikiEdit! (with "bang"), the homepage is opened
first so that its customizations are in effect. Also, if you call :VikiHome or
:VikiEdit *, the homepage is opened.
- basic highlighting & indentation of emacs-planner style task lists (sort of)
- command line completion for :VikiEdit
- new command/function VikiDefine for defining intervikis
- added <LocalLeader>ve map for :VikiEdit
- fixed problem in VikiEdit (when the cursor was on a valid viki link, the
text argument was ignored)
- fixed opening special files/urls in a designated window
- fixed highlighting of comments
- vikiLowerCharacters and vikiUpperCharacters can be buffer local
- fixed problem when an url contained an ampersand
- fixed error message when the &hidden option wasn't set (see g:vikiHide)
Viki.zip 1.6.3 2005-10-01 6.0 Tom Link - file type URLs (file://) are now treated like special files
- indent: if g:vikiIndentDesc is '::', align a definition's description to the
first non-blank position after the '::' separator
- b:vikiDisableType
- Put AnyWord-related stuff into a file of its own.
- indentation for notices (!!!, ??? etc.)
- When creating a new file by following a link, the desired window number was ignored
- (VikiOpenSpecialFile) Escape blanks in the filename
- Set &include and &define (ftplugin)
- Set g:vikiFolds to '' to avoid using Headings for folds (which may cause a
major slowdown on slower machines)
- renamed <SID>DecodeFileUrl(dest) to VikiDecomposeUrl()
- fixed problem with table highlighting
Viki.zip 1.6.1 2005-02-05 6.0 Tom Link - fixed indentation bug
- removed forgotten debug message
Viki.zip 1.6 2005-01-25 6.0 Tom Link - new command: VikiEdit NAME ... allows editing of arbitrary viki names (also understands extended and interviki formats)
- support for some regions/commands/macros: #INC/#INCLUDE, #IMG, #Img (requires an id to be defined), {img}
- b:vikiInverseFold: Inverse folding of subsections
- g:vikiFreeMarker: Search for the plain anchor text if no explicitly marked anchor was found.
- setting the b:vikiNoSimpleNames to true prevents viki from recognizing simple viki names
- made some script local functions global so that it should be easier to integrate viki with other plugins
- fixed moving cursor on <SID>VikiMarkInexistent()
- fixed typo: b:VikiEnabled, which should be b:vikiEnabled (thanks to Ned Konz)
Viki.zip 1.5.2 2004-10-26 6.0 Tom Link - changed default markup of textstyles: __emphasize__, ''code''; the
previous markup can be re-enabled by setting g:vikiTextstylesVer to 1)
- fixed problem with VikiQuote
- on follow-link, check for yet unsaved buffers too
Viki.zip 1.5.1 2004-09-27 6.0 Tom Link - depends on multvals >= 3.8.0
- new viki family "AnyWord" (see |viki-any-word|), which turns any word into a
potential viki link
- <LocalLeader>vq, VikiQuote: mark selected text as a quoted viki name
(requires imaps.vim, vimscript #244 or vimscript #475)
- check for null links when pressing <space>, <cr>, ], and some other keys
(defined in g:vikiMapKeys)
- a global suffix for viki files can be defined by g:vikiNameSuffix
- fix syntax problem when checking for links to inexistent files
Viki.zip 1.5 2004-09-09 6.0 Tom Link - different highlighting for links to existing and non-existing files
- added key bindings <LL>vs (split) and <LL>vv (split vertically)
- added key bindings <LL>v1 through to <LL>v4: open the viki link
under cursor in the windows 1 to 4
- handle variables g:vikiSplit, b:vikiSplit
- don't indent regions
- regions can be indented
- When a file doesn't exist, ESC or "n" aborts creation
Viki.zip 1.4 2004-08-20 6.0 Tom Link - fixed problem with table highlighting that could cause vim to hang
- it is now possible to selectivly disable simple or quoted viki names
- indent plugin
Viki.zip 1.3.1 2004-08-11 6.0 Tom Link - fixed bug when VikiGoBack was called without a definitiv back-reference (e.g. via <LocalLeader>vb)
- fixed encoding problems with latin-1 characters
Viki.zip 1.3 2004-08-06 6.0 Tom Link - basic ctags support (see |viki-tags|)
- mini-ftplugin for bibtex files (use record labels as anchors)
- added mapping <LocalLeader><c-cr>: follow link in other window (if any)
- disabled the highlighting of italic char styles (i.e., /text/)
- the ftplugin doesn't set deplate as the compiler; renamed the compiler plugin to deplate
- fix: VikiFoldLevel()
Viki.zip 1.2.103 2004-05-04 6.0 Tom Link - syntax file: fix nested regexp problem
- deplate: conversion to html/latex; download from
- made syntax a little bit more restrictive (*WORD* now matches /\*\w+\*/ instead of /\*\S+\*/)
- interviki definitions can now be buffer local variables, too
- fixed <SID>DecodeFileUrl(dest)
- some kind of compiler plugin (uses deplate)
- removed g/b:vikiMarkupEndsWithNewline variable
- saved all files in unix format (thanks to Grant Bowman for the hint)
- removed international characters from g:vikiLowerCharacters and
g:vikiUpperCharacters because of difficulties with different encodings (thanks to Grant Bowman for pointing out this problem); non-english-speaking users have to set these variables in their vimrc file
- g:vikiExplorer (for viewing directories)
- preliminary support for "soft" anchors (b:vikiAnchorRx)
- improved VikiOpenSpecialProtocol(url); g:vikiOpenUrlWith_{PROTOCOL},
- improved VikiOpenSpecialFile(file); g:vikiOpenFileWith_{SUFFIX},
- anchors may contain upper characters (but must begin with a lower char)
- some support for Mozilla ThunderBird mailbox-URLs (this requires spaces to be encoded as %20)
- changed g:vikiDefSep to ''
Viki.zip 1.0.5 2004-02-05 6.0 Tom Link Bug fixes. This version should work now with g:vikiUseParentSuffix set to 0, which, well, is the default value.
Viki.zip 1.0 2004-02-01 6.0 Tom Link - "Syntax" changes
- Extended names: For compatibility reasons with other wikis, the anchor is now in the reference part.
- For compatibility reasons with other wikis, prepending an anchor with b:commentStart is optional.
- g:vikiUseParentSuffix
- Renamed variables & functions (basically s/Wiki/Viki/g)
- added a ftplugin stub, moved the description to a help file
- "[--]" is reference to current file
- Folding support (at section level)
- "Intervikis"
- More highlighting
- g:vikiFamily, b:vikiFamily
- VikiGoBack() (experimental option: persistent history data)
- rudimentary LaTeX support ("soft" viki names)
- removed call to "simplify()"
Viki.vim 380 2003-12-19 6.0 Tom Link Initial upload
ip used for rating:

If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to the maillist. Help Bram help Uganda.
SourceForge.net Logo