aboutsummaryrefslogtreecommitdiff
path: root/runtime/autoload/man.vim
Commit message (Collapse)AuthorAge
* man.vim: Handle `man` errors when looking for man-pathsRob Pilling2020-02-29
| | | | | | | | Fallback to simply globbing the tag we're given. This matches the original behaviour of `man.vim`, prior to c6afad78d39aa. fixes #11794 closes #11918
* man.vim: workaround for 'cscopetag' #11679Rob Pilling2020-01-06
| | | | | | | | | | | | | The old `:Man` implementation would take either the word under the cursor, or the argument passed in, and load that as a man page. Since we now use 'tagfunc' and look for all relevant man-pages, if your system has several (i.e. same name, different sections), we return several, giving the user an option. This works for most tag commands except `:tjump`, which will fail if there's multiple tags to choose from. This just happens to be what the cscope code uses (it actually attempts to prompt the user, but this fails).
* man.vim: Improve ft=man 'iskeyword' #11457Rob Pilling2019-11-27
| | | | | | | | | | | | | | | | | This addresses a minor quality problem with the recent `'tagfunc'` changes for `man.vim` (see [link]). Currently, with the cursor on a parenthese, hitting `K` will jump us to the man page of the next mentioned entry, instead of the one to which the parenthese (or section number) belongs. ``` pcrepattern(3), terminfo(5), glob(7), regex(7). e.g. ^ e.g. ^ ``` Adding the parentheses to `'iskeyword'` means we correctly handle these cases too. [link]: https://github.com/neovim/neovim/pull/11280#discussion_r348342357
* Merge #11451 'man.vim: Fixes'Justin M. Keyes2019-11-24
|\
| * man.vim: Hard wrap by defaultAnmol Sethi2019-11-24
| | | | | | | | Closes #11436
* | man.vim: Ensure 'modifiable' in man#init_pager #11450Anmol Sethi2019-11-24
|/
* Merge #11280 "man.vim: implement 'tagfunc'"Justin M. Keyes2019-11-20
|\
| * Sort man pages by relevance during goto_tag()Rob Pilling2019-11-13
| |
| * Don't attempt swapfiles for man pagesRob Pilling2019-11-13
| | | | | | | | | | This is because we now use :tag to open a man page, which attempts to open a swap file for a path under man://...
| * Remove eventignore - :Man now uses :tag to populate the pageRob Pilling2019-11-13
| |
| * man.vim: remove push_tag and simplify man#open_pageRob Pilling2019-10-29
| |
| * man.vim: parse the section from the tagRob Pilling2019-10-24
| |
| * man.vim: `:Man` preserves the tag stackRob Pilling2019-10-24
| |
| * man.vim: use 'tagfunc' instead of remappingRob Pilling2019-10-24
| | | | | | | | man#pop_tag() is also no longer used
| * man.vim: pull out s:get_paths()Rob Pilling2019-10-24
| |
* | man.vim: never switch to non-man window #11286Joshua Rubin2019-10-25
|/ | | | | | | | | | | In order to find if there was already an open man page, the :Man command would cycle through each window to see if &ft=='man'. This triggers autocmds, e.g. BufEnter, unnecessarily and can have unexpected side-effects. Change the logic to check each window's ft without switching to it unless it is actually a man window. Signed-off-by: Joshua Rubin <me@jawa.dev>
* man.vim: g:man_hardwrap #9633Curtis McEnroe2019-02-21
| | | | | | This option allows restoring the behaviour prior to #9023. Fixes #9583 Closes #9633
* man.vim: lowercase title when invoked as $MANPAGERJustin M. Keyes2018-10-26
| | | | | | | | man#init_pager() guesses the ref by the heading, which is usually uppercase, so we don't know the correct casing. But lowercase is more common, so use that for the buffer name instead of uppercase. ref #9156
* man.vim: avoid duplicate buffers, E95Justin M. Keyes2018-10-25
| | | | | | | | | | | | | | | | | | | | Before this commit, man#init_pager() always tries to scrape the manpage name and set the buffer name. That's much less important than avoiding duplicate buffers and E95. And it doesn't seem to be necessary, usually. Steps to reproduce: $ export MANPAGER="nvim -c 'set ft=man' -" $ man sleep :Man sleep Error detected while processing function man#init_pager: line 15: E95: Buffer with this name already exists :ls! 1 h- "man://SLEEP(1)" line 4 2 %a- "man://sleep(1)" line 1
* man.vim: set $MANWIDTH=999Justin M. Keyes2018-09-30
| | | | | | | | On some systems, mandoc disallows $MANWIDTH greater than 1000. E.g. FreeBSD: https://github.com/freebsd/freebsd/blob/b7d613ae8a2fc1530d33aff53a1a678d284bfeec/contrib/mandoc/manpath.c#L312 closes #9065
* man.vim: Start at the top #9023Justin M. Keyes2018-09-27
| | | | fixes #9057
* man.vim: Fix very long justified lines #9023Justin M. Keyes2018-09-21
| | | | | | | | | | | When nroff justifies a line, it fills the line with whitespace to meet $MANWIDTH. With $MANWIDTH=9999, that of course results in nonsense (and behaves poorly with 'cursorline' option). To work around that, instead of trying to hard-justify the lines, just replace the mega-whitespace with a fixed size of 10 spaces. Perhaps N/Vim needs a "soft justify" feature?
* man.vim: Ignore $MANWIDTH, use soft wrap #9023Doron Behar2018-09-21
| | | | | fix #9017 close #9023
* man.vim: guard against reload (#8940)dm1try2018-09-01
| | | | | | Some plugins attempt to reload autoloaded scripts. Use a guard to prevent this. fix #8939
* man.vim: fix for mandoc (#8698)Brayden Banks2018-07-08
| | | | | When giving a section, the first candidate selection was not performed. followup/fixup #8341
* man.vim: s:get_path(): trim newline in all casesJustin M. Keyes2018-05-10
| | | | ref #8372
* man.vim: get() first item if -w returns multiple paths #8372Jon Bernard2018-05-10
| | | | | | | | | OpenBSD's man returns all candidates when searching with -w instead of the first one it finds. So this patch takes the first one if multiple entries are found. closes #8372 closes #8341
* man.vim: use correct offset in presence of modifier commandsMarco Hinz2018-01-22
| | | | | | | | | | | The argument expansion for :Man depends on the number of arguments given to it starting at the command itself. But user completion functions always provide the entire command-line which can include modifier commands like :tab, :vert, etc. leading to a wrong number of arguments. Prune all arguments up to :Man. Fixes #7872.
* Merge #7623 'man.vim: highlight bold, underlined text'Justin M. Keyes2018-01-09
|\
| * Address PR commentsGabriel Holodak2017-12-27
| |
| * Add support for escape sequencesGabriel Holodak2017-12-27
| |
| * Switch to processing in LuaGabriel Holodak2017-12-27
| |
| * Highlight backspaced charactersGabriel Holodak2017-12-27
| |
* | man.vim: always keep the alternate buffer (#7784)Anmol Sethi2017-12-29
|/ | | Closes #7772
* man.vim: feature-test section (-s) flag #6815raichoo2017-05-26
| | | | | Different implementations of `man` might be using different flags for sections.
* man.vim: check for -l flag #6766raichoo2017-05-19
|
* man.vim: Fix filename argument in mandoc #6693Matthew Wynn2017-05-08
| | | | | | | Use the -l flag to open a man file. TODO: Does not work on SunOS. Fixes #6683
* help, man.vim: "outline" (TOC) feature #5169Tommy Allen2017-05-01
|
* man.vim: call s:error in man#read_page (#6362)Anmol Sethi2017-03-25
| | | | | The comment is incorrect, s:error does need to be called. I thought the call was unnecessary because it didn't show any message for me but I had shortmess+=F which was hiding the message.
* man.vim: use 'eventignore' instead of :noautocmd #6149Anmol Sethi2017-02-27
| | | | | | We only need to ignore BufReadCmd (from runtime/plugin/man.vim). Closes #6144
* man.vim: more robust s:verify_exists #6043Anmol Sethi2017-02-04
| | | | | | | Closes #6039 Also: close the window if we could not get the page from man but only if we opened it ourselves.
* man.vim: get page after opening split (#6032)Anmol Sethi2017-01-31
| | | This will ensure that $MANWIDTH is correctly set.
* man.vim: remove terminal escape characters (#6033)Anmol Sethi2017-01-31
| | | This will make man.vim work on nixOS.
* man.vim: Avoid empty argument when MANWIDTH is set. (#5882)Marcus Fritzsch2017-01-06
|
* man.vim: remove newline from man errors (#5852)Anmol Sethi2017-01-01
|
* man.vim: revert "completion now respects 'wildignorecase'" (#5839)Anmol Sethi2016-12-27
| | | | Instead, a note was added to `:h man.vim` on how 'fileignorecase' controls the case sensitivity of completion.
* man.vim, provider.vim: Avoid shell syntax. #5734ooora2016-12-27
| | | | | | - Improves compatibility with shell=tcsh. - man.vim: split read_page into get_page, put_page. Do not split the window until we know there is going to be output.
* man.vim: properly handle manpage names with spacesAnmol Sethi2016-12-27
|
* man.vim: completion now respects 'wildignorecase'Anmol Sethi2016-12-27
|
* man.vim: when completing a fpage, always show sectionAnmol Sethi2016-12-26
|