Commit Graph

432 Commits

Author SHA1 Message Date
Anmol Sethi
42e9606c23 man.vim: rewrite
- Smart autocomplete. It's automatically sorted, filtered for duplicates
  and even formats the candidates based on what is needed. For example,
  `:Man 1 printf<TAB>` will show the pages that are in section 1m as
  'page(sect)' to let you know they are in a more specific section.
- Instead of trying to unset $MANPAGER we use the -P flag to set the
  pager to cat
- Always use the section arg '-s', it makes the code much simpler
  (see comment in s:man-args).
- A manpage name starting with '-' is invalid. It's fine for sections
  because of the use of '-s'.

- The tagstack is an actual stack now, makes it much simpler.
- By using v:count and v:count1, the plugin can explicitly check whether
  the user set a count, instead of relying on a default value (0) that
  is actually a real manpage section.
- Extraction of a manpage reference is much more simple. No giant long
  complicated regexes. Now, the plugin lets `man` handle the actual
  validation. We merely extract the section and page. Syntax regexes are
  a bit more specific though to prevent highlighting everything.
- Multilingual support in the syntax file. Removed the cruft that was only
  relevent to vim. Also simplified and improved many of the regexes.

- Using shellescape when sending the page and sect as arguments
- In general, the code flow is much more obvious.
- man#get_page has been split up into smaller functions with explicit
  responsibilties
- ':help' behavior in opening splits and manpages
- Comments explaining anything that needs explaining and isn't
  immediately obvious.
- If a manpage has already been loaded but if it were to reloaded at the
  current width which is the same as the width at which it was loaded at
  previously, it is not reloaded.

- Use substitute to remove the backspaced instead of `col -b`, as the
  latter doesn't work with other languages.
- Open paths to manpages
- It uses cWORD instead of cword to get the manpage under the cursor, this
  helps with files that do not have (,) in iskeyword. It also means the
  plugin does not set iskeyword locally anymore.
- <Plug>(Man) mapping for easy remapping
- Switched to single quotes wherever possible.
- Updated docs in $VIMRUNTIME/doc/filetype.txt (still need to update
  user-manual)

- Always call tolower on section name. See comment in
  s:extract_page_and_sect_fpage
- Formatting/consistency cleanup
- Automatically map q to ':q<CR>' when invoked as $MANPAGER
- It also fully supports being used as $MANPAGER. Setting the name and
  stuff automatically.
- Split up the setlocals into multiple lines for easier readability
- Better detection of errors by redirecting stderr to /dev/null. If an
  error occured, stdout will be empty.

- Functions return [sect, page] not [page, sect]. Makes more sense with
  how man takes the arguments as sect and then page.
- Pretty prints errors on a single line.
- If no section is given, automatically finds the correct section for
  the buffer name. It also gets the correct page. See the comment in
  s:get_page
- If $MANWIDTH is not set, do not assign directly to $MANWIDTH because
  then $MANWIDTH will always stay set to the same value as we only use
  winwidth(0) when the global $MANWIDTH is empty. Instead we set it
  locally for the command.
- Maintainer notes on all files.
2016-08-04 22:46:53 -04:00
James McCoy
ea18b4a60f vim-patch:77cdfd1
Updated runtime files.

77cdfd1038

Ignore changes to:
* doc/channel.txt, doc/eval.txt: Channel related docs
* doc/options.txt: GUI related docs
* doc/tags: Generated at build time
* doc/todo.txt: Irrelevant for Neovim
2016-07-08 01:43:36 -04:00
James McCoy
28300a1293 vim-patch:f391327
Updated runtime files.

f391327adb

Ignore changes to
* doc/todo.txt: Irrelevant for Neovim
* doc/channel.txt: Channel docs
* doc/tags, syntax/vim.vim: Generated at build time
2016-07-08 01:38:21 -04:00
James McCoy
d693a22de3 vim-patch:acb4f22
Updated runtime files.

acb4f221c7

Ignored changes to:
* doc/eval.txt since alloc_fail isn't relevant for neovim
* doc/index.txt for unmerge :smile command
* doc/tags, syntax/vim.vim since they're generated at build time
* doc/todo.txt
2016-05-25 21:05:01 -04:00
KillTheMule
7b29dfc43a vim-patch:256972a
Updated runtime files.

256972a984

Missing files in runtime/doc: todo.txt, tags. Patch to runtime/doc/syntax.txt
was applied manually in part, for no discernible reason.
2016-05-03 21:22:45 +02:00
KillTheMule
9d1c52239a vim-patch:d042dc8
Update runtime files.

d042dc825c

Missing in runtime/doc: hangulin.txt, tags, todo.txt. The changes to options.txt
do not apply for nvim. man.vim is very different in nvim, some changes applied
manually, others discarded.
2016-05-03 21:13:41 +02:00
KillTheMule
c535cc7dde vim-patch:d7464be
Updated runtime files.

d7464be974

Applied cleanly except for runtime/docs/todo.txt and runtime/docs/tags.
2016-05-03 20:59:26 +02:00
David Barnett
43fe335eda vim-patch:60cce2f
Update runtime files.

60cce2fb73
2016-04-18 21:50:37 -07:00
David Barnett
cf32ca5137 vim-patch:f2571c
Updated runtime files.

f2571c61d5
2016-04-11 09:23:31 -07:00
Noah Frederick
9fb9d2929f man.vim: fixes to argument handling and parsing
- Define a collection of legal characters when parsing page and section
  in `s:parse_page_and_section()` instead of relying on 'iskeyword',
  which is unreliable.
- Allow non-numeric section names (e.g., `3c`).
- Simplify argument handling in `man#get_page()` to accommodate
  non-numeric section names.

Fixes #4165.
2016-03-05 09:12:54 -05:00
Nicolas Dumazet
71980676f0 vim-patch:5a5f459
Original commit: https://github.com/vim/vim/commit/5a5f459

commit 5a5f45917dbf542cb00617fa5ef70a14898495dd
Author: Bram Moolenaar <Bram@vim.org>
Date:   Mon Apr 13 12:43:06 2015 +0200

    Updated runtime files.

(1) Merged manually vimrc_example.vim
(2) Left out README.txt, doc/tags, doc/todo.txt, tutor/tutor.de,
tutor.de.utf-8, ga.po
2016-01-27 14:22:48 +01:00
Justin Gassner
cf0ff1dd0f vim-patch:2b8388b
Updated runtime files.

2b8388bd01
2016-01-14 17:58:15 +01:00
Justin M. Keyes
1f27ccb77f vim-patch:83caecf
Updated runtime files.

83caecf314
2015-12-17 04:52:20 -05:00
Felipe Morales
538a57cfd8 Merge pull request #3675 from fmoralesc/update-vim-tutor
tutor: Update vim-tutor to 0.2.1
2015-11-28 11:23:22 +01:00
Felipe Morales
0af56a0ec7 tutor: Update vim-tutor to 0.2.1
Also, some tweaks based on input by @fdinoff on gitter.
2015-11-28 10:59:21 +01:00
Felipe Morales
321db59ca1 Merge pull request #3270 from ZyX-I/shada-support
Add plugin for editing ShaDa files
2015-11-23 00:27:18 +01:00
Marco Hinz
975a610233 vim-patch:f2571c6
Update runtime files.

References #3625.
2015-11-08 03:39:07 +01:00
ZyX
9037a180de runtime: Add [ft]plugin/shada.vim files that automatically open .shada 2015-11-01 21:27:28 +03:00
rosston
d69f3bbb0d vim-patch:8feef4f #3444
Update runtime files.

8feef4ff62
2015-10-11 18:07:58 -04:00
Felipe Morales
5ec5e9ae43 tutor-mode: update plugin 2015-09-27 15:17:20 +02:00
Justin M. Keyes
399864dc28 man.vim: Prevent sourcing in startup.
It is common practice for Vim users to
  :runtime! ftplugin/man.vim
in order to get the :Man command. That will cause weird settings for
non-man files.
2015-09-25 22:04:45 -04:00
Justin M. Keyes
3c32ae2ff3 man.vim: window-local options
Set window-local options only on a newly-created "man" tab or if we're
already in one.
2015-09-23 00:06:27 -04:00
Justin M. Keyes
45724e2c41 man.vim: man#get_page(): parse page and section.
- Eliminate man#pre_get_page().
- Temporarily remove () from 'iskeyword' to avoid spurious \k match.
2015-09-23 00:06:26 -04:00
Justin M. Keyes
4fb75d61c2 man.vim: convert ftplugin to actual plugin.
- do not create leader maps
- :norm! instead of :norm
- :keepjumps during layout
- use blackhole reg to avoid polluting unnamed reg
- format buffer name as "man://foo(2)"
- simulate behavior of `man`
    - buffer-local mapping of q to quit
    - open in new tab instead of new window
    - set 'nolist'
    - set tabstop=8
2015-09-23 00:05:33 -04:00
Justin M. Keyes
998d0ffc09 'keywordprg': support ex commands
- new feature: if the first character of 'keywordprg' is ":", the
  command is invoked as a Vim ex-command prefixed with [count].
- change default 'keywordprg' to :Man
2015-09-23 00:05:33 -04:00
Felipe Morales
4fc1ab779d runtime: Include vim-tutor-mode
vim-tutor-mode provides a mechanism to write and read interactive
tutorials in vim. It's aim is to replace the venerable vimtutor with a
more modern system.

The plugin's development is maintained at https://github.com/fmoralesc
/vim-tutor-mode

Closes #2351.
2015-08-15 15:25:30 -03:00
Florian Walch
e211362a6d vim-patch:c5d53d4 #2695
Update runtime files.

https://code.google.com/p/vim/source/detail?r=c5d53d4c3e2e24e23fc4272bf91be3c031ccb598
2015-05-19 12:31:44 -04:00
Florian Walch
2624d66045 vim-patch:37c2403
Update runtime files.

https://code.google.com/p/vim/source/detail?r=37c24033b2601a4a0953970a0ec85d5537101915
2015-01-04 20:28:08 +01:00
Florian Walch
b332aebe25 vim-patch:6921742
Update runtime files.

https://code.google.com/p/vim/source/detail?r=6921742f396a4abd21d7f69843b804ca0b96059c
2015-01-04 19:42:30 +01:00
Florian Walch
272f1064c7 vim-patch:1e8ebf8
Updated runtime files.

https://code.google.com/p/vim/source/detail?r=1e8ebf870720e7b671f98f22d653009826304c4f
2014-12-30 13:51:39 +01:00
Michael Reed
6f50fd6c35 Remove VMS remnants 2014-12-19 15:28:49 -05:00
Justin M. Keyes
a98a6996c2 re-integrate runtime/ vim-patch:0 #938
Vim runtime files based on 7.4.384 / hg changeset 7090d7f160f7

Excluding:
  Amiga icons (*.info, icons/)
  doc/hangulin.txt
  tutor/
  spell/
  lang/ (only used for menu translations)
  macros/maze/, macros/hanoi/, macros/life/, macros/urm/
      These were used to test vi compatibility.
  termcap
      "Demonstration of a termcap file (for the Amiga and Archimedes)"

Helped-by: Rich Wareham <rjw57@cam.ac.uk>
Helped-by: John <john.schmidt.h@gmail.com>
Helped-by: Yann <yann@yann-salaun.com>
Helped-by: Christophe Badoit <c.badoit@lesiteimmo.com>
Helped-by: drasill <github@tof2k.com>
Helped-by: Tae Sandoval Murgan <taecilla@gmail.com>
Helped-by: Lowe Thiderman <lowe.thiderman@gmail.com>
2014-07-29 02:12:31 +00:00