Vim Part28

レス数が900を超えています。1000を超えると表示できなくなるよ。
2018/05/17(木) 19:18:17.53
Vim 6以降に関する話題、Part28です。
http://www.vim.org/

前スレ
Vim Part25 [転載禁止]?2ch.net
http://peace.2ch.net/test/read.cgi/unix/1427713482/
Vim Part26
http://mevius.2ch.net/test/read.cgi/unix/1455436351/
Vim Part27
http://mevius.5ch.net/test/read.cgi/unix/1507038883/

関連情報は>>2-6あたり
2018/12/31(月) 00:05:54.34
>>833
3yy
2018/12/31(月) 00:07:53.33
>>833
ネタかもしれんがマジレスすると
3yy

y3l でもいいが yy が楽だし、yy は vi の基本
同様に削除は dd
y は yank (ヤンク)
2018/12/31(月) 00:10:43.10
>>834
vim -c 5j file
2018/12/31(月) 00:12:05.32
俺もヤングしたいぜ
2018/12/31(月) 00:19:19.98
>>835
そっかサンクス
2019/01/01(火) 14:51:06.31
今年もお世話になります
現在地から下を全削除する時は9999ddみたいにしてるけど他に方法あるかな
後バッファを保存するショートカットって作れないかな
ZZしてもvimが維持すればCtrl+S代わりに使えるんだけど
2019/01/01(火) 14:53:57.29
全削除はVGdでやってる
2019/01/01(火) 15:06:15.58
セッションを使う
843名無しさん@お腹いっぱい。
垢版 |
2019/01/01(火) 21:01:26.83
>>840
:,$d

現在行(. 省略可)から最終行($)までを削除(d)
2019/01/01(火) 22:46:53.95
色々あるんだな
>>843
現在行から上の削除は:,^dじゃないよね
2019/01/01(火) 22:49:21.50
Vimのコメントを全て削除する方法はありますか?
アンコメントではなくてコメント自体を削除したいです
846名無しさん@お腹いっぱい。
垢版 |
2019/01/01(火) 23:12:57.48
>>844
それは「1行目から現在行」を指定する
:1,.d
または . を省略して
:1,d

詳しくは :help ranges
4. Exコマンドラインの範囲
https://vim-jp.org/vimdoc-ja/cmdline.html#cmdline-ranges
2019/01/02(水) 00:35:12.43
>>846
ありがとね
カンマの扱いがブレース展開に似てるな
2019/01/02(水) 15:14:16.79
dG
849名無しさん@お腹いっぱい。
垢版 |
2019/01/02(水) 23:04:51.57
どうしてpythonのprint関数や、input関数はデフォルトのsyntaxでハイライトされるのにrubyやc++のprintfなどはデフォルトでハイライトされないんですか
2019/01/02(水) 23:09:06.27
>>849
同梱のftpluginでも作者が別々だったりする
2019/01/04(金) 00:15:28.14
Windows10で、markdownをvimで書いて、プレビューとかしたいのだけど、
そのような、プラグインを入れるには、
NeoBundleとか、gitとか必要になるような、記事をみつけたのだが、
ハードル高い。
素のvimに、簡単に入れられる、markdownのプラグインとかないの?
2019/01/04(金) 00:47:16.51
git使えないならvimは諦めろ
2019/01/04(金) 01:04:25.60
>>851
プレビューに他のツールが要らないのはprevimかな
https://github.com/previm/previm

vim 8以降なら特定のフォルダにプラグインフォルダを作れば読み込んでくれるので、
previmのreleasesページから落としたzipを解凍して、そのフォルダに放り込めばいい
http://tyru.hatenablog.com/entry/2017/12/20/035142
2019/01/04(金) 13:41:42.99
Vim使うよりMarkdownエディタ使ったほうが幸せになれそう
キーバインドがって話ならVim風にできるのもいろいろあるし
2019/01/04(金) 14:27:47.05
vim8じゃなくても手動でvimfilesに全部ぶち込めばいいだけだろ
2019/01/04(金) 17:06:21.39
手動で暫くやってるとgitとかプラグイン管理用プラグインとか使って自動化した方が明らかに楽だと自然と気付くんだよな
2019/01/04(金) 21:54:39.81
851です。

C:\Users\UserName\.vim\pack\mypack\start
C:\Users\UserName\.vim\pack\mypack\opt
を作って、
previm-master.zip
open-browser.vim-master.zip
を、ダウンロードして、展開して、フォルダ名を
previm-master を previm、open-browser.vim-master を open-browser.vimにリネームして、
フォルダを、
C:\Users\UserName\.vim\pack\mypack\start
に複写した。

.vimrc に
set packpath=C:\UserName\.vim\pack\mypack\
とする。
vimを起動して、
OpenBrowserとかしてもて、
E429: エディタのコマンドではありません
となる。
:set で確かめると、packpathがruntimepathに追加されていない。

vim本体の
C:\soft\vim\vim81-kaoriya-win64\plugins
に、previmとopen-browser.vimを置くと、
open-browserは動くけど、previmはダメ。

仕方がないので、
VisualStudioCodeを入れてみたら、markdownがプレビューできた。(;・∀・)
2019/01/04(金) 22:55:00.36
>>857
Windowsは .vim じゃなくて vimfiles だぞ
2019/01/05(土) 01:25:43.42
windowsが悪いわけじゃないけど
windowsが当たり前って感覚だとそういう悲劇が起こる
2019/01/05(土) 06:34:25.49
プラグイン管理はpathogenからNeoBundleに移ったな
pathogenはローカルだけだから導入はプラグイン一式を~/.vim/bundleへ放り込むだけ
全部読み込むから一部を無効にしたりできないけどプラグインが少ないならこれでも十分
NeoBundleは反映させるのにコマンドがいるけど更新が楽になるから重い腰上げて移った
プラグイン管理の設定自体が煩雑化するのは勘弁だな
2019/01/05(土) 09:21:20.57
vim標準のプラグインマネージャってあんまり使われてないのかね
2019/01/05(土) 12:42:53.99
こども・思春期メンタルクリニック勤務
風俗で働いていたのを隠している窃盗常習犯

浅野美穂子のご尊顔
フェイスブックアカウント
https://ja-jp.facebook.com/people/Mihoko-Asano/100004950612842

こども・思春期メンタルクリニック
03-5579-2795
〒162-0845
東京都新宿区市谷本村町3-22ナカバビル9A
http://www.kodomo-mental.com/clinic/staff
2019/01/05(土) 14:56:19.38
>>861
vim自身に搭載されてるって周知されてないだけじゃね
知る人ぞ知る隠し機能じゃ意味ないもの
後は肝心の機能が半端だとか
vimの新機能調べるより外で拾った方が楽だしな
2019/01/05(土) 15:31:59.24
自分は vundle から使い始めて今は vim-plug 使ってるけど、不満がないから vim8 標準のプラグインマネージャーのドキュメント読んで利点があるかどうかと使い方調べて.. って時間かける気にならないわ
2019/01/05(土) 17:28:06.53
deinからすると機能が足りない
2019/01/05(土) 17:50:02.25
https://qiita.com/nil2/items/ddcf23f1163d0abd805b
船頭多くしてなんとやら
2019/01/05(土) 20:18:16.84
Vim8の標準パッケージマネージャ、けっこう使いやすいけどね。
ただ別に解説するほどの目新しい機能がある訳じゃなし、情報としては少ないかもね。
868名無しさん@お腹いっぱい。
垢版 |
2019/01/05(土) 23:08:51.85
どんなときに使うんだよ
gitからクローンしてきて(n)vimのプラグインフォルダにぶちこむだけだろ…
869名無しさん@お腹いっぱい。
垢版 |
2019/01/05(土) 23:20:14.76
>>866
ああ遅延ロードが出来るのか
テーマ、数言語のリンター&docや定義ジャンプ、ナードツリーと計10位入れてる程度じゃ変わらんし、俺みたいなライトユーザには関係ない世界だな
2019/01/06(日) 06:01:58.61
括弧の自動補完機能を使ってるんだが、例えば
double power(double a);
と入力したいとき、
double power
まで打ってから ( を入力すると
double power(I)
となる。ただし、Iはカーソルを表す。

次に double a を打つと
double power(double aI)
となるわけだが、これから括弧の外に出るときってどうしてる?

Esc 押して移動してまた挿入モードに戻ってるんだが、これダサい?
2019/01/06(日) 07:17:09.33
>>870
俺が使ってる auto-pairs というプラグインは挿入モードのまま閉じ括弧を入力すれば外に出してくれる
2019/01/06(日) 07:40:10.99
閉じ括弧を入力するかC-o aを気分で使い分ける
2019/01/06(日) 10:39:50.89
こういう時はカーソルキーでサッと解決
フルキーの恩恵を最大限活用しよう
2019/01/06(日) 10:45:25.79
カーソルキーに指伸ばすより一旦ノーマルモードに抜けて移動させた方が速い
2019/01/06(日) 12:37:46.39
inoremap <C-l> <Right>してるけど、エスケープしてAしちゃう
2019/01/06(日) 12:57:12.12
ありがとうございます。
閉じ括弧が一文字であれば、自分で閉じる方が速いですね。
しかし LaTeX における &#165;left( &#165;right) のような長い括弧や、({}) のような入れ子構造の括弧だといつも迷います(迷うより早く Esc を押しますが)

挿入ノーマルモードに戻るか、挿入モードにおける C-f、C-b を前、後ろに割り当てるのが良いですかね。
2019/01/06(日) 18:54:11.20
おれはc-f, c-bを使う
このときundo履歴を分割しないように設定してる

LaTeXは知らん
2019/01/07(月) 17:24:10.77
括弧と言えば%で対応する括弧へ移動できるけど【】や『』も対象に出来ないかな
全角(){}<>「」に対応してるからさほど困らんが案外【】も使うんだよな
【foo bar】でも移動させたい
2019/01/07(月) 18:58:08.24
>>878
'set matchpairs+=【:】' でいけたぞ
これだけでテキストオブジェクトにはならない模様('ci】'とかは無理)
2019/01/07(月) 23:44:06.55
>>879
すまん
自分の.vimrcに思いっきりmatchpairs載ってた
そもそも全角括弧に対応ってんだからそりゃそうだ
設定のコピペだけじゃイカンな
2019/01/10(木) 15:39:44.31
普段使うコマンドくらいは自前でカンペ作った方がいいと思う
サイトのコピペでもmanのコピペでもいいからさ
そのためのブログなんだろうけどそんなやる気ないしな
2019/01/15(火) 21:39:04.73
【急募】vimで拡張正規表現を使う方法
2019/01/15(火) 22:05:40.20
http://deris.hatenablog.jp/entry/2013/05/15/024932
2019/01/15(火) 22:14:35.39
>>882
:h /magic
2019/01/18(金) 17:52:39.46
ついに首位陥落か

Vim三連覇なるか!? 激動の2018年人気NO.1テキストエディタを発表!
https://job-draft.jp/articles/323
2019/01/18(金) 19:22:00.18
多機能エディタで入力方法は「Vim風」にする、ってのが普通だと思っていたが、Vimそのものの使用率が凄い高いんだな


全世界版も見てみたいところ
2019/01/18(金) 19:38:10.63
vim から他のエディタに移るって、どういう層なんだろう
自分はプラグイン沢山入れてるから、キーバインドが vim 風ってだけでは
他のエディタに移れない
2019/01/18(金) 19:47:12.14
vimを多機能エディタ風にする人
多機能エディタをvim風にする人
2019/01/18(金) 20:05:59.62
vimは歴史が長いからほとんどの場面で一般的な多機能エディタそのものになれるが、多機能エディタ側はvimのごく一部を模倣するしかできていないのが現状
vsとかvscodeのエディタ部分に本物のvim嵌め込んで連携させられればかなりいいんだけど
2019/01/18(金) 20:46:55.49
Vimを多機能化するってアプローチは本当に寒いと思うわ
拡張性で行ったらlispとかnode.jsに勝てるわけねぇし


>>889
それはあるかもな
現状spacemacs (というか evil?) が一番上手くVimをエミュレートできてるというのは皮肉な話だ
2019/01/18(金) 21:37:24.98
さすがにVimからvscodeに乗り換えたわ。手軽だし見やすいし使いやすいでVimが勝てるところがないし
2019/01/18(金) 22:19:23.77
はいはい
2019/01/18(金) 22:43:05.37
てかIDEでvimキーバインド使うの最強じゃね?
intelijでvimプラグイン使ってるんだけど
本来のIDEのショートカットが使えなくて困る
解決方法教えてくまさい
2019/01/18(金) 22:53:15.78
>>893
Emacs
2019/01/19(土) 04:20:48.08
vimに慣れてきた辺りの全能感は異常
んで深淵に入り込んで後悔する
2019/01/19(土) 13:09:30.60
20年以上使ってるけどoで入ってESCで抜ける
その間はメモ帳と同じ程度の操作しかしないって感じだ
行の連結のためにJを覚えさえすれば極普通に使える
2019/01/19(土) 14:34:26.40
そのESCもいちいち遠くのキー押すのアホくさと思ってたらCtrl+[で代用できるっていうね
こんなの普通気付かんわ
2019/01/19(土) 14:52:16.77
気付くも何も、ヘルプとか自分で調べない限り操作方法なんて分からないだろ
899名無しさん@お腹いっぱい。
垢版 |
2019/01/19(土) 15:01:46.44
Insを抜ける時はカーソル移動する時なので、hh,jj,kkに割り当ててる、ついでに保存も
合理的なはず
llだけはallなどの単語と被るのでlllにしてる
2019/01/19(土) 17:34:05.57
jjとか2回押すよりC-[だな
2019/01/19(土) 20:04:01.72
日本語が有効な状態でキー入力する方法ない?
そのまま挿入モードにしようとして失敗したことくらいお前らにもあるだろ
っdでddやれないもんかね
2019/01/19(土) 21:52:58.15
map
2019/01/21(月) 16:21:38.66
シンタックスハイライトの走査を
文字を書き込んでいる最中には停止して
書き終わってノーマルモードに戻ったときに評価するようなこと
って可能ですかね。
2019/01/21(月) 19:45:20.21
可能です
2019/01/22(火) 13:40:24.38
お世話になります。
Vim の7.2(だったかな?)なんですが、長いソースコードを読み込むとシンタックスカラーが適用されないんです(泣)
再度適用するコマンド(だったかな?)を実行しても駄目です。
.vimrcのどっかになんかのサイズを大きくする(?)オプションあったような気がするんですけど、ご存知の方、教えくださいm(_ _)m
2019/01/22(火) 15:59:52.46
>>905
Vim の version は8.1 でした。
2019/01/22(火) 17:33:45.07
1行が長いならset synmaxcol=0
2019/01/22(火) 21:51:30.57
>>907
一行が長いわけではなく1ファイルの行数が多かった、のですが、
synmaxcol=0 を試したところ上手くいきました。
ありがとうございます。
2019/01/23(水) 00:40:11.90
今後のために :helpgrep からの :copen を憶えとこうか
2019/01/23(水) 08:41:02.42
お世話になります。
matchit.vim のことで。

<ul.*>:</ul>,<ol.*>:</ol> の組み合わせが上手く動作しないです。
<table.*>:</table> 等、他は問題ない(みたい)です。

何故か </ul> から <ul> への上方向には移動しますが、
<ul> から </ul> への順方向には移動しません。

お分かりの方、いませんか?
2019/01/24(木) 09:49:52.85
>>910
これじゃね
https://stackoverflow.com/questions/11851320/matchit-skips-to-next-list-item-in-html-instead-of-closing-tag/11852359#11852359
2019/01/24(木) 11:01:44.52
>>911
すばらしい!
そのものズバリですね。
日本語サイトばかり調べていたので気が付きませんでした。
<ul> の場合は % で次の <li> に進むんですね。
g% なら </ul> に。
でも記事どおりに match_words を編集して、<ul> と </ul> を対応するようにしました。
ありがとうございましたm(__)m
ところで、なんでこんな情報まで知ってるんですか?
2019/01/24(木) 15:23:42.15
神回答者を煽っていくスタイル
914911
垢版 |
2019/01/24(木) 18:06:31.69
>>912
知ってたわけじゃないけど、どういう仕組みになってるんだと思って matchit.vim ul ol をキーワードにして検索すると一番上に出てきたぞ
SOの例だと ol と li の質問だったけど、b:match_words にパーサーの定義があってこれを編集すればカスタマイズできると書いてあった
2019/01/24(木) 22:26:42.49
私自身はVimを使い続けたいと思っているのですが
vscodeよりVimのが適している状況があまり思いつかなくて悩んでいます。

今の私のVimの出番はリモート接続やコマンドラインで編集したいときと
貧弱マシン使うときくらいです。
活用方法があったら教えてください。
2019/01/24(木) 22:42:21.44
vimの何が好きか知らないけどcodeでいいならcodeのvimキーバインドでいいんじゃない
2019/01/25(金) 00:10:53.19
それな
でもVSCの本来のショートカットが使えなくなる問題はあるよ
2019/01/25(金) 18:22:19.02
jedi-vim 入れたら数文字入力するたびに
.vim\dein\.cache\_vimrc\.dein\pythonx\jedi\jedi\evaluate\compiled\subprocess\__main__.pyなるファイルが
別窓で開いて全く動作しないのですがどうすればよいのでしょうか。
Windows版KaoriyaVim、Python3.5、jediインストール済みです。
2019/01/25(金) 21:24:20.05
#include "myheader.h" // myheader.hにaiueoaiueoと書いてある。
aiu
この状態で<C-n>をタイプするとVimのもともとの機能でaiueoaiueoと候補が表示されてくれるのですが
Neocompleteを使うことで<C-n>とタイプしなくても自動で表示されて欲しいです。

clangをインストールして他にプラグインを追加すればできるような説明がよく検索に引っかかるのですが
clangなし、他のプラグインなしでNeocompleteの機能だけで自動表示させる方法はないでしょうか?
2019/01/26(土) 19:11:16.47
#include <gtk/gtk.h>
int main()
{
gtk_widget_set{ここで<C-x><C-i>}
とするとすべてのファイルを探しに行ってしまって
帰ってこなくなってしまうのですがすばやく補完を表示する方法はないでしょうか?
2019/01/26(土) 21:31:09.53
>>920
<C-W><C-F>でヘッダを開いてから<C-N><C-W>で補完してみては
かなり邪道な気もするが
2019/01/26(土) 21:57:53.15
他のブラウザなり何かでコピーしたものをヤンクのレジスタにいれられます?
2019/01/26(土) 23:45:31.48
set clipboard&
set clipboard^=unnamedplus
クリップボードにヤンク文字列を入れるならこれ
vimが独自のクリップボードを持ってるからシステムとコピペできないとか実にふざけてる
2019/01/27(日) 06:49:32.00
クリップボード関連はプラットフォームとかvimの種類とかで違うでしょ
まず環境晒さないと
2019/01/27(日) 09:18:31.08
Ubntu18.4 pycharm Idea Vim pluginです
926921
垢版 |
2019/01/27(日) 13:11:50.18
>>920
921の方法はダメダメだった
そもそも <C-X><C-W> なんてコマンドはない
正しくは <C-N> で 'complete' オプションに w が入っていれば他ウィンドウからの単語が候補に入ることを利用したかった
しかしヘッダが他のヘッダをインクルードしているだけの場合はうまくいかない

で、代替案は :h ft-c-omni を見てもらいたい
ここではシステムの全てのヘッダの tags ファイルを作ってしまうという荒技が紹介されている
この方法では使うつもりのないライブラリの識別子までタグ補完の候補に入ってしまうので、使いたいライブラリのヘッダだけを ctags の対象にすればいいと思う
/usr/include 以下の全ヘッダから tags を作って試してみたが、 <C-X><C-I> よりかなり高速に補完できる
2019/01/28(月) 08:23:51.02
:Fontzoom +1でGVimのフォントサイズを1増やせるプラグインを使用しているのですが
フォントサイズを変更するたびにウィンドウのサイズも変えたいです。

以下の設定では一瞬ウィンドウのサイズが変更されるのですが、すぐにもとに戻ってしまいます。
nnoremap <C-Up> :Fontzoom +1<CR>:set lines-=2<CR>:set columns-=2<CR>
どうすれば期待した結果を得られるのでしょうか。
2019/01/29(火) 21:54:56.79
>>926
回答ありがとうございます。
ヘッダ内のキーワードが自動で表示されてほしかったので
Neocompleteでどうにかできないか調べてみたのですが
Shougo/neoincludeというプラグインがあって、
これを入れるとソースコード保存時にチェックが走って
その後、自動でヘッダファイル内のキーワードが補完されるようになりました。
2019/01/30(水) 23:32:56.25
一行選択を<S-V>でできるようですが改行コードを含めずに一行選択する方法はないでしょうか?
2019/01/30(水) 23:53:18.10
v$hと同じことを?
2019/01/31(木) 10:39:54.63
改行を含まない行をテキストオブジェクトとしてLに当ててる。選択ならvilかval

xnoremap il g_o^o
xnoremap al g_o0o
onoremap <silent> il :<C-u>normal! ^vg_<CR>
onoremap <silent> al :<C-u>normal! 0vg_<CR>
2019/01/31(木) 13:53:50.16
今になってvim-surround入れたけど空白なしで囲むにはどうすりゃいい
2019/01/31(木) 14:17:49.51
>>932
2019/01/31(木) 15:25:13.97
>>933
それは盲点だった
後括弧をまとめて消すにはどうすりゃいい
(foo)
(bar)
dsやろうにも範囲選択後にd押しても行自体が消えるよね
2019/01/31(木) 16:52:56.58
daW
レス数が900を超えています。1000を超えると表示できなくなるよ。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況