トップページunix
988コメント268KB

Vim Part21

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2012/07/16(月) 01:09:05.70
Vim 6以降に関する話題、Part21です。
http://www.vim.org/

前スレ
Vim Part20
http://toro.2ch.net/test/read.cgi/unix/1322212163/

関連情報は>>2-6あたり。
0305名無しさん@お腹いっぱい。2012/09/15(土) 02:23:19.53
>>303
ちょっと違う。>>298 は一連の動作完了後も無名バッファを aaa のままにしておきたいのよ。
0306名無しさん@お腹いっぱい。2012/09/15(土) 02:26:02.23
>>305
ビジュアルモードpをレジスタを保持したまま置き換えをする自作関数にマップするしか
0307名無しさん@お腹いっぱい。2012/09/15(土) 02:59:13.23
>>298
俺は後に取っておきたいヤンクは
""y
とかで保管しておいて
"p
で貼り付けることにしてる

それか
nnoremap x "_x
vnoremap x "_x
を設定して消したい時はxを使うようにすると便利
0308名無しさん@お腹いっぱい。2012/09/15(土) 03:03:39.42
>>304
あの界隈のプラグインは
学習と設定にかかる時間 > 使うことで減らせる時間
な感じが否めないのであまりおすすめしない
見た目はいいんだけど
0309名無しさん@お腹いっぱい。2012/09/15(土) 05:52:59.58
そうか?vimfilerとvimshellしか使ってないけど
マニュアル読まずにスムーズに使えてる
vimfilerは2画面ファイラーを使ってた俺はすぐなじんだし
vimshellはemacsのeshellがやってきた気分で感動したが
本人の擁護じゃないよw
0310名無しさん@お腹いっぱい。2012/09/15(土) 07:57:27.23
Uniteばかりはわかりづらいと思う
0311名無しさん@お腹いっぱい。2012/09/15(土) 08:17:38.54
vimのtips集買ったけど、それでもuniteは使ってないわ。
0312名無しさん@お腹いっぱい。2012/09/15(土) 08:18:39.25
vimfilerは数行追加したらすぐ使えるしかなり便利
?でヘルプも出るし
0313名無しさん@Vim%Chalice 忍法帖【Lv=4,xxxP】(1+0:8) 2012/09/16(日) 00:29:32.47
色々消してスッキリしてきた
03142222012/09/16(日) 05:54:08.94
vimの設定ファイル関連で
if filereadable(expand('~/.vim/*.vim))
source ~/.vim/*.vim
endif
とするのと
set runtimepath+=~/.vim/
runtime! userautoload/*.vim
の違いは何でしょうか?
それとruntime!の意味が良くわかりません。
読み込め!的な感じですか?
0315名無しさん@お腹いっぱい。2012/09/16(日) 11:24:50.84
>>314
両方ともスクリプトを読み込むけど、
絶対パスで指定しなきゃいけないか、
自動でパスサーチしてくれるかの違いでは。
0316名無しさん@お腹いっぱい。2012/09/16(日) 18:49:02.91
その前にexpandは複数のファイルが展開される事もあるので、一行目からあやしくない?
0317名無しさん@お腹いっぱい。2012/09/16(日) 23:54:06.59
vimとマウス両方使うと速度5倍
0318名無しさん@お腹いっぱい。2012/09/17(月) 01:18:33.37
>>314
runtime!は、複数ファイルが指定された場合すべてをsourceする
runtimeは、同様の場合でも最初の1ファイルしかsourceしない
詳しくは以下
:h source
:h runtime
0319名無しさん@お腹いっぱい。2012/09/17(月) 21:36:46.87
<C-CR> で改行した場合にインデントをスペースで揃える
inoremap <silent> <C-CR> <Esc>:set expandtab<CR>a<CR> <Esc>:set noexpandtab<CR>a<BS>

これがきかないのですがどうしたらいいでしょう?
同じように<C-S>もききませんでした。
0320名無しさん@お腹いっぱい。2012/09/17(月) 21:48:57.90
すみません勘違いでした<C-S>はききます
0321名無しさん@お腹いっぱい。2012/09/18(火) 06:55:39.70
sshで使ってるからC-CRに相当するコードが送られてないとかそういう話では
0322名無しさん@お腹いっぱい。2012/09/18(火) 18:30:58.59
行の終端で→キー押すとポンッって鳴って次の行に行きません。
逆に行の頭で←キー押してもポンッて鳴り、上の行に行きません。
行くようにできますか?
0323名無しさん@お腹いっぱい。2012/09/18(火) 18:32:34.09
ポンッ
0324名無しさん@お腹いっぱい。2012/09/18(火) 18:37:52.15
>>322
:help whichwrap
03253222012/09/18(火) 18:47:32.03
>>324
set whichwrap=b,s,h,l,<,>,[,],~は設定済みだったのですが
他のコマンドに邪魔されていたようです。
.vimrcの一番最後の行に持って行ったら治りました。
ありがとございます。
0326名無しさん@お腹いっぱい。2012/09/20(木) 01:30:32.41
Windows版の gvim を kaoriya からダウンロードしてつかっています。

:set nowrap

を実行しても文字列入力において Enter を押して確定させると一定の文字数を超えると
自動で改行されてしまいます。

あああああああああああああああああああああああああああああああああああ



あああああああああああああああああああああ
ああああああああああああああ

どうすればgvimで自動で改行されるのを防ぐ事が出来ますか?
もしくは、何かgvim自体で設定する為の方法があったりするのでしょうか?
0327名無しさん@お腹いっぱい。2012/09/20(木) 02:43:20.80
>>326
OSは関係ないと思うので回答
:se tw=0 でいかが?
ついでに、:h wrap と :h tw も参照

Kaoriya版て、format.vimやらで何かしてるんだっけ?
0328名無しさん@お腹いっぱい。2012/09/20(木) 12:34:23.03
>>327
ありがとうございます。

:set tw=0 をしたところ解決しました!!
0329名無しさん@お腹いっぱい。2012/09/20(木) 12:37:58.08
>>327

コマンドラインから

:set tw=0

とすると正常に改行されなくなるのですが

:e ~/_gvimrc の中に

set tw=0

と入力しても効果は無い様です。一体なんでなんでしょうかね?
設定ファイルからだと改行されてしまいます。
0330名無しさん@お腹いっぱい。2012/09/20(木) 14:37:17.92
>>329
Win使ってないからよく分からないが、通常は .vimrc (_vimrc)の方に tw=0 指定するじゃないかな?
間違ってたらごめん。
0331名無しさん@お腹いっぱい。2012/09/20(木) 14:41:26.88
>>329
ファイルタイプによって自動でtwが変更されていると思われる。
autocmdで設定すれば治るかも
0332名無しさん@お腹いっぱい。2012/09/20(木) 22:35:12.57
329じゃないけど、.vimrcの先頭に

autocmd!

適当なとこに

autocmd FileType * set textwidth=0

で、いけたぽい感じ。
Linuxだけどね。
0333名無しさん@お腹いっぱい。2012/09/20(木) 23:17:59.46
外部コマンドの実行結果を挿入するときは
:r! cmd
でいいと思うんだが、内部コマンドの実行結果を挿入するにはどうすれば?
0334名無しさん@お腹いっぱい。2012/09/20(木) 23:21:54.77
>>333

:r !sh -c コマンド
0335名無しさん@お腹いっぱい。2012/09/20(木) 23:23:29.19
そういう意味の内部コマンドじゃないような。
0336名無しさん@お腹いっぱい。2012/09/20(木) 23:24:47.25
>>333-334
そもそも :r ! コマンド の際にシェル通して実行されてるから、
内部コマンドでもそのまま結果取り込めるだろ。
03373332012/09/20(木) 23:34:47.94
申し訳ない
自分が言った内部コマンドというのはechoやpwdのことじゃなくて、Vimのコマンド、例えばsetなどのことです
0338名無しさん@お腹いっぱい。2012/09/21(金) 02:27:43.66
>>331 >>332

>>332さんのアドバイス通り
下記を設定したところ、勝手に改行されるのがなくなりました。

autocmd!
autocmd FileType * set textwidth=0


03393382012/09/21(金) 02:28:40.65
>>331 >>332
ありがとうございました。

>>332さんのアドバイス通り
下記を設定したところ、勝手に改行されるのがなくなりました。


autocmd!
autocmd FileType * set textwidth=0


0340名無しさん@お腹いっぱい。2012/09/21(金) 03:54:47.70
>>333
:redir @a
:set
:redir END
:put a
0341名無しさん@お腹いっぱい。2012/09/21(金) 07:37:30.05
:redir @a
E475: Invalid argument: @a
0342名無しさん@お腹いっぱい。2012/09/21(金) 10:20:49.11
:set で一覧表示した時に
その表示されたものに対して検索はできますか?
0343名無しさん@お腹いっぱい。2012/09/21(金) 11:25:51.62
そんな大層なものはない。
Vimのメッセージ機構は原始的でもっとも改善が望まれるものの一つである。
0344名無しさん@お腹いっぱい。2012/09/21(金) 13:44:05.70
>>342
unite.vimを使っているのなら:Unite output:setさせてインサートモードで絞り込みかけることは一応可能
03453422012/09/21(金) 16:33:55.88
>>343>>344
できました、ありがとうございます
プラグイン無しでできるようになってほしいですね
0346名無しさん@お腹いっぱい。2012/09/21(金) 16:44:28.75
vim マスターすると文字列操作が

劇的に速くなるよね。

あまりにも早すぎて一般人の視点からは変態としかみられていないかもしれない。
0347名無しさん@お腹いっぱい。2012/09/21(金) 16:47:21.90
:options ってみんな使ってないのかな
0348名無しさん@お腹いっぱい。2012/09/21(金) 16:54:06.67
>>347
そんなのがあったとは
これならoptionを一覧できますね
0349名無しさん@お腹いっぱい。2012/09/26(水) 17:36:27.39
右クリックでファイルをvimで開く方法はありますか?Macを使ってます。
0350名無しさん@お腹いっぱい。2012/09/26(水) 18:00:27.54
>>349
Open With -> Otherからアプリを選ぶ
ちなみにスレ値です。
ttp://anago.2ch.net/test/read.cgi/mac/1133534694/
0351名無しさん@お腹いっぱい。2012/09/26(水) 18:25:03.05
>>350
すいません。
ありがとうごさいます(´・ω・`)
0352名無しさん@お腹いっぱい。2012/09/27(木) 18:43:54.86
ノーマルモードでの!バインドはどういう動作なのでしょうか?
!のマップについてヘルプで見つけられなかったのですが
0353名無しさん@お腹いっぱい。2012/09/27(木) 21:07:03.43
>>352
:h ! とか :h bang とかやってみたけど見つからんね。

つか、! するとオペレータ待機モードになる
!10jsort とやると、:.,.+10!sort になって
現在行から下10行に対して外部コマンドが実行(この場合はsort)できるけど微妙やな。
マークしたり、手で入力するより楽?いや、やっぱ微妙
0354名無しさん@お腹いっぱい。2012/09/27(木) 21:48:55.57
>>352 >>353
確かに見つけにくい。
一応、Quick reference guideにはあった。

:help Q_co
0355名無しさん@お腹いっぱい。2012/09/27(木) 21:52:12.99
unite.vimのショートカットで
nnoremap <silent> [unite]a :<C-u>UniteWithCurrentDir -no-split -buffer-name=files buffer file_mru
っていうのを見るんだけど、
[unite]っていう部分と<C-u>っていうのはどういう意味?
0356名無しさん@お腹いっぱい。2012/09/27(木) 21:59:05.77
[unite]の方はどこかでnmap <space> [unite]とかやっているんだろう
(こうすれば実際には<space>が[unite]キーになる)
:<C-u>はショートカットの前に数字を付けてしまったり、ビジュアルモードで打つ時の保険。
コマンドラインでの<C-u>はコマンドラインの入力を全て削除して綺麗な状態で始めること。
こうしてからコマンドを続けることで誤作動を防いでいるのだと思われる。
03573542012/09/27(木) 22:02:10.84
あった。
:help filter

でも ! でhelp出せないんだろうか?
0358名無しさん@お腹いっぱい。2012/09/28(金) 02:25:52.91
gnupack入れてみたけどvimとgvimの設定がいまいちうまくいかないな
filetype plugin onとかファイルあるはずなのにgvimが読まない
まぁ今までVimを適当に使ってきたにわかだからこの機会にちゃんと勉強してみよう
0359名無しさん@お腹いっぱい。2012/10/04(木) 01:32:23.59
初心者なんですが、
p と P の挙動(?)がなんか逆なような気がしてなかなか慣れないです。
i だったら、カーソルの前に挿入ですよね?
なんで p は、カーソルの後ろに?
0360名無しさん@お腹いっぱい。2012/10/04(木) 02:05:20.37
>>359
本質的な話ではないが、ddpとかxpとやるとこの仕様で良かったと思う。まあ、慣れだわな。
0361名無しさん@お腹いっぱい。2012/10/04(木) 02:33:26.24
>>360
しつこくてゴメンなさい。
ddp とかの行操作(?)に関しては、o や O と同じなんで、分かるんですけど、
xp とかの文字単位の操作では、入れ替わってしまいますよね?
まぁ、慣れることにしますが。
0362名無しさん@お腹いっぱい。2012/10/04(木) 04:06:10.43
何を主張したいのか良く分からんけど
カーソルの後に挿入するにはaだぞ
0363名無しさん@お腹いっぱい。2012/10/04(木) 05:51:30.30
>>359
後ろに貼り付ける操作の方が多用されるから整合性を崩してでもこの仕様で良かったと思う。
xpでの文字入れ替えは割と重宝するぞ。入れ替えたい場面って結構あるし
0364名無しさん@お腹いっぱい。2012/10/04(木) 08:16:12.32
xpは偶然にもtransposeの略語と一致してて動作を覚えやすい
みたいなことがメガネザルの本に書いてあったはず
0365名無しさん@お腹いっぱい。2012/10/04(木) 10:07:56.68
>>362
しつこくてゴメン。
a のたとえなら、
p がカーソルの直後に挿入で、
P がカーソル行の末尾に挿入
とかだったら、全然納得なんですけどね。
0366名無しさん@お腹いっぱい。2012/10/04(木) 10:16:58.02
まぁそうなっちゃってるものはもうしょうがない。
0367名無しさん@お腹いっぱい。2012/10/04(木) 10:35:00.61
viがおかしいからEmacsはちゃんと
「ポインタは文字と文字の間を指すものとする」
と定義してあるんだ。
0368名無しさん@お腹いっぱい。2012/10/04(木) 10:37:40.09
>>365
今後その挙動が変更されることはないので、使いにくかったらマッピングするのがVim流でしょう
0369名無しさん@お腹いっぱい。2012/10/04(木) 18:44:53.43
指の方を慣らして自分を矯正するのがむしろvim流だと思う
0370名無しさん@お腹いっぱい。2012/10/04(木) 19:12:55.44
足を靴に合わせる帝国陸軍式か。
0371名無しさん@お腹いっぱい。2012/10/04(木) 19:31:24.37
最も速いやり方に自分を矯正するのは当然だ
pはそういう意味で不合理じゃない
0372名無しさん@お腹いっぱい。2012/10/04(木) 19:57:07.75
pとP初めからセットで覚えようとしてるから混乱するんだ
まず貼り付けはpとだけ覚えとけばいい
0373名無しさん@お腹いっぱい。2012/10/04(木) 20:09:00.94
それだと行頭に貼り付けたいとき困る。
0374名無しさん@お腹いっぱい。2012/10/05(金) 01:17:39.44
>>359
i は、カーソル前でなく、カーソル位置に挿入
I が、カーソル前に挿入
よって、
yankされてる内容が文字列なら、
p は、カーソル位置に貼付け
P は、カーソル位置の前に貼付け
で不整合ではない。
yankされてるのが行なら、カレント行を上書きしたら困るんで、
p は、カレント行のあとに貼付け
P は、カレント行の前に貼付け
という挙動で問題ないと思う。

0375名無しさん@お腹いっぱい。2012/10/05(金) 01:29:58.01
>>374
お前は何を言ってるんだ
0376名無しさん@お腹いっぱい。2012/10/05(金) 02:06:11.66
おかしな奴が出てきたな(笑)
0377名無しさん@お腹いっぱい。2012/10/05(金) 03:02:06.10
そもそも'p'aste に挿入の意味はない。
それにキャピタル'i'nsertが'a'ppendと同じ挙動だと混乱するだろ。
おい、挿入っつってんだろ。って。

大文字小文字で入力位置が逆になるって思い込んで無い?
0378名無しさん@お腹いっぱい。2012/10/05(金) 03:14:18.10

しっかし、vimをマスターすると便利だな。
マウスを使うのがどれだけ生産性を落としているかを感じたぜ。
0379名無しさん@お腹いっぱい。2012/10/05(金) 09:41:51.41
pはpasteじゃなくて putの略なんだけど
0380名無しさん@お腹いっぱい。2012/10/05(金) 10:56:29.59
何言ってんだこいつら
0381名無しさん@お腹いっぱい。2012/10/05(金) 11:02:14.99
いっしょくたにするなよ。
0382名無しさん@お腹いっぱい。2012/10/05(金) 13:28:00.91
急に変なのが湧きだしたな(苦笑)
0383名無しさん@お腹いっぱい。2012/10/05(金) 23:04:42.71
Vim使ってるやつは絶滅危惧種なんだから、世間から見たら変な人間に違いない。w
0384名無しさん@お腹いっぱい。2012/10/06(土) 00:28:45.15
ワシントン条約に基づき、変な目で見るよりむしろ哀れんでwww
0385名無しさん@お腹いっぱい。2012/10/06(土) 00:36:00.42
大丈夫。世間の人はエディタの区別なんてつかない。
0386名無しさん@お腹いっぱい。2012/10/06(土) 02:14:45.75
みんな黒い画面だ
0387名無しさん@お腹いっぱい。2012/10/06(土) 10:19:35.26
俺は深緑だけど。
0388名無しさん@お腹いっぱい。2012/10/06(土) 10:26:36.00
>>374 の vim 壊れてるよ(笑)
0389名無しさん@お腹いっぱい。2012/10/06(土) 12:49:56.84
>>388
すまん、I はカレント行の先頭に挿入だった。
0390名無しさん@お腹いっぱい。2012/10/06(土) 16:22:21.64
>>378
ポメラの機能がviだったら即買うんだが。
0391名無しさん@お腹いっぱい。2012/10/06(土) 17:22:35.15
viが使えないからってなんだかんだモバイル類ディスって時代に逆行してる俺終わってる
0392名無しさん@お腹いっぱい。2012/10/06(土) 18:21:28.98
AndroidでVim使えばいいじゃん
0393名無しさん@お腹いっぱい。2012/10/06(土) 18:50:11.05
>>392
携帯用だろうとどうせフルサイズKB持ち歩くなら
ノートブックでいいんじゃないの?って思ってしまわないか
0394名無しさん@お腹いっぱい。2012/10/06(土) 18:56:27.32
http://buffalo.jp/products/catalog/supply/input/keyboard/bluetooth/bskbb03/
これでいいじゃん。
0395名無しさん@お腹いっぱい。2012/10/06(土) 19:00:37.88
こういうキーボードって大抵ひたすら打ちづらいよな。
vim使いの人ってキーボード拘る人って多そうだし。
0396名無しさん@お腹いっぱい。2012/10/06(土) 19:03:15.73
ポメラと同じだから意外と打ちやすいよ。
0397名無しさん@お腹いっぱい。2012/10/06(土) 19:42:00.36
1万円か…やっぱこれくらいするんだな。
0398名無しさん@お腹いっぱい。2012/10/06(土) 19:59:09.88
スマホはスマホに適したエディタが良いよね
0399名無しさん@お腹いっぱい。2012/10/06(土) 20:43:35.67
ポメラのキーボードってそんなにいいのか
0400名無しさん@お腹いっぱい。2012/10/06(土) 21:55:24.32
俺はエディタでは Vim が最強だと信じているが、それでも、それはソースコードを書くときだけ。
日本語文章を書くのにわざわざ Vim を使おうと思ったことはない。
仮に英語の文章でも使わないだろうな。
WordStar が好きだった。
0401名無しさん@お腹いっぱい。2012/10/06(土) 22:04:31.71
英語の文章なら相性良さそうだからいけるかも、日本語はそりゃないわ
サバイバルナイフで自炊するようなもんだ
0402名無しさん@お腹いっぱい。2012/10/06(土) 23:14:34.49
身内メールくらいならvimで書いてるし
俺は後がめんどいから個人メモは日本語NGだと思ってる
なるべくサバイバルナイフを持ち替えたくないってのも自然だと思うな
0403名無しさん@お腹いっぱい。2012/10/06(土) 23:46:00.30
ちょっと前にキーボードつきのandroidが出てたから、それにubuntuか何かのcuiをいれたらポメラっぽい使用感になるんじゃないか
0404名無しさん@お腹いっぱい。2012/10/07(日) 03:03:03.58
migemo入れたり日本語用にカスタマイズしたvimもあるらしいけど
俺もそこまでしてvimで日本語ファイルを編集したくないなあ。
日本語の文書なんてせいぜいメール打つときとブラウザでしか書かないし。
■ このスレッドは過去ログ倉庫に格納されています