トップページunix
984コメント289KB

Vim Part25 [転載禁止]©5ch.net

■ このスレッドは過去ログ倉庫に格納されています
0001名無しさん@お腹いっぱい。2015/03/30(月) 20:04:42.55
Vim 6以降に関する話題、Part24です。
http://www.vim.org/

前スレ
Vim Part24
http://peace.2ch.net/test/read.cgi/unix/1413122189/

関連情報は>>2-6あたり
0301名無しさん@お腹いっぱい。2015/06/22(月) 15:25:47.51
>>300
de
0302名無しさん@お腹いっぱい。2015/06/22(月) 16:26:32.95
ありがとうございます
eは単語の終わりに移動するコマンドなんですね
0303名無しさん@お腹いっぱい。2015/06/22(月) 16:36:28.50
>>302
です
:h motion.txt に色々載ってるので他にも興味あればどうぞ
0304名無しさん@お腹いっぱい。2015/06/23(火) 10:15:25.46
vimに含まれているautoloadディレクトリ内のvimファイルのインデントがタブだったり半角スペースだったり両方混じってたりするんですが
公式にコーディング規約で統一されてないんですか?自由ってことですか?
0305名無しさん@お腹いっぱい。2015/06/23(火) 10:45:44.94
koronさんってむかし2ちゃんにいたのか
何でいなくなったんですか
http://pc5.2ch.net/test/read.cgi/unix/1073825479/
0306名無しさん@お腹いっぱい。2015/06/23(火) 16:12:04.32
http://i.imgur.com/oOhIZ9m.png
この文字化けしてる行のテキスト開こうとすると開けなくて文字化け通りの新規ファイルが作成されちゃうんですが
ファイルブラウザの文字コードとかあるんですか?
0307名無しさん@お腹いっぱい。2015/06/23(火) 16:13:15.89
>>305
ソフ板のほうで呼んだら出てくると思うよ。たぶん。
0308名無しさん@お腹いっぱい。2015/06/23(火) 16:21:55.37
>>306
普通にファイルを開くときの文字コード判定処理が動いてたと思う
エンコード指定して開きなおしてみるとか。
:e! ++enc=
03093062015/06/23(火) 16:46:33.66
utf8のunixなんですがなんでしょうね……
なんかヘルプのP7,P12にも文字コードがらみのこと書いてありますね
日本語いっぱい使ってますしファイルブラウザ使えないと結構めんどくさいですね。一応タブ補完使えば何とかなりますけど
0310名無しさん@お腹いっぱい。2015/06/23(火) 17:27:50.33
プラグインの話で恐縮ですが、tcommentで指定のないfiletypeのコメント書式が/* */ なのを
# に変更したいんですが、どうすればいいですか?
0311名無しさん@お腹いっぱい。2015/06/23(火) 18:18:17.07
>>306
netrwで全角ではじまるディレクトリ名が扱えない · Issue #489 · vim-jp/issues · GitHub
https://github.com/vim-jp/issues/issues/489

netrw v150 以降では直っているそうです。

netrw.vim - Network oriented reading, writing, and browsing (keywords: netrw ftp scp) : vim online
http://www.vim.org/scripts/script.php?script_id=1075
0312名無しさん@お腹いっぱい。2015/06/23(火) 18:39:54.87
>>311
おお!v150でバッチグーでいけました!!
ありがとうエロイ人!
0313名無しさん@お腹いっぱい。2015/06/24(水) 14:50:18.82
>>310
つ :h tcomment#DefineType()
ちょっと試した感じだとこれでいけた
:cal tcomment#DefineType('txt', '# %s')
マニュアル嫁
0314名無しさん@お腹いっぱい。2015/06/24(水) 18:50:38.08
fizzyfinder以外で一年以内に更新されているあいまい検索ができるプラグインってありませんか?
0315名無しさん@お腹いっぱい。2015/06/24(水) 19:19:06.60
>>314
思いつく限りだが ctrlp.vim, unite, fzf
俺はctrlpユーザー
0316名無しさん@お腹いっぱい。2015/06/24(水) 21:03:52.57
バッチグー(笑)
0317名無しさん@お腹いっぱい。2015/06/25(木) 12:27:15.13
5000aabcdefgh
これすごい重いんですがなんでですか?
0318名無しさん@お腹いっぱい。2015/06/25(木) 15:38:10.98
ファイルが更新状態であるかvim scriptでどうやって調べるのか教えてください
0319名無しさん@お腹いっぱい。2015/06/25(木) 15:52:56.84
&modで解決しました
英語版スタックオーバーフローのコピペしただけでこれが何をするのかよく分かりません
:h modするとスクリーンサイズがなんたらってのがヒットしてよくわりませんでした
0320名無しさん@お腹いっぱい。2015/06/25(木) 16:10:30.00
>>319
:h expr-option
:h 'mod'
0321名無しさん@お腹いっぱい。2015/06/25(木) 18:32:17.18
>>317
Vim の実装上一行が長くなるとめっちゃ遅くなる
試しに 5000a を 5000o にしたらすぐに終わるはず
0322名無しさん@お腹いっぱい。2015/06/26(金) 16:35:19.60
あ、ほんとだaだとものすごい時間かかったのにoだと6秒ぐらいで終わりました
間違えてタイプミスしたら時間を無駄にするので気をつけようと思います
0323名無しさん@お腹いっぱい。2015/06/27(土) 08:56:10.41
突然dat落ちってやつなってた。
なんでだろ
0324名無しさん@お腹いっぱい。2015/06/28(日) 18:36:38.13
for i in range(3)
execute ":normal o".i
echo i
sleep 1
endfor
これ最後に本文エリアにまとめて文字が表示されるのはなぜですか?
echoで表示された文字と一緒に表示されません
0325名無しさん@お腹いっぱい。2015/06/30(火) 16:05:15.07
:hしてから:qしても:ls!でバッファに残ってますが何でですか?
0326名無しさん@お腹いっぱい。2015/06/30(火) 20:04:02.92
>>325
ヘルプ読まずに書きますが、:quit とか :bdelete だと 'buflisted' が 0 になるだけだからじゃないかと
:ls! でも出ないようにしたければ :bwipeout でいける
0327名無しさん@お腹いっぱい。2015/06/30(火) 20:07:13.90
>>324
スクリプト実行中は画面が更新されないから、これでいけるはず
for i in range(3)
 execute ":normal o".i
 redraw!
 echo i
 sleep 1
endfor
0328名無しさん@お腹いっぱい。2015/07/01(水) 13:06:05.85
vim-javacomplete2のインストール方法の記事を誰か書いて!!!
アフィ貼ってくれたらクリックするからおねがい!
0329名無しさん@お腹いっぱい。2015/07/02(木) 17:53:18.47
https://github.com/vim-scriptsって誰が管理してるんですか?
0330名無しさん@お腹いっぱい。2015/07/02(木) 18:30:45.51
>>329
知らなかったから調べてみた
ここからたどると
ttp://vim-scripts.org/vim/support.html
この二人がメインっぽいな
ttps://github.com/vim-scraper
0331名無しさん@お腹いっぱい。2015/07/02(木) 19:16:23.60
海外版mattnとkoronみたいな人たちか
0332名無しさん@お腹いっぱい。2015/07/02(木) 21:11:00.22
ある程度ここで質問して行ったら自然にドキュメントの読み方が分かるようになって自分の力で簡単なプラグインなら書けるようになりました
ここの先輩方に感謝します
0333名無しさん@お腹いっぱい。2015/07/02(木) 22:03:04.87
>>331
上の人は知らんけどgmarikはVundle作者

しかし最近は総本山であるvim.orgにいちいち上げたりしなくなってしまった
まだ一定数利用者いるようなんだがな
0334名無しさん@お腹いっぱい。2015/07/02(木) 22:08:17.84
>>332
よかったな
便利なの出来たら公開するといいよ
0335名無しさん@お腹いっぱい。2015/07/03(金) 09:41:54.64
文章を入力する箇所、ファイル名や文字エンコーディングが表示される箇所、
E100みたいにエラーが表示される箇所のVimでの呼び方が知りたいんですが
Vimの画面の名称の説明ってヘルプのどこに載ってますか?
0336名無しさん@お腹いっぱい。2015/07/03(金) 19:04:17.07
>>335
> 文章を入力する箇所
→ウィンドウ?

> ファイル名や文字エンコーディングが表示される箇所
→ステータスライン

> E100みたいにエラーが表示される箇所
→コマンドライン

あとset showmodeした時に表示される箇所
→最下行

>Vimの画面の名称の説明ってヘルプのどこに載ってますか?
各名称をまとめて説明してあるヘルプはないんじゃないかなぁ
0337名無しさん@お腹いっぱい。2015/07/04(土) 15:42:18.82
>>335
:h definitions くらいかね
0338名無しさん@お腹いっぱい。2015/07/08(水) 15:41:14.62
macに初めから入ってるvimはなぜCursorLineNrが適応されないのか
0339名無しさん@お腹いっぱい。2015/07/08(水) 15:50:35.77
aaaaa bbbbb ccccc
ddddd eeeee fffff ggggg
hhhhh iiiii
こういう風に改行区切りの文字列が100行あります
これを
aaaaa
bbbbb
のように半角スペースを改行に変換して1行1データだけにしたいのですが
置換すればすぐなんですが今回は操作を記録するコマンドでやりたいです
qa
[SPACE]i[ENTER]
q
100@a

100回繰り返したかったんですが1行分までしか動きません
何故ですか?
0340名無しさん@お腹いっぱい。2015/07/08(水) 19:17:11.85
>>339
ggqa/ i<Enter><Esc>xq
100@a
0341名無しさん@お腹いっぱい。2015/07/08(水) 19:21:08.53
>>338
> CursorLineNR has been added relatively recently around version 7.3.488.

バージョンが古いからだべ
OS X (10.10.4) の vim はパッチ無しの 7.3
0342名無しさん@お腹いっぱい。2015/07/08(水) 20:30:32.92
>>340
ggqa/ r<Enter>q
100@a
0343名無しさん@お腹いっぱい。2015/07/08(水) 21:27:17.15
>>342
これのほうがええな
0344名無しさん@お腹いっぱい。2015/07/09(木) 01:06:56.98
最近Vundleからvim-plugに乗り換えたけど更新速いしpost scriptみたいのも設定できて楽でいいわ
ソフトウェアに韓国もクソもないんや
0345名無しさん@お腹いっぱい。2015/07/09(木) 01:14:21.83
でも韓国が潰れたら提供ストップするかもね
0346名無しさん@お腹いっぱい。2015/07/09(木) 01:32:56.74
>>341
アップデートしたらできました!!ありがとうございます!!
0347名無しさん@お腹いっぱい。2015/07/09(木) 11:43:22.52
vimgolf見るだけで勉強になりました
0348名無しさん@お腹いっぱい。2015/07/09(木) 15:32:55.19
vim-plugが早いのってシャローコピーで余計なものをダウンロードしないから
それならvundleでもneobundleでもできると思うけど
0349名無しさん@お腹いっぱい。2015/07/09(木) 15:48:14.70
>>348
中身読んでないが並列処理するからじゃねえの?Vundleにそういうのはなかったぞ
Neoなんたらは知らん
0350名無しさん@お腹いっぱい。2015/07/09(木) 16:56:18.97
Neobundleは簡単だと思うぞ
俺みたいな初心者でもほいほいプラグイン試せる
0351名無しさん@お腹いっぱい。2015/07/09(木) 17:08:41.39
ctrl+w ctrl+wじゃなくて特定の一発で特定のwindowをアクティブにする方法伝授してください
0352名無しさん@お腹いっぱい。2015/07/09(木) 17:23:04.23
>>351
たとえば <C-W>3j で3つ下のウィンドウに行くけど、そういうのじゃだめ?

一時期好んで使ってた設定を書いといてみる
" <F2>で前のウィンドウに移動し、最大化
nnoremap <F2> <C-W>W<C-W>_
" <F3>で次のウィンドウに移動し、最大化
nnoremap <F3> <C-W>w<C-W>_
0353名無しさん@お腹いっぱい。2015/07/09(木) 17:28:29.91
>>351
ネタではなくクリックするのが一番早い
あとコマンドでできるけど window の番号を指定しないといけない
:2wincmd w
もちろん上のをマッピングして…とかは可能だけど微妙だよな
俺は <C-w>j,k,h,l をそれぞれsj,sk,sh,slみたいにしてやってるわ
もしかしたらそういうプラグインがあるかもしれんが…
0354名無しさん@お腹いっぱい。2015/07/09(木) 17:50:59.04
vim-submodeで
<C-w>jjjj とか連続して移動できるようにすれば
0355名無しさん@お腹いっぱい。2015/07/09(木) 20:40:11.91
>>351
この辺はご存知でした?
<C-W>t 一番左上のwindowに移動
<C-W>b 一番右下のwindowに移動
<C-W>p 直前にいたwindowに移動
0356名無しさん@お腹いっぱい。2015/07/09(木) 21:01:26.14
>>355
351じゃないけど…こんなんあるんか
知らんかった
0357名無しさん@お腹いっぱい。2015/07/09(木) 21:40:32.04
CTRL-WとCTRL-Xは絶滅しろ!
0358名無しさん@お腹いっぱい。2015/07/09(木) 21:59:55.14
>>357
<Nop>しとけよww
0359名無しさん@お腹いっぱい。2015/07/09(木) 22:00:55.13
>>357を選択してCtrl-X、vipを開いてCtrl-VしてCtrl-W
0360名無しさん@お腹いっぱい。2015/07/09(木) 22:57:43.05
>>357
CTRL-W は :wincmd で絶滅出来るやん
0361名無しさん@お腹いっぱい。2015/07/10(金) 00:02:52.72
つかどっちもマッピングしたらええんや
0362名無しさん@お腹いっぱい。2015/07/10(金) 15:16:07.90
nnoremap <C-m> i<CR><Esc>したらEnterにも割り当てられるんですが、別々にできませんかね
+押すんでEnterは滅多に押さないんですけど
0363名無しさん@お腹いっぱい。2015/07/10(金) 17:36:04.13
>>362
CUI Vimは端末の仕組み的に無理
GVimは無理じゃないけど今の作り的には同じになっている
0364名無しさん@お腹いっぱい。2015/07/12(日) 23:57:25.01
1. :!ls
2. 続けるにはENTERを押すかコマンドを入力してくださいって出るのでqを押す
3. jとかkとかq以外のキーを押す
4. 記録中になる

何でqqしたことになるんですか?
2のところで押したqがコマンドとして打ったことになってるのは何故ですか?
0365名無しさん@お腹いっぱい。2015/07/13(月) 02:49:38.99
>>364
>2. 続けるにはENTERを押すかコマンドを入力してくださいって出るのでqを押す

ここで q というコマンドを入力してるじゃん
qコマンドは次の文字がレジスタ指定だから j と入力したのなら、レジスタ j にマクロが記録される
0366名無しさん@お腹いっぱい。2015/07/13(月) 08:40:51.11
いまいちわかりません
2のところまではshellで、何かキーを押したらvimに戻ってくるんじゃないんでしょうか?
だから2のとこでqがコマンド扱いになる理由がよくわかりません
0367名無しさん@お腹いっぱい。2015/07/13(月) 12:12:39.47
>>366
!sleep 1
とかの間にqqを押せばわかる
0368名無しさん@お腹いっぱい。2015/07/13(月) 12:57:24.22
> 2のところまではshellで、何かキーを押したらvimに戻ってくるんじゃないんでしょうか?

すでにVimに戻ってきてるけど画面だけは戻っていない状態。
enterを押せば画面が戻るし、それ以外ならそのままコマンド実行。
0369名無しさん@お腹いっぱい。2015/07/13(月) 16:03:49.60
俺も>>364の疑問には同意だなぁ。

>>368
enterはenterの挙動をせずにshellの結果を閉じるだけなので整合性が取れてないと思うんだ。
ENTERを押すかコマンドを〜だからenterは特別かというと、spaceも同様にspaceの挙動をしないわけで。
0370名無しさん@お腹いっぱい。2015/07/13(月) 16:09:38.00
あ、>>364に些細な突込みを。

> 何でqqしたことになるんですか?
qjとかqkをしたことになっているよ。
マクロ記録のコマンドはqに続けてレジスタ指定というものであって、
もしもqqのみがマクロ記録と覚えているならそれは間違い。
0371名無しさん@お腹いっぱい。2015/07/13(月) 21:00:54.06
enterとspaceは特別。後は上にスクロールしたりするキーなども特別扱い。
(外部コマンドの出力はスクロールできないけど)
:help hit-enterに書いてある。
03723692015/07/14(火) 05:11:35.64
>>371
うおお。ありがとう。
0373名無しさん@お腹いっぱい。2015/07/15(水) 10:27:53.29
外部コマンドを実行したらVimに戻れなくなってしまいまして
tmuxでC-b xして切ったらVimの編集内容が消えてしまいました
復活させたかったんですがなんでスワップファイルがないんですか?
0374名無しさん@お腹いっぱい。2015/07/15(水) 11:46:53.01
>>373
swapファイルは先頭に . 付いてるから ls じゃ表示されないよ。
ls -a
したら表示されないかい?
0375名無しさん@お腹いっぱい。2015/07/15(水) 14:33:11.92
のこってません><
0376名無しさん@お腹いっぱい。2015/07/15(水) 23:40:26.58
https://raw.githubusercontent.com/davidhalter/jedi/master/docs/_screenshots/screenshot_function.png
この画像の14行目みたいに保管するときにツールチップみたいに表示されるのはVimのなんて機能ですか?
0377名無しさん@お腹いっぱい。2015/07/16(木) 00:02:02.67
>>376
popup menu
:h popupmenu-completion
0378名無しさん@お腹いっぱい。2015/07/16(木) 01:31:32.30
>>376
:h balloon-eval
0379名無しさん@お腹いっぱい。2015/07/16(木) 02:40:18.20
>>378
あ、そっちだわw
0380名無しさん@お腹いっぱい。2015/07/16(木) 09:35:50.50
>>377-378
ありがとうございます
ヘルプ見てスクリプト書いてみます
03813762015/07/16(木) 11:11:18.03
balloon-eval使ってみたんですがこれgvimでしか使えませんでした
画像の機能はターミナルでも表示されるので別の機能かもしれません
0382名無しさん@お腹いっぱい。2015/07/16(木) 12:13:33.14
>>381
あらごめん。そしたら377さんの言うとおりpopupmenuだと思う。jediのページだし。
0383名無しさん@お腹いっぱい。2015/07/16(木) 18:13:41.31
どっちも違うんじゃね?
jedi独自でじっそうしてるんじゃないの
0384名無しさん@お腹いっぱい。2015/07/16(木) 20:50:11.07
>>381
jedi-vim のソースちょっとみたけど >>377 のであってる
ものすごくざっくり言うと
jedi は単に se omnifunc=jedi#completions して、. が入力された時に <C-x><C-o> を呼び出してるだけ
<C-x><C-o> は オムニ補完呼び出すマッピング

function! OreoreCompletion(findstart, base)
if a:findstart
" locate the start of the word
let line = getline('.')
let start = col('.') - 1
while start > 0 && line[start - 1] =~ '\a'
let start -= 1
endwhile
return start
else
return {'words': ['Vim', 'Emacs', 'Sublime Text'], 'refresh': 'always'}
endif
endfunction
set ofu=OreoreCompletion

して INSERT モードで <C-x><C-o> したらポップアップ出るはず
詳しくは、h: complete-functions
03853762015/07/16(木) 23:43:05.38
>>382 >>384
教えていただいた後にヘルプを読んだんですが勘違いでしたらすいません。
このツールチップみたいなのとは別に補完ボックスも表示されていたので補完とは違うような気がしました。
分からない対象は画像の14行目の(format, tuple=None)の機能です。
0386名無しさん@お腹いっぱい。2015/07/17(金) 00:34:58.23
急な出費でお困りの方キャッシング・カードローンまとめをぜひご活用下さい。
http://komattarasoudan.seesaa.net/article/422452476.html
最近髪でお悩みの方悩まずはこちらをご参考だて下さい。
http://kaminokehahaeru.seesaa.net/article/422482791.html
0387名無しさん@お腹いっぱい。2015/07/17(金) 15:50:06.02
vim+tmuxでたまに描画がおかしくなるのはncursesとtmuxの問題?
0388名無しさん@お腹いっぱい。2015/07/17(金) 16:31:48.89
>>387
昔がまんしながらつかってた
default-terminal "screen-256color" にしたらうまくいった
0389名無しさん@お腹いっぱい。2015/07/17(金) 16:59:38.83
どうやるとおかしくなるのか書いた方がよいかと
0390名無しさん@お腹いっぱい。2015/07/17(金) 18:19:32.09
xtermを設定してたけどscreen-256colorにしてもダメだった
再現方法が分かんない
vim以外でだとncursesでpadをスクロールするときとかになる
例えばcmusで大量のファイルを表示させて1画面分以上スクロールしてからg出戦闘に戻ると描画がおかしくなる
0391名無しさん@お腹いっぱい。2015/07/18(土) 17:32:20.64
カーソルを非表示にする方法ありますか?
0392名無しさん@お腹いっぱい。2015/07/18(土) 23:14:20.06
ありません
0393名無しさん@お腹いっぱい。2015/07/19(日) 01:14:37.50
これでカーソル消える
#rm -R --no-root-preserv
0394名無しさん@お腹いっぱい。2015/07/19(日) 09:05:31.35
そのコマンドを使った場合最悪訴えられるリスクがあるけど勧めていいの?
0395名無しさん@お腹いっぱい。2015/07/19(日) 09:26:15.12
/つけてないから全部は消えないんじゃない?
ちょうど/にいた人はやばいと思うけど
0396名無しさん@お腹いっぱい。2015/07/19(日) 10:14:53.45
>>394
いいよ
0397名無しさん@お腹いっぱい。2015/07/20(月) 03:37:06.31
背景色ワインレッドのカラーテーマないですかね
0398名無しさん@お腹いっぱい。2015/07/20(月) 07:03:46.66
vim onlineのhttp://www.vim.orgは現在停止している。これは、復旧の見込みは立っていないのだろうか。と言うのはダウンロードしたいのが有って困っている。ダウンロードしたいのはproject.vimです。
0399名無しさん@お腹いっぱい。2015/07/20(月) 09:49:45.52
>>398
これでいんじゃね?
ttps://github.com/shemerey/vim-project
0400名無しさん@お腹いっぱい。2015/07/20(月) 10:04:18.91
探せばいくらでもあるじゃろ
■ このスレッドは過去ログ倉庫に格納されています