Commit graph

410 commits

Author SHA1 Message Date
Marco Hinz b817cab23f Remove <nowait> for index mappings
<nowait> guards against global mappings.

Problem: However, having 2 local <nowait> mappings, '1' and '11', makes no
sense, since it would always go with the former.

Solution: Remove <nowait> from all dynamically created mappings and keep it
for the fixed ones (i, b, v, ...).

If you absolutely need a <nowait> mapping for a non-fixed mapping, e.g. 'g'
(and because you use vim-commentary which maps 'gc'), see
":h startify-autocmd":

    autocmd User Startified nnoremap <buffer><nowait><silent> g ...

References #180.

Reported-by: @noscripter
2015-11-09 11:58:21 +01:00
Marco Hinz c193556225 Add support for vim-devicons
Closes #177.
2015-11-08 02:52:17 +01:00
Konfekt 7b83d16e27 Doc: update refined filter option
Closes #185.
2015-11-06 18:17:37 +01:00
Konfekt 295c02f926 Resolve symlinks in MRU filter
For example, OpenSUSE uses a `.../vim/current` symlink for `$VIMRUNTIME`. The
skiplist now resolves these to filter them too.

Closes #184.
2015-11-06 18:10:48 +01:00
Boggs 90dcfc9882 Add doc/tags to .gitignore
Closes #182.
2015-11-03 22:59:33 +01:00
Marco Hinz df8b4e1fde Support for custom indices for g:startify_bookmarks
g:startify_bookmarks now supports custom indices directly. E.g.

    let g:startify_bookmarks = [ {'v': '~/.vimrc'} ]

References #176, #178.
2015-11-03 22:39:58 +01:00
Marco Hinz 0bb969178d Do not filter bookmarks anymore 2015-11-03 17:31:05 +01:00
Marco Hinz 61c1e360c8 Custom indices overwrite plugin mappings
References #178.
2015-11-03 16:01:23 +01:00
Marco Hinz ff4732bb30 Ignore <session>x.vim files in session path
These files can be used to set up additional things for a session and have to
be placed in the same directory as the session file.

See point 10 under `:h :mksession` for more information.

Since they are no real session files, Startify shouldn't list them either.

Closes #179.
2015-11-03 15:25:25 +01:00
somini 97b4e225be Improve mappings
This sets all the created mappings as `nowait`, meaning having global
mappings will still allow you to jump to a file instantly.

For example, if you have a commentary plugin and define a global mapping
of `gcc`, you can't use `g` without waiting (or clicking Esc right
away).

Closes #180.
2015-11-03 13:27:04 +01:00
Marco Hinz 9afab110e9 Do not check v:progname anymore
Originally this check was meant to prevent showing the Startify buffer for
certain cases I can't recall anymore.

Now the Startify buffer will be shown at startup if these conditions are true:

  1) no arguments were provided to Vim on the commandline
  2) the first buffer is empty
2015-11-03 13:05:46 +01:00
Marco Hinz 6f886cdc48 Make window sizes equal 2015-08-20 09:32:19 +02:00
Marco Hinz 7f76635fce session_write(): error msg instead of exception
References #174.
2015-08-14 11:59:26 +02:00
Marco Hinz a58f92e781 Update v:oldfiles on :saveas
References #175.
2015-08-07 00:15:28 +02:00
Marco Hinz 695121f065 Change skiplist default + improve docs
Thanks for the feedback, @Osse.
2015-07-06 18:53:46 +02:00
Enrico Ghirardi 2ae8a96633 Use blackhole register when removing lines
During session save, when removing lines, we don't want to store the content
in the unnamed register, takes more time and changes clipboard content. Just
use the blackhole register.

References #167.
2015-06-12 19:48:03 +02:00
Marco Hinz 2c7807566c Only check user options for regular files
We don't "switch to dir"/"switch to VCS dir"/"autoload sessions" when opening
special entries ([e] and [q]) or sessions.

References #165.
2015-06-03 10:09:30 +02:00
Marco Hinz be611cd545 Call s:check_user_options() for all entries
References #165.
2015-06-02 23:19:53 +02:00
Marco Hinz 01a1038401 Small fixes 2015-06-02 23:18:36 +02:00
Marco Hinz 61cfce000c Don't overwrite the last regular entry with [q] 2015-06-02 22:26:59 +02:00
Marco Hinz ee674f99a8 Register e/q even if special is disabled 2015-06-02 09:35:42 +02:00
Marco Hinz f98dba25f2 :StartifyDebug should never fail 2015-06-02 09:18:05 +02:00
Marco Hinz 06b117451a Add s:register() 2015-06-02 09:07:14 +02:00
Marco Hinz be8bfe8513 Add missing entries
References #163.
2015-06-02 08:55:14 +02:00
Marco Hinz f59d93d5f4 Always use markers to open files 2015-06-01 17:21:52 +02:00
Marco Hinz 2ea22e2e7e Simplify marker implementation
This commit also fixes loading sessions via the new #open_buffers() method.

References #163.
2015-06-01 17:07:40 +02:00
Marco Hinz 07be6b5fa9 Handle bookmarks via #open_buffers()
References #164.
2015-06-01 14:36:03 +02:00
Marco Hinz 8fd4247218 Refactoring: handle all file opening in #open_buffers() 2015-05-28 17:16:09 +02:00
Marco Hinz d2af054a59 Escape '[' on Windows
Escape '[' as according to ":h wildcard", so it doesn't get interpreted as a
pattern, like "[0-9]".

References #161.
2015-05-28 13:12:04 +02:00
Marco Hinz acbce306b2 Use same open mechanism for all supported methods 2015-05-28 12:49:24 +02:00
Marco Hinz 51f64a28e8 Use feedkeys() properly #2
With mode 't' enabled, you'd get a timeout if you had indices 1 and 11 and
keyed in '1'.
2015-05-28 11:55:52 +02:00
Marco Hinz 7375e31f79 Use feedkeys() properly 2015-05-28 11:20:49 +02:00
Marco Hinz 167af9490a Don't skip encryption key prompt
References #162.
2015-05-28 11:13:18 +02:00
Marco Hinz d7adb1709f Proper filename escaping
A glob() is effectively undoing a fnameescape().

References #160.
2015-05-18 20:59:18 +02:00
Marco Hinz 1f42935fd6 Introduce g:startify_session_remove_lines
References #159.
2015-05-12 12:02:19 +02:00
Marco Hinz 9ef7fcb502 Small maintenance tasks 2015-04-28 15:34:11 +02:00
Marco Hinz eccf570aea Don't allow gj type mappings
Assuming a small screen and 'wrap' set:

The cursor is forced to stay in a certain column, so doing gj on a wrapped
line will jump into an area outside the position [x] and jump back into it
immediately effectively breaking navigation.

Solution: use local mappings that just do the usual h/j/k/l dance.

References #156.
2015-04-22 11:22:40 +02:00
Marco Hinz 3e143739d7 Expand '~' in the skiplist
The skiplist gets checked against normal Vim regular expressions. That also
means that you can't just use '~'; see ":h /\~".

That especially sneaky if you use variables that refer to directories within
your home directory.

Solution: expand them via fnamemodify().

References #154.
2015-04-20 02:46:36 +02:00
Pedro Nicolás Gómez 96ccdf7f15 Fix :SSave problem with wildmode
With these settings: wildmode=list and laststatus=2

When call the command :SSave and use <tab> for autocomplete, and choose any
session, then the message "Session already exists. Overwrite?  [y/n]" does not
appear on screen.

References #155.
2015-04-16 12:24:56 +02:00
Marco Hinz e3988d2446 Doc: better explanation of skiplist option
References #154.
2015-04-15 10:29:00 +02:00
Marco Hinz 36ff6db44a Fix :enew handling (again)
fugitive is run at VimEnter and for new buffers that are associated with
files.

Now fugitive commands will be available after start (in the Startify screen),
but it won't work after calling :Startify, since fugitive is designed that
way.

References #33.
2015-03-25 16:05:26 +01:00
Marco Hinz 08c0164a1b Introduce g:startify_enable_unsafe
References #149.
2015-03-06 16:12:17 +01:00
Marco Hinz 5fb1352ca0 Don't clutter v:oldfiles during [,l]vimgrep 2015-03-02 22:06:10 +01:00
Marco Hinz b5f9682732 Prepend to v:oldfiles for new files too 2015-02-21 13:47:39 +01:00
Marco Hinz 5a60580711 Update recently used files on the fly
Startify depends on v:oldfiles which lists recently used files (taken from the
viminfo file). But viminfo only gets updated once in a session: at exiting
Vim. Thus when you worked in a Vim instance for some time and opened multiple
new buffers, v:oldfiles (and therefore :Startify) wouldn't show the most
recently used files anymore.

Luckily v:oldfiles is editable, so now, each new buffer simply prepends its
associated filename to it, making :Startify always up-to-date.

References #148.
2015-02-11 17:49:22 +01:00
Marco Hinz d3d5ea68c4 Make "-Vim" another valid v:progname
References #147.
2015-02-03 12:47:02 +01:00
Marco Hinz 66083493ed Verbatim matching of path prefix
Closes #146.
2015-02-02 01:38:36 +01:00
Marco Hinz 62094fab84 Update screenshot 2015-01-30 15:37:06 +01:00
Marco Hinz b184b92e96 Doc: add FAQ 09 "How do I center my header/footer?" 2015-01-15 18:28:55 +01:00
Marco Hinz 362fa1d957 Fix autoloading of sessions from bookmarked directories
References #144.
2015-01-14 11:46:18 +01:00