summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Greg Hurrell [Tue, 28 Dec 2021 12:24:39 +0000 (13:24 +0100)]
refactor: reorder expressions
Because if the number of expressions ever goes beyond 3, alphabetical
ordering will make it easier to make sense of things.
Greg Hurrell [Tue, 28 Dec 2021 12:21:22 +0000 (13:21 +0100)]
Merge branch 'pull/50'
Closes: https://github.com/wincent/terminus/pull/50
* pull/50:
docs: update AUTHORS and HISTORY sections
feat: add iTerm2 to the SGR Protocol supported list
Greg Hurrell [Tue, 28 Dec 2021 12:19:01 +0000 (13:19 +0100)]
docs: update AUTHORS and HISTORY sections
Darwin Groskleg [Sun, 31 Jan 2021 21:26:29 +0000 (16:26 -0500)]
feat: add iTerm2 to the SGR Protocol supported list
Enables proper mouse reporting for large terminal windows.
See "SGR" in the iTerm2 FAQ:
https://iterm2.com/faq.html
Greg Hurrell [Sat, 12 Jun 2021 17:33:37 +0000 (19:33 +0200)]
chore: switch from "master" to "main"
Greg Hurrell [Sun, 4 Oct 2020 21:47:52 +0000 (23:47 +0200)]
Merge branch 'pull/39'
Closes: https://github.com/wincent/terminus/pull/39
* pull/39:
docs: update HISTORY section
fix(vim): execute Focus* in Vim terminal to fix ??? chars
Greg Hurrell [Sun, 4 Oct 2020 21:47:45 +0000 (23:47 +0200)]
docs: update HISTORY section
Neui [Sat, 9 Feb 2019 13:03:15 +0000 (14:03 +0100)]
fix(vim): execute Focus* in Vim terminal to fix ??? chars
Seems to be caused by sending a raw `<f20>` and `<f21>` to the terminal.
Since gvim also executes the Focus* while in terminal, this is
replicated here. As a side effect of removing the default mapping of
`<f20>` and `<f21>`, this fixes weird ??? characters in vim terminals.
Signed-off-by: Greg Hurrell <greg@hurrell.net>
Greg Hurrell [Thu, 19 Mar 2020 22:45:31 +0000 (23:45 +0100)]
docs: fix alignment in table of contents
Greg Hurrell [Thu, 19 Mar 2020 22:45:20 +0000 (23:45 +0100)]
Merge branch 'pull/43'
Closes: https://github.com/wincent/terminus/pull/43
* pull/43:
docs: update HISTORY and AUTHORS sections
feat: make bracketed paste work in urxvt
Greg Hurrell [Thu, 19 Mar 2020 22:44:33 +0000 (23:44 +0100)]
docs: update HISTORY and AUTHORS sections
Peteris Krumins [Thu, 19 Mar 2020 11:07:22 +0000 (11:07 +0000)]
feat: make bracketed paste work in urxvt
Greg Hurrell [Wed, 7 Feb 2018 17:37:52 +0000 (09:37 -0800)]
doc: Mention tmux escape-time setting
Closes: https://github.com/wincent/terminus/issues/9
Greg Hurrell [Fri, 20 Oct 2017 14:49:45 +0000 (07:49 -0700)]
doc: update HISTORY section
Greg Hurrell [Fri, 20 Oct 2017 14:45:41 +0000 (07:45 -0700)]
Suppress E11 error when focusing command-line window
Not sure whether this is the "right" fix or not (that is, whether we
should aim to avoid triggering the autocmd at all rather than merely
suppressing the error), but going to give this a try.
Closes: https://github.com/wincent/terminus/issues/33
Greg Hurrell [Wed, 30 Aug 2017 01:34:21 +0000 (18:34 -0700)]
Merge branch 'pull/31'
Closes: https://github.com/wincent/terminus/pull/31
* pull/31:
doc: fix up some `ttimeoutlen` typos
Jon Parise [Sun, 27 Aug 2017 17:24:00 +0000 (10:24 -0700)]
doc: fix up some `ttimeoutlen` typos
Greg Hurrell [Sat, 10 Jun 2017 00:13:42 +0000 (17:13 -0700)]
doc: dial down claims about bracketed paste support in Neovim
Sad!
Greg Hurrell [Tue, 6 Jun 2017 15:33:19 +0000 (08:33 -0700)]
Prepare for v1.3 release
Greg Hurrell [Tue, 6 Jun 2017 15:33:08 +0000 (08:33 -0700)]
doc: mention Neovim in README
Greg Hurrell [Tue, 6 Jun 2017 15:32:37 +0000 (08:32 -0700)]
doc: Add FAQ section
Greg Hurrell [Tue, 6 Jun 2017 15:13:29 +0000 (08:13 -0700)]
Remove unnecessary focus reporting set-up in Neovim
Greg Hurrell [Tue, 6 Jun 2017 15:10:06 +0000 (08:10 -0700)]
Fix focus reporting in Neovim
Seems we do need this after all.
Closes: https://github.com/wincent/terminus/issues/26
Greg Hurrell [Sat, 3 Jun 2017 00:20:22 +0000 (17:20 -0700)]
Support neovim
A couple things work just fine out of the box, even inside tmux:
- Focus reporting.
- Cursor shape changes.
There have been some changes in the details of support, so only
explicitly supporting recent versions (tested on v0.2.0).
Closes: https://github.com/wincent/terminus/issues/4
Greg Hurrell [Thu, 25 May 2017 01:57:35 +0000 (18:57 -0700)]
Use <nomodeline> in autoloaded file as well
Already doing this in the plugin file.
Greg Hurrell [Tue, 21 Mar 2017 14:38:16 +0000 (07:38 -0700)]
Prepare for 1.2 release
Greg Hurrell [Mon, 28 Nov 2016 20:54:25 +0000 (12:54 -0800)]
Merge branch 'pull/18'
Closes: https://github.com/wincent/terminus/pull/18
* pull/18:
doc: update AUTHORS and HISTORY
Fix calling autocmd while in omnifunc completion
Greg Hurrell [Mon, 28 Nov 2016 20:54:13 +0000 (12:54 -0800)]
doc: update AUTHORS and HISTORY
Barlik [Sun, 27 Nov 2016 12:04:57 +0000 (12:04 +0000)]
Fix calling autocmd while in omnifunc completion
<c-o> doesn't escape insert mode when used with omnifunc completion. Instead, use <c-\><c-o> to switch to normal mode.
Greg Hurrell [Thu, 13 Oct 2016 01:55:25 +0000 (18:55 -0700)]
doc: update HISTORY
Greg Hurrell [Thu, 13 Oct 2016 01:44:32 +0000 (18:44 -0700)]
Implement throttling using timers
This ends up sucking more than you would think. I set this up with a
500ms time interval, and observed that actual time elapsed was typically
several seconds and was as high as 9 seconds. According to the help,
this is expected:
{time} is the waiting time in milliseconds. This is the
minimum time before invoking the callback. When the system is
busy or Vim is not waiting for input the time will be longer.
So, might end up adding a setting for this and letting the user choose
between responsive resizing and responsive focus/blur.
Greg Hurrell [Thu, 13 Oct 2016 00:38:52 +0000 (17:38 -0700)]
Work around missing/late FocusGained/FocusLost events
I've noticed that FocusGained/FocusLost events can be slow to arrive,
and sometimes may not arrive at all, when they are the result of
creating or destroying a new tmux pane.
Unsure of why this might be -- it could be a bug in tmux, Vim, iTerm, or
my own config -- I asked on the tmux issue tracker:
https://github.com/tmux/tmux/issues/577
As noted there, you can easily verify that tmux is always sending the
right focus events by doing this in a pane:
printf '\033[?1004h'; cat
(ie. enable focus reporting in that pane and then have `cat` echo back
whatever events it gets back on the input stream). When you do this, you
can clearly see the right sequences coming back (`Esc[O` and `Esc[I`) as
soon as you create a split (shifting focus to it) or destroy it
(shifting focus back).
So I then started looking into Vim itself. I tried various tweaks of
`'timeout'`, `'timeoutlen'`, `'ttimeout'`, `'ttimeoutlen'` and co. I
also checked out `'updatetime'`, `'nolazyredraw'`, `'esckeys'` and
various other suspects. Additionally, I tried binding directly to
`Esc[O` rather than those virtual function keys, reordering the
autocommands to make the Focus ones run first, and disabling other
autocommands that might be interfering.
I added logging to Vim itself and recompiled it, and found that none of
the focus-related code is invoked in the terminal, which is why the
`Esc[O` stuff needs to be bound. I tried two other plug-ins that do
focus managment (Vitality[0] and vim-tmux-focus-events[1]) and found
that they exhibited the same behavior. I even tried Neovim, which has
built in focus support, and saw that it was also affected; additionally,
I looked at the implementation[2] and saw that it was implemented by
peeking ahead in the input stream, which would suggest that even if a
similar implementation were added to Vim, then we'd still have the same
problem because something else is at play.
Ruled out iTerm by doing a `touch ~/.vim/.assume-iterm` and running in
Terminal.app. Focus mostly works there, but notably, it is not immune to
this issue either.
Confirmed that I could fake focus events by doing something like this:
tmux send-keys -t dot:1.1 Escape '[I'
But that didn't really help me much as my growing suspicion was that
something about the split creation/destruction was leading to a
VimResized event which was somehow interrupting the detection and
processing of the focus key sequence (although changing the timeouts and
even disabling timeouts entirely had no effect).
So all this leads me to this hack: we subscribe to VimResized events,
and when we get one, we check if we have focus; depending on whether we
do or don't we fire the corresponding FocusGained/FocusLost autocommand.
If we can't determine that for whatever reason, we do nothing.
The problem here is we slow down resizes. I would have liked to throttle
the events with `CursorHold`, but that doesn't really work because if
the user is idle those events get paused until the next key press. So, I
am going to commit this "eager" version, and then add a better,
throttled version in the next commit that uses timers (available in Vim
version 8, so will need feature detection).
[0]: https://github.com/sjl/vitality.vim
[1]: https://github.com/tmux-plugins/vim-tmux-focus-events
[2]: https://github.com/neovim/neovim/pull/3488
Greg Hurrell [Wed, 12 Oct 2016 20:53:58 +0000 (13:53 -0700)]
Remove a redundant expression from conditional
`s:iterm2` already includes a `s:iterm &&` inside it.
Greg Hurrell [Wed, 12 Oct 2016 01:08:48 +0000 (18:08 -0700)]
Add empty .watchmanconfig
Allows a Watchman instance configured with `enforce_root_files` to watch
this directory even if `root_files` does not contain any of the files in
the directory. (Necessary to get around undesired corporate
`/etc/watchman.json` config.)
Greg Hurrell [Tue, 11 Oct 2016 23:37:14 +0000 (16:37 -0700)]
Eliminate annoying delay on leaving insert mode
Vim would wait here (`'timeoutlen'`, usually 1 second) to see if the
`<Esc>` was going to end up being `<Esc>[something]`.
According to this page:
https://www.johnhawthorn.com/2012/09/vi-escape-delays/
You might also need to stop Zsh from imposing a delay with:
KEYTIMEOUT=1
And ditto for tmux:
set -s escape-time 0
But neither of those was necessary for me.
So, fix the delay by setting up a function-key binding, and while we're
at it, reduce the `'ttimeoutlen'` from 50 to 10ms, as it's 2016 and
"10ms should be enough for anybody" (ie. almost an entire frame of
16.67ms at 60fps).
Greg Hurrell [Tue, 11 Oct 2016 02:01:54 +0000 (19:01 -0700)]
Merge branch 'pull/17'
Closes: https://github.com/wincent/terminus/pull/17
* pull/17:
doc: add Jon Parise to the AUTHORS section in the docs
Typo fix: 'typemouse' -> 'ttymouse'
Greg Hurrell [Tue, 11 Oct 2016 02:01:40 +0000 (19:01 -0700)]
doc: add Jon Parise to the AUTHORS section in the docs
Jon Parise [Mon, 10 Oct 2016 18:54:26 +0000 (11:54 -0700)]
Typo fix: 'typemouse' -> 'ttymouse'
Greg Hurrell [Thu, 14 Jul 2016 01:53:22 +0000 (18:53 -0700)]
Prepare for 1.1 release
Greg Hurrell [Thu, 7 Jul 2016 23:05:52 +0000 (16:05 -0700)]
Use a more concise regex
Greg Hurrell [Thu, 7 Jul 2016 05:39:14 +0000 (22:39 -0700)]
Escape otherwise useless period in regex
Greg Hurrell [Thu, 7 Jul 2016 00:39:07 +0000 (17:39 -0700)]
Prefer 1337 iTerm escape sequences over deprecated 50 sequences
Noticed while perusing the iTerm docs the other day that the \e]50 escape
sequences are deprecated because of a clash with Xterm, so let's use the newer
1337 sequences when they are available.
Greg Hurrell [Wed, 1 Jun 2016 04:44:11 +0000 (21:44 -0700)]
Revamp README
Now it's a real Markdown document with a logo.
Greg Hurrell [Sat, 30 Jan 2016 01:42:20 +0000 (17:42 -0800)]
Prepare for 1.0.1 release
Greg Hurrell [Sat, 30 Jan 2016 01:38:59 +0000 (17:38 -0800)]
Fix misnamed variable
Propagated here from the Loupe plugin via copy-pasta. Whoops!
Closes: https://github.com/wincent/terminus/issues/12
Greg Hurrell [Sun, 3 Jan 2016 13:38:10 +0000 (14:38 +0100)]
Don't set ttymouse when running in nvim
nvim removed this option, having mouse support default to always-on.
Related: https://github.com/wincent/terminus/issues/4
Greg Hurrell [Sun, 27 Dec 2015 08:35:23 +0000 (09:35 +0100)]
Prepare for 1.0 release
We're pretty stable at this point, so may as well move to 1.0.
Greg Hurrell [Sun, 27 Dec 2015 08:28:24 +0000 (09:28 +0100)]
Silence annoying "No matching autocommands" output
Not sure if there was ever a good reason for this not to be `silent`, as
all the other instances of `:doautocmd` were, but this seems a harmless
fix, and it addresses an annoying issue.
This flaw originally came into my dotfiles repo in:
https://github.com/wincent/wincent/commit/
ae4a378
The corresponding bug in Vitality was fixed there in:
https://github.com/sjl/vitality/commit/
96bcc77
Greg Hurrell [Thu, 22 Oct 2015 13:59:14 +0000 (06:59 -0700)]
doc: Mention Mosh limitations
Greg Hurrell [Thu, 22 Oct 2015 13:57:30 +0000 (06:57 -0700)]
doc: Qualify statement about Terminal.app support
I haven't used Terminal.app in El Capitan, so I have no idea if any of
this has changed, or will change in the future. Let's weaken the
strength of the claim a little bit accordingly.
Greg Hurrell [Thu, 15 Oct 2015 15:08:34 +0000 (08:08 -0700)]
doc: Simplify `git push` invocations
Greg Hurrell [Thu, 15 Oct 2015 14:54:28 +0000 (07:54 -0700)]
doc: Update HISTORY for 0.4 release
Greg Hurrell [Thu, 15 Oct 2015 01:18:50 +0000 (18:18 -0700)]
Accept tmux TERM as synonym for screen
Just moved to the `master` branch (pre-2.1) of the tmux repo, and saw
that it is now recommending[1] people set up a `tmux` terminfo entry if
they want to enjoy italics support (and of course, I do).
So, this commit replaces the `s:screen` variable with `s:screenish`, and
it will be true for either screen or tmux.
[1]: https://github.com/tmux/tmux/blob/
f69e09a67eaecec96e53705d45c18a5f0639e308/FAQ#L355-L383
Greg Hurrell [Sun, 27 Sep 2015 06:09:35 +0000 (23:09 -0700)]
Merge branch 'pull/11'
Originally submitted at: https://github.com/wincent/terminus/pull/11
* pull/11:
Guard against "Unknown option: t_SR" for older Vim
Joe Lencioni [Sat, 26 Sep 2015 12:34:19 +0000 (05:34 -0700)]
Guard against "Unknown option: t_SR" for older Vim
After updating from
928b3bfb to
10564cb4 I started getting the following
error when starting Vim:
> Error detected while processing
> /path/to/.vim/bundle/terminus/plugin/terminus.vim:
> line 58:
> E355: Unknown option: t_SR
It appears that the t_SR reference was added by
640509f8.
I was running an old version of Vim for some reason (7.4.488) and
upgrading (to 7.4.873) made this message disappear. It looks like `t_SR`
was added in patch 687 [0], so we can be more hospitable to people who
aren't on the latest by adding a guard for this patch.
[0]: https://github.com/vim/vim/releases/tag/v7.4.687
Greg Hurrell [Thu, 10 Sep 2015 14:55:02 +0000 (07:55 -0700)]
Use single quotes for consistency
Greg Hurrell [Thu, 10 Sep 2015 14:49:58 +0000 (07:49 -0700)]
Gate <nomodeline> use on Vim version
As noted in the comment, this was only added in 7.3.438, so let's make
sure we can use it before we try to do so.
Greg Hurrell [Thu, 10 Sep 2015 14:38:18 +0000 (07:38 -0700)]
Avoid reevaluation of modelines on Focus{Lost,Gained}
This can be particularly nasty if the modeline has something in it that
can visibly affect the buffer (like a `foldstart=0` setting).
Fixes: https://github.com/wincent/terminus/issues/6
Thanks to @paulhybryant for the amazing bug report.
Greg Hurrell [Sun, 6 Sep 2015 22:56:28 +0000 (15:56 -0700)]
doc: Make further improvements for Konsole etc
Try to make things a little clearer with respect to support for the
different kinds of terminals. I don't want to entirely purge the docs of
all references to iTerm (because that's still my principal test
environment), but I do want it to be clear that you don't have to use
iTerm.
Note that there is one place here where I am simplifying things in the
name of readability, while sacrificing a little bit of precision:
namely, I talk about cursor shape values getting passed through as-is to
iTerm and Konsole, and don't mention the re-mapping that occurs for the
benefit of VTE terminals. If this ever ends up confusing anybody, I'll
amend it.
Greg Hurrell [Sun, 6 Sep 2015 22:30:27 +0000 (15:30 -0700)]
Merge branch 'pull/8'
Note that this PR sets up the `t_{EI,SI,SR}` variables unconditionally,
even when not running inside iTerm. I think this should be ok (tested in
a non-iTerm, non-VTE terminal ie. Apple Terminal.app).
Originally submitted at: https://github.com/wincent/terminus/pull/8
* pull/8:
doc: mention VTE terminals in HISTORY section
Prefer single quotes
Rename s:replace to s:start_replace for consistency
Use consistent `let` styling
doc: further flesh out docs for TerminusReplaceCursorShape
Add support for terminals with VTE support
Add documentation of replace cursor shape
Greg Hurrell [Sun, 6 Sep 2015 22:30:21 +0000 (15:30 -0700)]
doc: mention VTE terminals in HISTORY section
Greg Hurrell [Sun, 6 Sep 2015 22:26:59 +0000 (15:26 -0700)]
Prefer single quotes
Greg Hurrell [Sun, 6 Sep 2015 22:20:44 +0000 (15:20 -0700)]
Rename s:replace to s:start_replace for consistency
For consistency with `s:start_insert`, and also with the docs for
`t_SR`.
Greg Hurrell [Sun, 6 Sep 2015 22:18:01 +0000 (15:18 -0700)]
Use consistent `let` styling
No spaces around the `=` in `let` statements, for consistency with other
places in the code.
Greg Hurrell [Sun, 6 Sep 2015 22:15:06 +0000 (15:15 -0700)]
doc: further flesh out docs for TerminusReplaceCursorShape
Jan Christoph Ebersbach [Sun, 6 Sep 2015 12:05:13 +0000 (14:05 +0200)]
Add support for terminals with VTE support
Jan Christoph Ebersbach [Sun, 6 Sep 2015 12:03:12 +0000 (14:03 +0200)]
Add documentation of replace cursor shape
Greg Hurrell [Sun, 6 Sep 2015 21:58:59 +0000 (14:58 -0700)]
Merge branch 'pull/7'
Originally submitted at: https://github.com/wincent/terminus/pull/7
* pull/7:
doc: Further note Konsole support
doc: Update AUTHORS and HISTORY sections for pull #7
Sort exists() checks
Break up a long line
Add support for KDE Konsole
Greg Hurrell [Sun, 6 Sep 2015 21:56:42 +0000 (14:56 -0700)]
doc: Further note Konsole support
There are a lot of potentially confusing references to iTerm in here
now (confusing because we effectively treat Konsole as equivalent to
iTerm). I'll clean those up in a future commit once the other in-flight
PR has landed.
Greg Hurrell [Sun, 6 Sep 2015 21:49:43 +0000 (14:49 -0700)]
doc: Update AUTHORS and HISTORY sections for pull #7
Greg Hurrell [Sun, 6 Sep 2015 21:46:35 +0000 (14:46 -0700)]
Sort exists() checks
Greg Hurrell [Sun, 6 Sep 2015 21:45:17 +0000 (14:45 -0700)]
Break up a long line
Jan Christoph Ebersbach [Sun, 6 Sep 2015 11:16:23 +0000 (13:16 +0200)]
Add support for KDE Konsole
KDE Konsole supports the iTerm escape sequences natively
Greg Hurrell [Fri, 24 Jul 2015 22:46:00 +0000 (15:46 -0700)]
doc: correct a typo in the DEVELOPMENT section
Greg Hurrell [Fri, 24 Jul 2015 19:15:37 +0000 (12:15 -0700)]
doc: Add DEVELOPMENT section
Document my lamentably manual release process. I will go ahead and
automate this, like I did for Command-T, in the future.
Greg Hurrell [Fri, 24 Jul 2015 19:05:05 +0000 (12:05 -0700)]
Prepare to cut 0.2 release
Greg Hurrell [Fri, 24 Jul 2015 19:04:04 +0000 (12:04 -0700)]
doc: Update TROUBLESHOOTING section with info about new options
Greg Hurrell [Fri, 24 Jul 2015 18:59:18 +0000 (11:59 -0700)]
Add options to configure specific cursor shapes used
Fixes: https://github.com/wincent/terminus/issues/5
Greg Hurrell [Thu, 16 Jul 2015 15:30:09 +0000 (08:30 -0700)]
doc: Add tips for improving cursor visibility
Fixes: https://github.com/wincent/terminus/issues/2
Greg Hurrell [Thu, 16 Jul 2015 14:40:21 +0000 (07:40 -0700)]
Use get() for getting optional values with defaults
Via Pro-Tip at: https://github.com/wincent/ferret/issues/5
Greg Hurrell [Wed, 8 Jul 2015 22:15:37 +0000 (15:15 -0700)]
Add LICENSE.txt
Greg Hurrell [Wed, 8 Jul 2015 20:41:59 +0000 (13:41 -0700)]
doc: Add troubleshooting information for copy-to-clipboard
This is in response to: https://github.com/wincent/terminus/issues/3
Greg Hurrell [Tue, 7 Jul 2015 00:55:37 +0000 (17:55 -0700)]
doc: Add TROUBLESHOOTING section
In response to: https://github.com/wincent/terminus/issues/1
Greg Hurrell [Mon, 6 Jul 2015 06:54:18 +0000 (23:54 -0700)]
Add top-level git-ignore
Greg Hurrell [Mon, 6 Jul 2015 06:53:03 +0000 (23:53 -0700)]
Initial import
From
0c1ff307b465444 in my dotfiles repo
(https://github.com/wincent/wincent).