X



vim Part 6©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。 転載ダメ©2ch.net
垢版 |
2015/01/13(火) 13:05:45.21ID:JwnBl2Yv0
主にWindows環境でのVimについてのスレッドです。

本家: http://www.vim.org/
Windows版バイナリ配布: http://www.kaoriya.net/
vim-jp: http://vim-jp.org/
VimWiki: http://vimwiki.net/
ctags 日本語対応版: http://hp.vector.co.jp/authors/VA025040/

名無しのVIM使い(スクリプト) http://nanasi.jp
spanish passion Linux(全オプション) http://www15.ocn.ne.jp/~tusr/
ずんWiki http://www.kawaz.jp/pukiwiki/?vim

関連リンク
UNIX板 Vim Part22: http://peace.2ch.net/test/read.cgi/unix/1365071542/
MacVim 再び: http://anago.2ch.net/test/read.cgi/mac/1133534694/
前スレ vim Part 5: http://anago.2ch.net/test/read.cgi/software/1379912425/
0798名無しさん@お腹いっぱい。
垢版 |
2018/08/22(水) 18:19:24.14ID:SGC9XhDa0
>>796
インストール、文字入力、プラグインの入れ方、等の入門編だった
このスレの住人なら、実践Vim 方がためになると思う
0799名無しさん@お腹いっぱい。
垢版 |
2018/08/22(水) 21:07:13.24ID:y6BELLzR0
>>798
どうもありがとう
実践Vim気になってるんだけど、紙のはもう売ってないみたいね
オライリーのメガネ猿のは持ってるから、それ以降のバージョンの事と最新のプラグイン周りの事まとまったのが読みたい

技術書、入門書のスレってどこかにある?
0801名無しさん@お腹いっぱい。
垢版 |
2018/08/23(木) 20:02:53.34ID:QrzTL7fT0
ノーマルモードの<S-Space>って移動?選択?それとも環境依存?
0802名無しさん@お腹いっぱい。
垢版 |
2018/08/23(木) 20:48:59.82ID:ep291Wl50
ぶっちゃけvim関連の書籍って役に立つの?
今はマニュアルの日本語化が進んでるからそれで十分じゃない?
0803名無しさん@お腹いっぱい。
垢版 |
2018/08/23(木) 21:35:10.18ID:/zS7TY/I0
これから使い始める人には必要でしょ
Vimのヘルプは充実しているけれど
初心者は適切なヘルプキーワードを知らないからな
0806名無しさん@お腹いっぱい。
垢版 |
2018/08/24(金) 01:49:42.87ID:hzCq7NQG0
>>804
ヘルプは量が多すぎるから辞書代わりにキーワードを指定して調べ物するにはいいけど、最初から最後まで通して読むには向いてない
一方で紙の本は何も知らない初心者が要点をかいつまんで最初から通して読める分量になってるでしょ
0809名無しさん@お腹いっぱい。
垢版 |
2018/08/24(金) 17:59:49.67ID:aKWroCFh0
どんなに厚い本でも目次や索引があれば検索自体は容易なのでは?
Linuxからしてそうだがこの界隈は説明書読むのに説明書がいるんだから同じ尺度で考えちゃいかんよ
そして利用者はその煩雑な手間を学習に向くだの楽だのしか言わないから面白い
0810名無しさん@お腹いっぱい。
垢版 |
2018/08/24(金) 19:33:39.41ID:w/E6eQSk0
そもそも用語とか概念とかを知らないと索引があっても検索のやりようがないから入門書は重要
例えばテキストオブジェクトという概念を知らなければいきなり登場したciwについて調べようがない
0811名無しさん@お腹いっぱい。
垢版 |
2018/08/24(金) 22:10:09.20ID:7mJYpxtK0
>>810
例が悪くない?
help.jaxのど頭21行の知識
> 移動: カーソルを使用するか、"h" で左、"j" で下、"k" で上、"l" で右に移動できます。
> 項目へジャンプ: タグ (例: |bars|) にカーソルを合わせ、CTRL-] を押します。
> 元の場所に戻る: CTRL-T or CTRL-O を押す。繰り返すと更に戻れます。
> ノーマルモードコマンド :help x
だけで
:help c
{motion} の上で CTRL-]
motion.txt の上で CTRL-]
と簡単にたどり着けてしまう
0812名無しさん@お腹いっぱい。
垢版 |
2018/08/25(土) 04:06:50.82ID:KpEQ/+cK0
いくらヘルプを日本語化しようが:helpは日本語で検索できないからね仕方ねいね
・vimのヘルプを日本語化する
・man vimでヘルプの出し方を調べる
・どのヘルプファイルに調査対象の文字があるかをgrepで調べる
・$ vim +:"help"でヘルプを開く
・該当するヘルプファイルのタグでC-[
・/で目当ての文字を検索
man vimだってmanの存在知ってる前提だからな
英語だったら翻訳の手間いるし説明書読むのに説明書がいるってのはこういうことだ
0813名無しさん@お腹いっぱい。
垢版 |
2018/08/25(土) 04:59:37.57ID:roW6uKsx0
>>811
それは c と i と w がそれぞれ意味を持っていることを知ってるから :help c を実行しようと思うんだよね?
>>810の言うようにまだvimに馴染んでない初心者が :help ciw としたところで何も見つからない
0814名無しさん@お腹いっぱい。
垢版 |
2018/08/25(土) 06:48:34.74ID:t8GWWwbu0
同人誌で良いから詳細でとっても分かりやすい説明書出してよ
pdfじゃなくてちゃんと紙の書籍で
0815名無しさん@お腹いっぱい。
垢版 |
2018/08/25(土) 06:50:28.78ID:t8GWWwbu0
90年代のころと違ってもうEmacsよりVimの勝ちだと思ってたんだが、Emacsスレのほうが賑わってるんだな
ネットだとEmacsの書き込みはここ数年前世見なくなったのに。
0817名無しさん@お腹いっぱい。
垢版 |
2018/08/25(土) 07:07:49.14ID:4ZgGaqlm0
>>812
日本語検索できるぞ。それと :helpgrep あるぞ
:helpg 表示

を入力して :copen してみ?
もちろん日本語helpは導入済みの前提
0822名無しさん@お腹いっぱい。
垢版 |
2018/08/26(日) 08:50:19.20ID:5laNvpcm0
ノーマルモードの<S-Space>って移動?選択?それとも環境依存ですか??
0823名無しさん@お腹いっぱい。
垢版 |
2018/09/19(水) 10:59:09.79ID:uqGsrb9Z0
人いねぇ\(^o^)/
.viminfoに重複履歴があったけど重複保存の回避ってできないかな
bashのHISTCONTROLと似たことしたい
.viminfoでsort+uniqしちゃいかんしソートせずに重複を消すコマンドがあればいいんだけど
0824名無しさん@お腹いっぱい。
垢版 |
2018/09/22(土) 20:21:48.21ID:Rx0HRi/N0
ノーマルモードの<S-Space>って移動?選択?どちらですか?
0825名無しさん@お腹いっぱい。
垢版 |
2018/10/24(水) 04:23:56.08
選択した行について、Shellのsortを呼び出して、結果と今の選択行をそっくり入れ換えるにはどうしますか?
0827名無しさん@お腹いっぱい。
垢版 |
2018/10/24(水) 08:59:05.20ID:AoOvd0j20
shellのsortを呼び出したい案件なのかもしれませんがvimにsortありますよ
実行は!付けるか付けないかの違いでしかないですが
0828名無しさん@お腹いっぱい。
垢版 |
2018/10/24(水) 17:11:24.99
06'17 Mastering Bash
06'11 GNU Octave Beginner's Guide
10'15 LaTeX Cookbook
08'16 Unreal Engine: Game Development from A to Z
02'12 gnuplot Cookbook
09'12 Blender Game Engine: Beginner's Guide
08'14 Blender 3D Basics Beginner's Guide Second Edition
06'13 SDL Game Development


らの行を選択して、ソーティングしたいとします。但し左の数字列は 出版月'出版年 です
時系列で降順ソートにしたいです。同じ出版年月の本内の順序は問いません

Bashだと
sort --field-separator=\' -n -r --key=2,1
でできました
Vimだとどうやるのか、ちょっとうまくいきません
0829名無しさん@お腹いっぱい。
垢版 |
2018/10/24(水) 19:22:31.95ID:kljbF+SH0
>>828
同じじゃない?
1) カーソルが一番上にある状態で Shift-v でビジュアルモードに入り、G で最終行まで選択して反転させる
2) : (セミコロン) でコマンド入力 (実際には :’<,’> と表示される) モードになるので続けて !sort <オプション> を実行
実際には以下のようになる
:’<,’>!sort ―field-separator=¥’ -n -r ―key=2,1

それともOS (shell?) コマンドの !sort じゃなくてvim内蔵の sort でやりたいけどできないってこと?
0831名無しさん@お腹いっぱい。
垢版 |
2018/10/25(木) 14:12:09.36ID:56iiKbpE0
!は先頭か末尾かで意味変わるのかよ・・・
連番挿入ってひょっとしてvimで!seqした方が手っ取り早いのか?
0832名無しさん@お腹いっぱい。
垢版 |
2018/10/25(木) 15:40:44.63ID:6mJiKCPg0
ぐへへ

let Sort_by={list,fn -> sort(list,{a,b -> fn(a) > fn(b) ? 1 : -1 })}
let Target={line->substitute(line,"^\\(\\d\\d\\)'\\(\\d\\d\\)",'\2\1',"i")}
call setline(1,Sort_by(getline(1,'$'),Target))
0833名無しさん@お腹いっぱい。
垢版 |
2018/10/25(木) 17:17:04.84ID:6mJiKCPg0
これでどうやろ
久しぶりに書いたんで自信ないけど

command! -nargs=* -range=% -bang Sortby call s:Sortby("<bang>",<line1>,<line2>,<f-args>)

function! s:Sortby(bang,line1,line2,pattern,replace)
let l:Target={string -> substitute(string,a:pattern,a:replace,"i")}
let l:Sort_by={list,fn -> sort(list,{a,b -> fn(a) > fn(b) ? 1 : -1 })}
call setline(a:line1,l:Sort_by(getline(a:line1,a:line2),l:Target))
endfunction


:Sortby ^\(\d\d\)'\(\d\d\) \2\1
0836名無しさん@お腹いっぱい。
垢版 |
2018/11/03(土) 10:34:41.18ID:6YsUOUsx0
行の最初に挿入か置換するのどうするの?
0で行の最初にカーソル持ってきてPを押すと2文字目にペーストされてしまう
0840名無しさん@お腹いっぱい。
垢版 |
2018/12/14(金) 10:39:55.81ID:zMl2kJLu0
コマンドラインモードで範囲内の文字列の切り取りとペーストを一度に行いたいです。

例えば

:3,7何とか

とすると、「3行目から7行目までが削除され、かつカーソル位置にペースト」
できれば嬉しいのですが、方法は有るでしょうか?
削除が必要なければ t を使えばいいのですが。

vim のデフォルトの機能でお願いします。
0843名無しさん@お腹いっぱい。
垢版 |
2018/12/15(土) 15:04:27.04ID:AxYvfncu0
>>841
できました。
ありがとうございました。

>>842
まさに >>841 で実現できることです。


ところで、こういう t や m などの他に
コマンドラインモード内で使えるもので何があるか調べたいのですが、
ググり方あるいはヘルプの出し方が分かりません。

ググっても、便利な機能やテクニックとして一部は載っていますが、
一覧表は無いのでしょうか?
0845名無しさん@お腹いっぱい。
垢版 |
2018/12/16(日) 02:50:07.86ID:xKmt6fWU0
vimはシェルみたいに入力補完できるから:hの後にTab連打すれば一応コマンド一覧は出せる
:h hならh開始、、:h wqならwq関連、:h CTならCtrl関連と頭出しもできる
同じ操作系列の抽出?知らない子ですね・・・
0847名無しさん@お腹いっぱい。
垢版 |
2018/12/18(火) 23:59:08.33ID:NAmpspOE0
vimのコマンドは大量だけどちょっと覚えればいいのがいい
込み入った作業だと結局ググらにゃならんが
0848名無しさん@お腹いっぱい。
垢版 |
2018/12/21(金) 05:55:00.21ID:lWCbnvA90
検索とか置換とか基本機能のショートカットくらい表示しても罰は当たらないのでは?
nanoは色々残念だし
0852名無しさん@お腹いっぱい。
垢版 |
2018/12/23(日) 05:10:49.76ID:FYLXtOl40
マクロやマークは何それ状態だな
レジスタ操作もクリップボードと共有してclipman使ってるしな
なまじ独自のクリップボードを持ってるからvim以外でコピペ出来ないとか初見殺しも大概にせえよ
0853名無しさん@お腹いっぱい。
垢版 |
2018/12/24(月) 10:23:18.37ID:ohIff08a0
確かに初めてコピーしようとしたときは困った
0854名無しさん@お腹いっぱい。
垢版 |
2019/01/14(月) 23:56:36.81ID:mpbj/udC0
4kディスプレイにしてwindows10でスケーリングしたら
日本語フォントが重なって表示されるようになってしまった
どこの設定変えたらいいのかわからない
0855名無しさん@お腹いっぱい。
垢版 |
2019/01/21(月) 13:52:53.56ID:O0jjdPU70
スケーリングを100に戻して4kを捨てて無意味さをレビューで広める
Windowsのスケーリングを100以上にして使うと色んなソフトでレイアウトが崩れる
UIは100で作ってる人が多いので考慮してないからだろう、Winのスケーリング自体がヘボなのもある
0856名無しさん@お腹いっぱい。
垢版 |
2019/01/22(火) 01:16:07.56ID:/cE/cHLW0
いろいろやってたらいつの間にかちゃんと表示されるようになった
何が違うのかわからんけど面倒だからもういいや
vimに限らずwindowsのスケーリングほんとくそだわ
0857名無しさん@お腹いっぱい。
垢版 |
2019/01/22(火) 15:47:25.06ID:DLAlBnE+0
分かったのでツイッターにでも書いてください
0858名無しさん@お腹いっぱい。
垢版 |
2019/01/24(木) 07:28:56.28ID:1nHG9+Vp0
使い始めて3ヶ月くらいの初心者です。
ゆっくりではありますが、テキストオブジェクト?の扱いにもようやく慣れてきて、他のエディタで編集するよりはサクサクと動かせるようにはなってきた状態です。

今の所プラグインは一切手を出していない状態なのですが、「これはほぼ必須」というような定番のプラグインなどはあるのでしょうか。
言語などにもよるとは思うのですが、汎用的で、いろんな言語で扱えるような、便利な定番プラグイン等がありましたら、ぜひ教えていただきたいです。
0859名無しさん@お腹いっぱい。
垢版 |
2019/01/24(木) 08:43:54.83ID:4N9xPpDc0
>>858
やめとけ
今困っていることがあってそれが何のデメリットもなしに
解決できる夢のようなプラグインがあると知った時にのみ検討すべき
いじればいじるほど汎用性がなくなり動作が怪しくなり煩わしくなっていくのがエディタというもの
0860名無しさん@お腹いっぱい。
垢版 |
2019/01/24(木) 08:57:03.38ID:y7ZLx/tW0
>>858
vim-surround
括弧で囲むオペレータを追加する。これだけはなぜ本体に同等の機能がないのか不思議に思うレベル
0861858
垢版 |
2019/01/24(木) 09:43:34.64ID:1nHG9+Vp0
>>859
なるほどー。確かに今特別に困っていることは無いです。
最初の目標として、プラグイン無しの状態である程度使いこなせるようになったら、何か導入しようと考えていたのですが、
考え方としては間違っていなかったようで安心しました。ありがとうございます。
vimについて調べていると、入門向けの記事と銘打っていても、プラグインを入れているという記事が結構出てくるので、
最初から使ってしまうとvim本体の機能なのか、プラグインの機能なのか分からなくなるのではないかと、疑問に思っていました。

>>860
調べてみた感じだと、確かにこれはデフォルトであってもよさそうな便利な機能ですね。
言語等選ばず使えるプラグインだと思いますので導入させていただきます。

ひとまず>>860さんのプラグインのみ導入して、もう少し基礎的な部分も含めてしっかりと使いこなせるようになりたいと思います。
お二方ともありがとうございました。
また何かありましたら質問させてください。
0863858
垢版 |
2019/01/24(木) 10:04:56.28ID:1nHG9+Vp0
>>862
丁度surround-vimを手動で導入し終わってしまったところで、
URLのREADMEのgifを見て驚きました。大量に導入する人はこういうプラグインで導入や管理をする感じなんですね。
vim8自体にもこういう管理機能があるというのも初めて知りました。調べてみたいと思います。
勉強になりました。ありがとうございます。
0864名無しさん@お腹いっぱい。
垢版 |
2019/01/24(木) 20:58:05.75ID:OIN43BGk0
https://qiita.com/nil2/items/ddcf23f1163d0abd805b
この界隈っていつも数だけは一丁前だよな
プラグイン管理の設定自体が煩雑化する徹底っぷり
neobundle.vim
vimdoc-ja
vim-auto-save
vim-sensible
vsession
さして使わんからこの程度

後ヘルプの引き方も覚えるのが吉
.vimrcにこれを追記すればKを押した位置の文字でキーワード検索できるから
set keywordprg=:help
0866名無しさん@お腹いっぱい。
垢版 |
2019/01/25(金) 08:33:54.48ID:ZNxqC8k90
自分もいろいろプラグイン入れてきたけど、結局使うことが無くなりほとんど消した。
いま残っているのは tlist と自作のプラグインが数種。
0867名無しさん@お腹いっぱい。
垢版 |
2019/02/06(水) 20:17:44.80ID:26+uOqCH0
久しぶりにプラグインを入れようとすると、
自分がどのプラグイン管理を使ってたのか思い出せない
0871名無しさん@お腹いっぱい。
垢版 |
2019/02/11(月) 14:09:38.84ID:nKT53pah0
既存のプラグイン管理プラグイン管理プラグインがおかしい時
プラグイン管理プラグイン管理プラグインを自力で修正して
プラグイン管理プラグインでアップデートすると
プラグイン管理プラグイン管理プラグインが元の木阿弥になってしまう
あんまり多段にしないほうがいい
0872名無しさん@お腹いっぱい。
垢版 |
2019/02/11(月) 16:00:13.25ID:pnmSUMyl0
コールバック関数の括弧みたいにプラグイン管理するのやめてください
0874名無しさん@お腹いっぱい。
垢版 |
2019/02/11(月) 23:43:22.67ID:GOlwnBfh0
>>868
Windows版 gVim ならフォントレンダリング関連の改善入ってたと思うよ
フルカラー絵文字対応とかも
たしか日本の方々によるパッチだったはず
0875名無しさん@お腹いっぱい。
垢版 |
2019/02/12(火) 04:55:49.84ID:qxh7l1TJ0
snap flatpak appimage nix linuxbrew
考えたら汎用パッケージ管理からしてご覧の有り様だった
その内atoolみたいなの出そうだな
0876名無しさん@お腹いっぱい。
垢版 |
2019/02/16(土) 02:07:12.12ID:J3WRfr3qO
Pluginフォルダにgit cloneしてきたのそのまま放り込めば動くんだから、重くて遅延ロードする必要性が無い人にはおすすめしない
0877名無しさん@お腹いっぱい。
垢版 |
2019/03/18(月) 04:05:58.23ID:nfn9Kjba0
Align.vim プラグインについて質問です。

2つ以上の異なる文字を同じセパレータとみなして Align することはできますか?

たとえば、

foo [ bar
, baz ]

この2行の文字列に対して、文字 '[' と 文字 ',' を同じセパラレータとみなして Align を施し、
2行目の',' の前に4文字分の空白を挿入して、'[' と ',' の位置を揃えたいです。
0879名無しさん@お腹いっぱい。
垢版 |
2019/03/18(月) 08:10:24.78ID:ZUpL1fiC0
>>877
空白区切りで複数指定

:Align [ ,

正規表現として解釈されるので
:Align [[,]
とかでもok
0880名無しさん@お腹いっぱい。
垢版 |
2019/03/19(火) 14:44:20.88ID:WjiU/kh40
>>878
同カテゴリのプラグイン候補として検討してみます。

>>879
できました。
エスケープしなくても良いのですね。

ありがとうございました。
0881名無しさん@お腹いっぱい。
垢版 |
2019/03/20(水) 09:11:50.14ID:AhYDCE6/0
矩形選択でGで一番下かggで一番上の行まで選択するとき一番左にカーソル飛んでしまうですが何かいい方法ないですかね
0882名無しさん@お腹いっぱい。
垢版 |
2019/03/20(水) 09:42:57.61ID:38uSpGf90
>>881
set nostartofline
0883名無しさん@お腹いっぱい。
垢版 |
2019/04/19(金) 11:17:14.68ID:RnMAkgwq0
MSYSでは
finddir('Windows', '/c/Users;') " -> '/c/Windows'
finddir('Windows/..', '/c/Users;') " -> '/c'
win32では
finddir('Windows', 'C:\Users;') " -> 'C:\Windows'
finddir('Windows\..', 'C:\Users;') " -> 'C:\Users' なんで、'C:\'になるはずじゃないの?

win32のvimがおかしいのか自分の解釈が間違ってるのか
きっかけはvim-lspのroot_uriの設定でよくある'.git/..'を探すというもの
0884名無しさん@お腹いっぱい。
垢版 |
2019/06/14(金) 21:41:07.49ID:BuP/0kD20
質問失礼します
置換ABCD....を一括でやるのって↓しかないですか?
[vim] vimで複数の置換コマンドを一括で行う - 綾小路龍之介の素人思考 http://za.toypark.in/html/2010/02-22.html
.shみたいに書いといて使いたいときに呼び出して実行って出来ないですか?

他のエディタ(Mery)使ってた頃の置換整形マクロ.jsを移植したいんだけどvimの作法が分からないのでどこにどうしたらいいのやら……
0886名無しさん@お腹いっぱい。
垢版 |
2019/06/14(金) 22:06:19.33ID:PTAFofBY0
$HOME/.vimrc に書けばどこでも呼び出せる

function! Substitute()
s/foo/bar/
endfunction

:call Substitute()

Vim script はクセあるけど色々できるよ
:h func とかで Vim のヘルプ引くか、GitHub とかで人の vimrc 見ると良い
0889名無しさん@お腹いっぱい。
垢版 |
2019/06/15(土) 06:41:41.32ID:ods3+3Hj0
Vimのお作法がわからないのだからとりあえず「vim 作法」でググればvimrcでいろいろできることがわかる
置換というキーワードもわかっているので「vimrc 置換」でググればやり方もだいたいわかる
って感じでググれるといいね
0890名無しさん@お腹いっぱい。
垢版 |
2019/07/12(金) 00:35:02.13ID:MrC+N9Gj0
ヘルプと言っても所詮は知ってるコマンドしか引けないからな
逆引きがある訳じゃないしし
set keywordprg=:helpがあると多少楽になるよ
カーソル下の文字列で直接helpを開くKが有効になるから検索の手間が減る
ぶっちゃけvimtutorよりこっちを先に教えて欲しかったわ
拡張正規表現のnnoremap / /\vもあるといい
初期状態だとクリップボードも使えないし秘伝のタレ作りは丹精込めなきゃな
0891名無しさん@お腹いっぱい。
垢版 |
2019/08/07(水) 10:59:10.94ID:mN72oe9A0
最近USキーボードに変えたんだけど微妙に使いにくい
まあ基本的には慣れの問題なんだけど:がなれる気がしない
:を入力するのにshiftを押さないといけないけど:の次に打つ文字が大文字になってしまう
:と;を入れ替えればいいんだけどあまり変えたくない
0892名無しさん@お腹いっぱい。
垢版 |
2019/08/07(水) 11:11:49.74ID:mN72oe9A0
ググったら外人も:と;入れ替える人いるっぽいからやっぱり入れ替えるかな
他にUSキーボード使う上でオススメあったら教えてください
■ このスレッドは過去ログ倉庫に格納されています

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