Vim Part21
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001名無しさん@お腹いっぱい。
2012/07/16(月) 01:09:05.70http://www.vim.org/
前スレ
Vim Part20
http://toro.2ch.net/test/read.cgi/unix/1322212163/
関連情報は>>2-6あたり。
0925名無しさん@お腹いっぱい。
2013/02/22(金) 00:18:20.690926918
2013/02/23(土) 10:48:57.28レスありがとう。
結局、neobundle で
{'type' : 'nosync', 'base' : '~/.vim/bundle/manual'}
として、~/.vim/bundle にまとめることにしました。
ここって、UNIX板だったね、板違いでごめんなさい。
VIM全般と勘違いしてました。
>>923
migemo.vim はそのままでインクリメントサーチできますよ。
>>924
>>925
ごめんtypo
なんだ耳毛ってw
0927名無しさん@お腹いっぱい。
2013/02/23(土) 17:17:18.96どうやって incsearch ?
migemo.vim の中みても <leader>mi くらいしか見当たらない。
一応 https://github.com/koron/cmigemo/blob/master/tools/migemo.vim 見たけど。
0928名無しさん@お腹いっぱい。
2013/02/23(土) 17:39:20.22しかも普通の検索に統合されてる
/に統合するスクリプトをつくってくれってことかも
パッチジャ内と無理かもしれないが
0929名無しさん@お腹いっぱい。
2013/02/26(火) 09:51:35.57置き換え(入れ替え)る方法はないでしょうか?
0930名無しさん@お腹いっぱい。
2013/02/26(火) 10:37:19.06B>A
C>B
この流れでどうよw
0931名無しさん@お腹いっぱい。
2013/02/26(火) 19:46:10.84でもこれだと汎用的なものはムズイよ
0932名無しさん@お腹いっぱい。
2013/02/26(火) 20:05:56.900933名無しさん@お腹いっぱい。
2013/03/02(土) 16:56:47.790934名無しさん@お腹いっぱい。
2013/03/02(土) 21:06:36.11それならviとともに生きたほうがいいと思わないか?
0935名無しさん@お腹いっぱい。
2013/03/04(月) 01:09:03.02picoちゃんやで
0936名無しさん@お腹いっぱい。
2013/03/06(水) 01:26:06.57多重安藤が無いなんて…メモ帳?なにそれ美味しいの?
ヴィーアイエムと読むかヴィムと読むかでその世代が別れてるとおもう。
0937名無しさん@お腹いっぱい。
2013/03/06(水) 06:45:54.29打ち直した方が速いよ
0938名無しさん@お腹いっぱい。
2013/03/06(水) 07:51:07.010939名無しさん@お腹いっぱい。
2013/03/06(水) 07:56:32.53どこまで戻せばいいかわからなくなったり
戻しすぎたりするからねー
0940名無しさん@お腹いっぱい。
2013/03/06(水) 11:57:01.60redoのキーアサインってVimっぽくないよね
0941名無しさん@お腹いっぱい。
2013/03/06(水) 12:18:59.380942名無しさん@お腹いっぱい。
2013/03/06(水) 14:00:00.260943名無しさん@お腹いっぱい。
2013/03/10(日) 02:24:00.420944名無しさん@お腹いっぱい。
2013/03/10(日) 06:31:31.41:h :put
0945名無しさん@お腹いっぱい。
2013/03/10(日) 06:32:49.68:put =$HOME
0946名無しさん@お腹いっぱい。
2013/03/10(日) 14:42:59.01組み込み関数について知った辺りからvimにできないことって
あるのかよって思い始めた
0947名無しさん@お腹いっぱい。
2013/03/12(火) 15:49:42.520948名無しさん@お腹いっぱい。
2013/03/12(火) 16:40:22.560949名無しさん@お腹いっぱい。
2013/03/12(火) 17:37:50.32ペーストした範囲だけインデントを合わせたいです。
0950名無しさん@お腹いっぱい。
2013/03/12(火) 18:14:01.22nnoremap <expr> gp '`[' . strpart(getregtype(), 0, 1) . '`]'
2chだと空白行がおかしい処理されるので念のため。
http://vim.wikia.com/wiki/Selecting_your_pasted_text
それで範囲囲んで=はどうだ?
0951名無しさん@お腹いっぱい。
2013/03/12(火) 18:14:54.27vpgv=
ではだめ?
0952名無しさん@お腹いっぱい。
2013/03/13(水) 02:59:51.80でできるよ
0953名無しさん@お腹いっぱい。
2013/03/13(水) 05:52:16.03にしても =`] ってちょっとかわいいな
0954名無しさん@お腹いっぱい。
2013/03/13(水) 12:31:11.65vnoremap <silent> p p=`]
にしときました。
いくつか回答が出たってことは特にみなさん設定してない?
0955名無しさん@お腹いっぱい。
2013/03/13(水) 13:07:18.190956名無しさん@お腹いっぱい。
2013/03/13(水) 22:27:59.680957名無しさん@お腹いっぱい。
2013/03/21(木) 09:36:32.67:s/before/after
で変換しますが、ここでbeforeやafterを入力するときに入力補完をしたいです。
どうすればいいんでしょうか。
0958名無しさん@お腹いっぱい。
2013/03/21(木) 10:19:25.940959名無しさん@お腹いっぱい。
2013/03/21(木) 12:29:00.14cibもしくはci(だと()内にいないとダメなのは皆さん気にならない?
0960名無しさん@お腹いっぱい。
2013/03/21(木) 14:23:07.78テキストに入力されている文字です
例えば
「floccinaucinihilipilification」がエディタ上に入力されていたとして
:s/floccinaucinihilipilification/hogehoge/
ってやる場合に「floccinaucinihilipilification」と入力するのが大変なので
0961名無しさん@お腹いっぱい。
2013/03/21(木) 15:53:52.74:h c_ctrl-r_ctrl-f
CTRL-R CTRL-F
CTRL-R CTRL-P
CTRL-R CTRL-W
CTRL-R CTRL-A
について書いてあるけど、キーの押しやすさから、
私は CTRL-R CTRL-F ばかり使っている。
左手一本で ctrl押したまま ra でいいわけだし。
0962名無しさん@お腹いっぱい。
2013/03/21(木) 15:54:33.79× 左手一本で ctrl押したまま ra でいいわけだし。
○ 左手一本で ctrl押したまま rf でいいわけだし。
0963名無しさん@お腹いっぱい。
2013/03/22(金) 00:01:51.260964名無しさん@お腹いっぱい。
2013/03/22(金) 13:59:34.78お前ら、最強のテキストエディターは「Mery」で異論はないよな?
http://hayabusa3.2ch.net/test/read.cgi/news/1363874572/
137 :ハイイロネコ(チベット自治区):2013/03/22(金) 04:16:40.42 ID:so/V8PBf0
vimがイイって言われ使ったけど、使いずれーよ。特に初心者は。
頑張ってなれようとしたけど、少し触らなくなると、忘れる。
もう変なのすすめるなよ。
0965名無しさん@お腹いっぱい。
2013/03/22(金) 15:08:20.39作文にでも使おうとしたんじゃないのか、そいつ
0966名無しさん@お腹いっぱい。
2013/03/22(金) 16:42:02.30命からがらたどりついた砂漠のオアシスみたいなもの
0967名無しさん@お腹いっぱい。
2013/03/22(金) 16:56:33.16これが合理的だと感じられる人ならすぐ使えるようになると思う
0968名無しさん@お腹いっぱい。
2013/03/22(金) 18:03:42.36中級者くらいにならないとvimのありがたみはわからないから仕方ない
0969名無しさん@お腹いっぱい。
2013/03/22(金) 18:12:03.34test = ('z'~'x')
sample = ('A'~'B'+'C')
この3行のそれぞれの最初の括弧の前にfuncをつけ、例えば最初の行なら
a = func('y'~'x')
と、括弧の位置が行ごとにずれている場合でもビジュアルモードで3つ一気に修正したいのですが、これは可能でしょうか?
0970名無しさん@お腹いっぱい。
2013/03/22(金) 18:13:32.200971名無しさん@お腹いっぱい。
2013/03/22(金) 19:30:12.65の形だな。
0972名無しさん@お腹いっぱい。
2013/03/23(土) 18:06:31.98無事にうまく修正できました。
0973名無しさん@お腹いっぱい。
2013/03/26(火) 01:50:40.82プログラミングでなくても、頻繁に単語や文章を入れ替えたりしながら書くタイプには向いているエディタだと思う。
使う人を選ぶとこはあるのかなという気はする。
0974名無しさん@お腹いっぱい。
2013/03/26(火) 05:34:33.02一応migemoみたいなのはあるんだけど
0975名無しさん@お腹いっぱい。
2013/03/26(火) 07:28:32.04改良するプラグインはあるけどやはり直感的じゃない
英語ならいけるんだろうね
0976名無しさん@お腹いっぱい。
2013/03/26(火) 07:54:01.68A. Vim は このような わかち書き の 文章 の 入力 には 向いていますが、
通常 の 日本語 の 入力 には 向いて いません。
0977名無しさん@お腹いっぱい。
2013/03/26(火) 14:30:36.93ありがとうございます。
あとカーソル位置に依存しない補完はないのでしょうか。
インサートモードのctrl+pのような機能をexモードで使いたいので。
0978名無しさん@お腹いっぱい。
2013/03/26(火) 14:42:45.91command-line mode はいかん?
デフォルトでは、コマンドモードで <C-f>
0979名無しさん@お腹いっぱい。
2013/03/26(火) 23:05:33.95ソースのdiffのチェックをするときにvim -R - に差分食わせた後、:vspで縦3分割位して一気に見えるようにしたいのですが、先頭をずらしつつscrollbindまでしたあと、画面単位にページ移動させるにはどうすればよいのでしょうか?
デフォルトのままだと、高さ分しか移動しないので、分割したウィンドウが右から左へ移動するような感じになってしまいます。
0980名無しさん@お腹いっぱい。
2013/03/26(火) 23:44:06.64縦三分割で60行*3で180行一気にみるぜ!ということ?
私の知らない所で設定があるのかもしれないけどわからん
こんなんどうよ?
function! AwesomeScroll()
execute '0wincmd w'
let h = winheight(0)
let lnum = (h * winnr('$')) + 1
execute 'normal! ' . lnum . 'G'
endfunction
nnoremap <Down> :call AwesomeScroll()<Cr>z<Cr>
0981名無しさん@お腹いっぱい。
2013/03/27(水) 17:10:52.31内容的にdiffであることは関係なさそうな気がしてるんだけど、
3<C-f>じゃだめ?
0982名無しさん@お腹いっぱい。
2013/03/27(水) 17:20:27.17概ね良好だと思う
0983名無しさん@お腹いっぱい。
2013/03/27(水) 22:27:26.71そうです。scrollbindってすぐ壊れてしまうので、編集時には向かないけどみるだけならいいかなと。。。
教えてもらったものはうまくいかなかったのですが、参考にしていろいろしてみたら
:vsp +execute 'normal!'.(line('w$')+1).'Gzt'と
:execute 'normal!'.(line('w0')+(winheight(0)*winnr('$'))).'Gzt'
とすると、いい感じになりました
後者をnnoremapで<C-f>とかに割り当てるにはどうすればよいのでしょうか?
nnoremapに割り当てるとなんか編集モードになってしまいます。
あと、できればかけ算するのではなくウィンドウ指定してline('w$')をとりたいのですがそういうはできますか?
この場合、いちばん右下の行番号がほしいです。
0984名無しさん@お腹いっぱい。
2013/03/27(水) 22:36:22.91たしかにdiffは関係ないです。
ただタグジャンプとかするとscrollbindってずれてしまうみたいなので、みるだけの代表としてdiffといいました
普通に<C-f>だと折り返しがあるとずれちゃうのですよー
nowrapすればよいだけの話なのですが、なまじいけそうなだけになんか負けた気がして、いろいろやってます。
0985名無しさん@お腹いっぱい。
2013/03/27(水) 23:13:39.42gj のような感じで、ページ単位でスクロールできればよさそうっぽいけど、ないのかな
0986名無しさん@お腹いっぱい。
2013/03/28(木) 00:51:03.47いったんそのウィンドウをアクティブにして line('w$')するしかないんじゃないかな
0987名無しさん@お腹いっぱい。
2013/03/28(木) 19:12:50.42はじめてのスクリプトで調べながらちょこちょことやってみましたが、 けっこういろんなことできるんですね。
途中で目的を忘れて、明らかにオーバースペックになってしまいましたが、できました。
結局、scrollbindなんて使わない方が無難だったという。。。
全部は書き込めなかったので、抜粋
function! NormalizeView()
execute b:start_nr.'wincmd w'
let l:target_bufnr=winbufnr(0)
let l:end_nr = b:start_nr
let l:lnum=line('w$')+1
wincmd w
while winnr() != l:end_nr
if winbufnr(0) == l:target_bufnr
execute 'normal!'.l:lnum.'zt'
let l:lnum=line('w$')+1
endif
wincmd w
endwhile
unlet l:lnum
endfunction
command! PgUp let lnum=line('w0')-1 | :execute(b:start_nr.'wincmd w')| :execute('normal!'.lnum.'zb') | :call NormalizeView()
command! PgDown let lnum=line('w$')+1 | :execute(b:start_nr.'wincmd w')| :execute('normal!'.lnum.'zt') | :call NormalizeView()
nnoremap <buffer> <silent> <C-f> :PgDown<CR>
0988名無しさん@お腹いっぱい。
2013/03/28(木) 19:18:23.48b:start_nrは 関数の中で設定しています。
コメントいただいた皆さんありがとうございました。
連投失礼しました。
レス数が950を超えています。1000を超えると書き込みができなくなります。