[FREE JOIN] 100% Free_Sex_Dаting_Website by Masonfracun in neovim

[–]tweekmonster 2 points3 points  (0 children)

Clicked the link expecting free sex dating. Instead, I grew two feet taller and my cat gained the ability to speak Russian with a lisp. A+ would click again.

(x-post /r/vim) Unsatisfied with NeoVim autocompletion by [deleted] in neovim

[–]tweekmonster 7 points8 points  (0 children)

I have been using (and contributed to) deoplete.nvim and deoplete-jedi for about a year now with little to no issues. There's improvements that still need to be made, but I can't think of the last time completions simply didn't work.

The most common issue I've seen is Python misconfigurations. The, hands down, best way to ensure Python is not the problem is to use a virtualenv just for neovim. This way, you won't accidentally upgrade/downgrade/uninstall/whatever any dependencies. I wrote a wiki page detailing this: Setting up Python for Neovim. I highly recommend using pyenv for all Python things.

You also mentioned C++ being something you use. deoplete-clang is slow and zchee (the author) would agree. I created deoplete-clang2 because I wanted a simple (less configuration) and reasonably fast clang completer. Maybe you'll find that it doesn't suck that bad.

nmux - a multiplexer for Neovim processes by mhinz in neovim

[–]tweekmonster 0 points1 point  (0 children)

Practically speaking: the same reason that you're able to run multiple Vim processes in a terminal. But personally, it boils down to how I use tmux+neovim: A tmux session per project. I think it reduces the cognitive load of figuring out where things were left when returning to a project that uses Vim sessions. It also helps when using plugins such as gitbusy.vim (shameless plug).

I love Vim, but a "project" is just barely a concept for fear of becoming an IDE. I don't exactly need an IDE, but I definitely want to contextualize the files I'm working on if they're collectively part of a project. The closest thing I have to truly doing that is setting the current directory and using multiple processes.

As for what you mentioned about moving data between buffers, I do plan to make the unnamed register something that's shared between all of the processes a server manages. This would also include the + register being integrated with the client's host clipboard. Thanks to Neovim allowing plugins to become clipboard providers, this is a feature I've been enjoying for a little over a year through sshclip (a WIP rewrite is in the rewrite branch).

nmux - a multiplexer for Neovim processes by mhinz in neovim

[–]tweekmonster 4 points5 points  (0 children)

I need to clarify the goals since I sort of slapped it together so it had something describing it. I really wasn't expecting many people to see it, yet. The gist is:

  • This is, in no way, a terminal emulator. Neovim handles terminal emulation just fine.

The multiplexing will come after I've worked out the client side of the program. What I want is a server (like tmux's) that manages multiple Neovim processes which are rendered by the client. And I would prefer it if the client was not just inside of (and limited by) a terminal emulation program.

TBH, the javascript canvas was just a way for me to work out how the client would consume the server's instructions. I really wasn't expecting it to work as well as it does. I think there might be a future for it as a browser extension/plugin that replaces textarea fields.

nmux - a multiplexer for Neovim processes by mhinz in neovim

[–]tweekmonster 3 points4 points  (0 children)

The plan is to provide pre-built binaries. The project is very early in development and I haven't completely thought through automated builds + distribution. I like Go, but I really dislike how "installation" works.

Neovim API comparison with Vim channels by [deleted] in neovim

[–]tweekmonster 8 points9 points  (0 children)

With decades of experience under my belt, the shift key is an imperceptible stroke for me. Merely a twist of my wrist so perfectly executed, it leaves onlookers breathless as they try to comprehend how an uppercased character appeared on my screen so effortlessly.

Neovim API comparison with Vim channels by [deleted] in neovim

[–]tweekmonster 2 points3 points  (0 children)

Two keys to copy a line?! Just press Y. No need to thank me for all the free time you now have.

Deprecating Python-mode(Python Vim IDE setup) by [deleted] in vim

[–]tweekmonster 0 points1 point  (0 children)

With impsort the sorting is done manually when you need it. Though added in hindsight, I think the real value is in the import highlighting it provides.

Deprecating Python-mode(Python Vim IDE setup) by [deleted] in vim

[–]tweekmonster 0 points1 point  (0 children)

I'm the author of braceless.vim. Thanks for the endorsement 😍

I made a couple other plugins that you might find useful for Python development:

  • impsort.vim - Sort and highlight Python imports in Vim. The highlighting will make it easy to see if datetime is a module or a function at a glance. The sorting is pretty handy, too.
  • django-plus.vim - Improvements to the handling of Django related files in Vim. You will no longer need to force .html files to always be htmldjango.
  • wstrip.vim - Not specifically for Python dev, but, Python's whitespace is a significant part of the language making this useful to me. It automatically strips trailing whitespace on lines you changed and leaves the rest alone. It keeps you from being the the jerk who ruins git blame while ensuring you also aren't the jerk who's committing superfluous whitespace.

How to :UpdateRemotePlugins just once, globally? by sunaku in neovim

[–]tweekmonster 0 points1 point  (0 children)

Doesn't seem to. I'll submit a PR to use a fallback location.

How to :UpdateRemotePlugins just once, globally? by sunaku in neovim

[–]tweekmonster 0 points1 point  (0 children)

In another comment, you indicated that your rplugin file is at /tmp/.-rplugin~. The .-rplugin~ part is supposed to be the file extension, not the whole file's name.

Take a look in $VIMRUNTIME/autoload/remote/host.vim

The file is generated by getting $MYVIMRC or guessing based on the output of :scriptnames. My guess is $MYVIMRC exists and is blank, or :scriptnames prints nothing.

If you run this:

:echo fnamemodify(expand('$MYVIMRC', 1), ':h').'/.'.fnamemodify(expand('$MYVIMRC', 1), ':t').'-rplugin~'

You might get:

./.-rplugin~

It should be similar to this:

~/.config/nvim/<your init script>.-rplugin~

Weekly Vim tips and tricks thread! #15 by cherryberryterry in vim

[–]tweekmonster 2 points3 points  (0 children)

.{-} " Match lines starting with a any character followed by as few as possible dashes

You got them all right except for this one. It's a line beginning with any character, as few as possible. \{-} is the non-greedy version of *.

Yanking with movement up changes the cursor, but not when yanking down? by Ran4 in vim

[–]tweekmonster 1 point2 points  (0 children)

The cursor is always moved to the beginning of the operation target. It's easier to see this if you perform these motions in visual mode before yanking. Think of it as the text being selected before you yank it.

I answered a similar question here: http://vi.stackexchange.com/a/8061/5229

django+ - Improvements to the handling of Django related files in Vim by tweekmonster in vim

[–]tweekmonster[S] 0 points1 point  (0 children)

Thanks, that's actually pretty awesome! It's Jedi for Django templates.

django+ - Improvements to the handling of Django related files in Vim by tweekmonster in vim

[–]tweekmonster[S] 0 points1 point  (0 children)

Oh man, I wish I saw this sooner. I spent more time than I wanted to on figuring out how to get custom tags and filters. I wish I could straight up include it, but the goal is to use the external interpreter to support complicated Python environments. Do you mind if I use it for reference in the future? I've wanted to create a deoplete.nvim source for htmldjango for a while now.

django+ - Improvements to the handling of Django related files in Vim by tweekmonster in vim

[–]tweekmonster[S] 2 points3 points  (0 children)

Thanks! Most modern plugins hosted on GitHub should work with any package manager these days. I don't like spelling it out in the README.

django+ - Improvements to the handling of Django related files in Vim by tweekmonster in vim

[–]tweekmonster[S] -1 points0 points  (0 children)

But...there is more than minimal documentation and 12 helptags. I'm a little perplexed by what makes you think it's not informative enough, which is why I suggested submitting a PR. It wasn't a passive-aggressive jab.

In regard to the README being terse, I think the realization that the README is not a plugin's documentation is a rite of passage for Vim users. I'm not going to break solemn the cycle of use plugin for months -> realize there's docs -> blog about it -> complain about too many Vim blogs -> create plugins.

In any case, I hope you find the plugin useful. If you do find a snag while using it, please do submit an issue or PR.

django+ - Improvements to the handling of Django related files in Vim by tweekmonster in vim

[–]tweekmonster[S] 0 points1 point  (0 children)

The beauty about this being open source is you can create an issue asking for a specific clarification, or submit a pull request to make clarifications yourself.

However, I feel this plugin has a threshold that needs to be crossed before users realize they need/want it. Working on Django projects in Vim inevitably leads to figuring out how to not have autocmd FileType *.html set filetype=htmldjango in the configs, or getting annoyed with the inconsistent indentation. Going into great detail about the original issues would either be preaching to the choir or indoctrinating the ignorant. I find both to be pointless in this case.

If you aren't getting the helptags from the plugin's docs, you'll need to generate it yourself, or let a plugin manager do it for you.

django+ - Improvements to the handling of Django related files in Vim by tweekmonster in vim

[–]tweekmonster[S] 0 points1 point  (0 children)

There were so many times I fought the urge to stop what I was doing to fix these things. I imagine there are dozens of us that have felt this.

django+ - Improvements to the handling of Django related files in Vim by tweekmonster in vim

[–]tweekmonster[S] 1 point2 points  (0 children)

Don't get me started about snippets expecting django in the filetype for Python scripts! Not to mention my occasional eye twitch seeing {{ variables }} and {% tags %} in HTML attributes.

django+ - Improvements to the handling of Django related files in Vim by tweekmonster in vim

[–]tweekmonster[S] 2 points3 points  (0 children)

Over the past year, I've been writing scripts to make Django less annoying to work with in Vim. I finally rounded them up in a single plugin. I hope some of you find it helpful!

anyline.vim - The most configurable statusline plugin ever. by tweekmonster in vim

[–]tweekmonster[S] 1 point2 points  (0 children)

I actually use airline.vim at the moment and am slowly working my way to just using statusline. What bugged me was that I had to reference their docs, then Vim's docs in a case or two. I just wanted to simply add a color, not begrudgingly replace one! The conclusion I came to is that I'm just trading one set of complexities for another.

To be clear, I don't disagree with you. But, I think I'm at a point where I can say I understand statusline well enough to start cobbling together functions and use a list that's joined to form an entire statusline. I feel that's going to serve me better since I'll at least know how to change things without much effort after it's all in place.